diff --git a/.github/workflows/t37-ends7-owners.yml b/.github/workflows/t37-ends7-owners.yml new file mode 100644 index 0000000000..8cf05667ab --- /dev/null +++ b/.github/workflows/t37-ends7-owners.yml @@ -0,0 +1,57 @@ +name: Rank-seven-end T37 whole-owner composition + +on: + workflow_dispatch: + pull_request: + paths: + - 'research/complex-t37-ends7-owners/**' + - '.github/workflows/t37-ends7-owners.yml' + push: + branches: [main, codex/ends7-t37-20261013] + paths: + - 'research/complex-t37-ends7-owners/**' + - '.github/workflows/t37-ends7-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-ends7-owners/verify.py + --work "$RUNNER_TEMP/ends7-t37-cold" + - name: Require committed sources unchanged + if: always() + run: git diff --exit-code + - uses: actions/upload-artifact@v4 + if: always() + with: + name: ends7-t37-python-${{ matrix.python }} + path: | + ${{ runner.temp }}/ends7-t37-cold/*.json + ${{ runner.temp }}/ends7-t37-cold/*.log + ${{ runner.temp }}/ends7-t37-cold/t37/strict/*.json + ${{ runner.temp }}/ends7-t37-cold/t37/strict/*.log + ${{ runner.temp }}/ends7-t37-cold/t37/strict/global/audit/*.json diff --git a/research/complex-t37-ends7-owners/CLAIM.json b/research/complex-t37-ends7-owners/CLAIM.json new file mode 100644 index 0000000000..86721e03e6 --- /dev/null +++ b/research/complex-t37-ends7-owners/CLAIM.json @@ -0,0 +1 @@ +{"T":37,"bit_lower":"1733427039589844234749/1000000000000000000000000","calls":333,"charged_prefix_bits":1024,"comparison":{"independently_replayed_pr1050":"0.001672241870811633","selected_pr1042":"0.001672188119205421","selected_pr942":"0.001661960547713947","seven_slot_t37_predecessor":"0.001674097969905390"},"complex_lower":"419287201220779036669/250000000000000000000000","complex_profile":{"1":806622,"2":143856,"3":141192,"4":47286,"48":11320,"5":27306,"8":2664},"deficit":11840,"idle":{"1":5424,"48":11320},"kappa":"1674340686401949/1000000000000000000","kappa_decimal":"0.001674340686401949","live":33152,"local_profile":{"1":2406,"2":432,"3":424,"4":142,"5":82,"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":56,"5":32,"7":32,"8":120,"9":240}} \ No newline at end of file diff --git a/research/complex-t37-ends7-owners/DEPENDENCY-PINS.json b/research/complex-t37-ends7-owners/DEPENDENCY-PINS.json new file mode 100644 index 0000000000..e058b95722 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/MANIFEST.json b/research/complex-t37-ends7-owners/MANIFEST.json new file mode 100644 index 0000000000..052177de9e --- /dev/null +++ b/research/complex-t37-ends7-owners/MANIFEST.json @@ -0,0 +1 @@ +{"CLAIM.json":"82923581c50be03d09282ec43a6035167a802473f96d28c6d65cc4cce2ef83d0","DEPENDENCY-PINS.json":"302d8b98d1a4ab12895ce1a84c06944e9dbde82ca10b023c8e5ebc79b1b47d98","NOTICE.md":"8e556b5407a49d9a07eb1d3de1d3c4d331fcab24d223af8f72b91048dbbac70a","PROOF.md":"2de6bd94d4e17002621622e94d1656b65c4c83f493d72e5419d297f675fee53a","README.md":"305d97e2ab854ab316f299cb8a76c8f2e930caa1bdd42b6c779ca710713396dd","SOURCE-PINS.json":"b82231bc901c931d6ab6ba2660f041e1634bfe0101d726069cc8ee405c4eb778","audit.py":"5fe3faa6e0e388fbdef4fb5e432561ea81d68585794ad2a986644c098a364050","common.py":"274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785","construct.py":"ba8303351220727e5602730fabade5b2630eff61dd9b7173a259ffc535ee88c6","controller.py":"773141ae64833f15b3cea5af84ef70ffe0ba8952f9814cd76ed8e8bc3501186c","controls.py":"963fc23e72277fbec0e105917f9cc18595f18a806ac90d9d4a279c1fe1e76033","data/FLOW.json.gz":"4ef55cf0b2f36254df0efc0008e9dfa63a79c421692ab654e00cf654b73b14b1","data/ORDER.json":"7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29","data/OWNERS.json.gz":"98c27c4fc4a107c1e1d0fbc79a8390832ed0555f810d61c24a6a2e65579ec7ce","data/SPEC.json":"bc9534523e5cdb1c681be9e9ebeda9ccd0ba2dc87b24995297f063aad43e003e","package.py":"b1cadf7ade4759528dd05513ef0cf146562b448978e0b2a0688d176b953f469a","prepare.py":"b54641a9fba5959c7e3879c2823d97da9ce5bbdd0a56c89583cb57ef461e100e","price.py":"91347c3c83347290a8dd765e072d744b5afea2966807923463c1e8467c41301d","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/pr1107/research/gauge44-ends7-t16/CONSTRUCTION.md":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea","vendor/pr1107/research/gauge44-ends7-t16/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1107/research/gauge44-ends7-t16/LOCAL-VALIDATION.json":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e","vendor/pr1107/research/gauge44-ends7-t16/MANIFEST.json":"00c5214d1dd21ab29c934c80f86165494a09307913c614dc36ae363ce7d166c1","vendor/pr1107/research/gauge44-ends7-t16/NOTICE.md":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BARCH.md":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BIT.md":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-FRAMES-X4.md":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LAYERS.md":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LEAVER.md":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-NOTRI.md":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-P6N.md":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-PROMO.md":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae","vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-SW4.md":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d","vendor/pr1107/research/gauge44-ends7-t16/README.md":"1aed29292fd04ab3e38339272d0336bdd674893809885eae2f50eb4ead5388b8","vendor/pr1107/research/gauge44-ends7-t16/RESULT.json":"f76608b9702dc189ab62cdf004304076b0940ea1703cbb5415ffb93c50271605","vendor/pr1107/research/gauge44-ends7-t16/SOURCES.json":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0","vendor/pr1107/research/gauge44-ends7-t16/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1107/research/gauge44-ends7-t16/code/assemble.py":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a","vendor/pr1107/research/gauge44-ends7-t16/code/assembly_controls.py":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d","vendor/pr1107/research/gauge44-ends7-t16/code/audit_allcold.py":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc","vendor/pr1107/research/gauge44-ends7-t16/code/bind_providers_portable.py":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6","vendor/pr1107/research/gauge44-ends7-t16/code/bit_supplier_controls.py":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5","vendor/pr1107/research/gauge44-ends7-t16/code/emit_allcold.py":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e","vendor/pr1107/research/gauge44-ends7-t16/code/freeze_spec.py":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2","vendor/pr1107/research/gauge44-ends7-t16/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr1107/research/gauge44-ends7-t16/code/invoice_allcold.py":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8","vendor/pr1107/research/gauge44-ends7-t16/code/prepare_global.py":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc","vendor/pr1107/research/gauge44-ends7-t16/code/restore_parent.py":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d","vendor/pr1107/research/gauge44-ends7-t16/code/witness.py":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444","vendor/pr1107/research/gauge44-ends7-t16/construction/COLD44-RECIPE.json.gz":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c","vendor/pr1107/research/gauge44-ends7-t16/construction/COMPLETION-PRIORITY.json":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47","vendor/pr1107/research/gauge44-ends7-t16/construction/INPUTS.json":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99","vendor/pr1107/research/gauge44-ends7-t16/construction/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1107/research/gauge44-ends7-t16/construction/NOTICE.md":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816","vendor/pr1107/research/gauge44-ends7-t16/construction/REBUILD-CHECKS.json":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91","vendor/pr1107/research/gauge44-ends7-t16/construction/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1107/research/gauge44-ends7-t16/construction/barch/LOCAL-PINS-barch-U8.json":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5","vendor/pr1107/research/gauge44-ends7-t16/construction/barch/RECIPE-U8.json":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652","vendor/pr1107/research/gauge44-ends7-t16/construction/barch/build_tri.py":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e","vendor/pr1107/research/gauge44-ends7-t16/construction/barch/reproduce_barch.py":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1","vendor/pr1107/research/gauge44-ends7-t16/construction/barch/run_controls.py":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476","vendor/pr1107/research/gauge44-ends7-t16/construction/build_gauge_cold44.py":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb","vendor/pr1107/research/gauge44-ends7-t16/construction/construct_gauge_xcentre.py":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/ENDS7-PINS-k8.json":"88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/README.md":"3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/RECIPE-ENDS7-k8.json":"18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/build_ends7.py":"4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/end7_controls.py":"c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/NOTICE.md":"3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/PROOF.md":"d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/lowering.py":"ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/phases_fast.py":"122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/sparse_state.py":"e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/premise_check.py":"28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/verify_1049.py":"a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545","vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/verify_ends7.py":"321254d77040f48f3857141ef51602ffac4fbf80fbf0bb85ee8a629ff9a1aaa1","vendor/pr1107/research/gauge44-ends7-t16/construction/frames/FRAME-RECIPE-sw4.json":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473","vendor/pr1107/research/gauge44-ends7-t16/construction/frames/LOCAL-PINS-frames-sw4.json":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f","vendor/pr1107/research/gauge44-ends7-t16/construction/frames/build_frames.py":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb","vendor/pr1107/research/gauge44-ends7-t16/construction/frames/frame_controls.py":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77","vendor/pr1107/research/gauge44-ends7-t16/construction/frames/reproduce_frames.py":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832","vendor/pr1107/research/gauge44-ends7-t16/construction/jx/LOCAL-PINS-jx-X4.json":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974","vendor/pr1107/research/gauge44-ends7-t16/construction/jx/RECIPE-X4.json":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd","vendor/pr1107/research/gauge44-ends7-t16/construction/jx/build_jx.py":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916","vendor/pr1107/research/gauge44-ends7-t16/construction/jx/reproduce_jx.py":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c","vendor/pr1107/research/gauge44-ends7-t16/construction/layers/build_pivot_swap.py":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8","vendor/pr1107/research/gauge44-ends7-t16/construction/layers/layer_end_controls.py":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef","vendor/pr1107/research/gauge44-ends7-t16/construction/layers/reproduce_layers.py":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/HPE-RECIPE-NP.json":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/PIVOT-SWAP-NP.json":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/reproduce_np.py":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/P6N-SPEC.json":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/layer_end_controls.py":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e","vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/reproduce_p6n.py":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CHAIN-PINS-k8.json":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/FRAME-RECIPE-LV-k8.json":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/HPE-RECIPE-k8.json":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEAVER-PINS-k8.json":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-k8.json":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PIVOT-SWAP-k8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PROMO-RECIPE-k8.json":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-U8-k8.json":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-X4-k8.json":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/REGROUP-LEAVER-k8.json":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/build_frames_lv.py":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01+.json":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01-.json":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23+.json":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23-.json":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45+.json":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45-.json":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67+.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67-.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cgx_leaver.py":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/layer_end_controls_leaver.py":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver.py":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30","vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver_chain.py":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5","vendor/pr1107/research/gauge44-ends7-t16/construction/notri/PRIO6.json":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15","vendor/pr1107/research/gauge44-ends7-t16/construction/notri/cgx.py":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418","vendor/pr1107/research/gauge44-ends7-t16/construction/notri/cold44x.py":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296","vendor/pr1107/research/gauge44-ends7-t16/construction/notri/port_stage_x.py":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7","vendor/pr1107/research/gauge44-ends7-t16/construction/notri/reproduce_notri.py":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/LOCAL-PINS-p6n-k4.json":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/PROMO-RECIPE-p6n-k4.json":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/build_promotion.py":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/make_recipe.py":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/promo_controls.py":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372","vendor/pr1107/research/gauge44-ends7-t16/construction/promo/reproduce_promo.py":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026","vendor/pr1107/research/gauge44-ends7-t16/construction/reproduce.py":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92","vendor/pr1107/research/gauge44-ends7-t16/construction/slots/RECIPE-SLOTS-k8.json":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b","vendor/pr1107/research/gauge44-ends7-t16/construction/slots/SLOT-PINS-k8.json":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2","vendor/pr1107/research/gauge44-ends7-t16/construction/slots/verify_slots.py":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be","vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327","vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/NOTES.md":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446","vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/SW4-RECIPE-P6k4.json":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa","vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/build_sw4.py":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66","vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/reproduce_sw4.py":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac","vendor/pr1107/research/gauge44-ends7-t16/data/FRONTIER.json":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2","vendor/pr1107/research/gauge44-ends7-t16/data/OWNERS.json.gz":"75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c","vendor/pr1107/research/gauge44-ends7-t16/data/PLAN.json":"c958fe85322465ba8ba727fcd9dcc7439e1e2d5879ec16a17ad9bbc3f771722e","vendor/pr1107/research/gauge44-ends7-t16/data/PREPARATION.json":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9","vendor/pr1107/research/gauge44-ends7-t16/data/SPEC-T8.json":"4d1da93ea1a3e4eb6c335ac0e70f9218cb42495d128f91e315ec4846f015b453","vendor/pr1107/research/gauge44-ends7-t16/data/SPEC.json":"94e0232aede81bb1f3f68600098cc300bcb19a86c53c4a73b40e99dd0dbc0ac8","vendor/pr1107/research/gauge44-ends7-t16/data/T8/OWNERS.json.gz":"93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045","vendor/pr1107/research/gauge44-ends7-t16/data/T8/PLAN.json":"3b47f5027c4f047883c23a41e4578b0fd5c85cdc01fb5a14a6f23eabbe12acbc","vendor/pr1107/research/gauge44-ends7-t16/data/UPSTREAM-PINS.json":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b","vendor/pr1107/research/gauge44-ends7-t16/evidence/ADMISSION-CONTROLS.json":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28","vendor/pr1107/research/gauge44-ends7-t16/evidence/ASSEMBLY.json":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f","vendor/pr1107/research/gauge44-ends7-t16/evidence/BINDING.json":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b","vendor/pr1107/research/gauge44-ends7-t16/evidence/CENTER-COMPATIBILITY.json":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3","vendor/pr1107/research/gauge44-ends7-t16/evidence/ENDS7-T16-STANDALONE.json":"43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263","vendor/pr1107/research/gauge44-ends7-t16/evidence/LOCAL-STAGES.json":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591","vendor/pr1107/research/gauge44-ends7-t16/evidence/PACKING-SUCCESSOR.json":"7faadb710a9cb5bb402566455727763a14bf73fec0158195a6cc48cbaf6d1acd","vendor/pr1107/research/gauge44-ends7-t16/evidence/REPLAY.json":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2","vendor/pr1107/research/gauge44-ends7-t16/evidence/STAGES.json":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458","vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/ASYNC-AUDIT.json":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662","vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/GLOBAL-PREFIX.json":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671","vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048","vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/OWNERS-AND-PROFILE.json":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313","vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/PREFIX-AND-INVOICE.json":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582","vendor/pr1107/research/gauge44-ends7-t16/evidence/global/ACTUAL-SIGMAS.json.gz":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f","vendor/pr1107/research/gauge44-ends7-t16/evidence/global/GLOBAL-TEMPLATE.json.gz":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b","vendor/pr1107/research/gauge44-ends7-t16/evidence/global/HOSTED.json":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e","vendor/pr1107/research/gauge44-ends7-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784","vendor/pr1107/research/gauge44-ends7-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff","vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/CELL-MUTANTS-LV.json":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220","vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CANONICAL-WORD.json.gz":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-RECIPES.json":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-REVIEW.json":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/FULL-WORD.json.gz":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-CHECKS.json":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-PROGRAMS.json.gz":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/RESIDUAL-ADAPTERS.json":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/SCALAR-FRAME-AUDIT.json":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb","vendor/pr1107/research/gauge44-ends7-t16/evidence/local/WRAPPER-CHECKS.json":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7","vendor/pr1107/research/gauge44-ends7-t16/hosting/PROOF.md":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0","vendor/pr1107/research/gauge44-ends7-t16/hosting/README.md":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1","vendor/pr1107/research/gauge44-ends7-t16/hosting/audit_frozen.py":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659","vendor/pr1107/research/gauge44-ends7-t16/hosting/expand_owners.py":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/FROZEN-AUDIT.json":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MAJORIZATION.json.gz":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MANIFEST.json":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MATCHING-RECEIPT.json":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/OWNERS.json.gz":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/REPRODUCTION.json":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-OWNERS.json.gz":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-RECEIPT.json":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba","vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-REPRODUCTION.json":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194","vendor/pr1107/research/gauge44-ends7-t16/hosting/reproduce.py":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82","vendor/pr1107/research/gauge44-ends7-t16/hosting/reuse_owners.py":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402","vendor/pr1107/research/gauge44-ends7-t16/independent/CENTRE-GUARD-REVIEW.md":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897","vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9","vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b","vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-INDEPENDENT-PRICE.json":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683","vendor/pr1107/research/gauge44-ends7-t16/independent/README.md":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89","vendor/pr1107/research/gauge44-ends7-t16/independent/audit_local.py":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd","vendor/pr1107/research/gauge44-ends7-t16/independent/price_profile.py":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf","vendor/pr1107/research/gauge44-ends7-t16/independent/review_guards.py":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d","vendor/pr1107/research/gauge44-ends7-t16/inputs/PR589-EXPECTED.json":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","vendor/pr1107/research/gauge44-ends7-t16/t16/NOTICE.md":"902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5","vendor/pr1107/research/gauge44-ends7-t16/t16/build_parent.py":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e","vendor/pr1107/research/gauge44-ends7-t16/t16/indep16.py":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7","vendor/pr1107/research/gauge44-ends7-t16/t16/lift16.py":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689","vendor/pr1107/research/gauge44-ends7-t16/verify_manifest.py":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b","vendor/pr1107/research/gauge44-ends7-t16/verify_t16.py":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46","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":"38507f1bbc0b694ee4ec212b85ae0f2cb5881afcb6906c0dfe2cd14ab880f4dc"} \ No newline at end of file diff --git a/research/complex-t37-ends7-owners/NOTICE.md b/research/complex-t37-ends7-owners/NOTICE.md new file mode 100644 index 0000000000..5e32d6fab0 --- /dev/null +++ b/research/complex-t37-ends7-owners/NOTICE.md @@ -0,0 +1,39 @@ +# Attribution and source boundary + +Prepared for Chafik Boukhalfa with OpenAI Codex assistance. Apache-2.0. + +The new contribution is the 37-replica wave order, its frozen integral +pattern-flow assignment, deterministic matching reconstruction, and strict +composition with the rank-seven-end seven-slot k8 supplier. The PR1107 local +word is unchanged. The preceding seven-slot T37 wave construction is retained +as the direct source of the owner-flow and public reconstruction method. + +- Jeremy Kothe (`jeremykothe2`): PR1005 mutable-leaver k8 construction, + PR1018 seven-slot construction (following PR987), and PR1022's supplier and + sixteen-replica composition. The complete `gauge44-leaver8` and + `gauge44-slots` packages are copied unchanged from PR1022's pinned head. + Their original notices and attribution chains remain intact, including the + earlier gauge, pivot, cold-end, promotion, frame and hybrid constructions. +- Jeremy Kothe: PR1107's rank-seven-end supplier and its frozen source package. + All 197 files are copied unchanged. Alexander Schwartzman (`AlexS-scale`): + PR1030's two rank-seven helper-end mechanism. `thakrarsagar`: PR1049's + independent leaver-premise checker, included unchanged in that supplier. +- `jon314159`: PR942's T37 bank envelope, finite prefix reserve, explicit + source adaptations and all-replica signed-price argument. +- Chafik Boukhalfa: PR890's variable-replica composition and independent + checker, the retained earlier gauge/owner work, and the prior local + pattern-flow/matching formulation used to nominate this assignment. +- Hao Yan (`FanPUYen`): PR858's direct-sum parent construction, strict physical + source-event windows and independent owner audit. +- Jeremy Kothe: PR799's paired-read-exchange supplier. +- `DreamingOfClouds`: the retained PR589 tuned P111 bit supplier, with its + complete upstream notices. +- The original source notices credit the PR514/484/507 controller lineage, + PR558/552/531 exact phase machinery, the signed-price antecedents, exact + moment engines and outer reduction. They are retained rather than replaced + by this list. + +PR635's required source subtree is retained at its constructor-pinned commit. +`SOURCE-PINS.json` records each vendored file's original Git blob and SHA-256; +`DEPENDENCY-PINS.json` pins repository dependencies. No author optimizer is +needed to reconstruct the new frozen owner map. diff --git a/research/complex-t37-ends7-owners/PROOF.md b/research/complex-t37-ends7-owners/PROOF.md new file mode 100644 index 0000000000..23ed2dc703 --- /dev/null +++ b/research/complex-t37-ends7-owners/PROOF.md @@ -0,0 +1,67 @@ +# Finite construction and fixed-family ceiling + +Use the unchanged PR1107 local supplier. Its independently recounted paid +profile is `(2406,432,424,142,82,8)` at ranks `(1,2,3,4,5,8)`; its 480 helper +widths have multiplicities `(56,32,32,120,240)` at `(4,5,7,8,9)`. + +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:5424,48:11320}`. 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.001677148804883116146676 < b < 0.001677148804883116146677. +``` + +The retained bit endpoint is `1733427039589844234749 / 10^24`. All 47 strict +outer constraints hold at `κ = 1674340686401949 / 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,832 and signed budget −1,192 per replica. The retained +supporting-inequality proof therefore gives rank-one credit +`48*(-1192)+13*14832 = 135600`. At 37 replicas, the attained rank-one count +is `37*135600/925 = 5424`, 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-ends7-owners/README.md b/research/complex-t37-ends7-owners/README.md new file mode 100644 index 0000000000..d3bc1a774b --- /dev/null +++ b/research/complex-t37-ends7-owners/README.md @@ -0,0 +1,59 @@ +# Rank-seven helper ends with 37-replica whole-owner packing + +Conditional **κ = 0.001674340686401949**. This improves the selected PR1042 +value `0.001672188119205421` and the preceding seven-slot T37 construction +`0.001674097969905390` at the preparation snapshot. + +The local word is Jeremy Kothe's PR1107 rank-seven-end k8 supplier, unchanged, +using Alexander Schwartzman's PR1030 helper-end mechanism. +The new construction is a 333-call wave order and a frozen integer flow +expanded into **159,840 whole-helper owners**. It leaves 5,424 rank-one and +11,320 rank-48 idle children. With the retained PR589 bit supplier, it attains +the outer-grid ceiling for this fixed local paid profile, helper inventory +and source capacity stock over all positive replica counts. + +## Reproduce + +Python 3.11+, a C++17 compiler, Boost headers, and the retained baseline's +NumPy/SymPy/SciPy requirements are needed. The new owner constructor uses +only the standard library; the verification does not run the 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-ends7-owners/verify.py \ + --work /tmp/t37-seven-slot-fresh +``` + +Use a new output directory outside the checkout. On Homebrew macOS, use +`CXX=clang++ BOOST_INCLUDE=/opt/homebrew/include`. The driver first runs the +retained cold PR589/741/799 ancestry and its coverage checks. It then rebuilds +the k8, seven-slot and rank-seven-end suppliers, reconstructs the frozen owners, checks the +independent geometry and five-bank parent, and runs strict emitted-controller +admission. Fresh and retained parent artifacts are compared exactly. +Retained builders use writable staging copies because their output builders +preserve input permissions. The source checkout stays unchanged; all staging +source bytes are bound before and after execution. + +`RESULT.json` binds the completed stages and source manifests. `MATH.json` +contains the portable mathematical receipt. `PRICE.json` records both exact +moment engines, all 47 strict outer inequalities and the fixed-family ceiling. +The driver also rejects eight flow mutations, six owner mutations, fifteen +controller mutations, 69 admission mutations and twelve bit-supplier mutations, +in addition to the unchanged ancestral and supplier controls. + +## Result and scope + +The complex profile is +`{1:806622, 2:143856, 3:141192, 4:47286, 5:27306, 8:2664, 48:11320}`. +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. The retained all-size compiler, +common-label/mutable-source realization, whole-call hosting, precision/tape, +analytic transfer and bit H1–H5 hypotheses remain. It is not an unconditional +integer-multiplication theorem or a κ = 1 result. + +See [PROOF.md](PROOF.md), [NOTICE.md](NOTICE.md), [SOURCE-PINS.json](SOURCE-PINS.json) +and [CLAIM.json](CLAIM.json). All source and data files are manifest-bound. diff --git a/research/complex-t37-ends7-owners/SOURCE-PINS.json b/research/complex-t37-ends7-owners/SOURCE-PINS.json new file mode 100644 index 0000000000..470a317c4f --- /dev/null +++ b/research/complex-t37-ends7-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"},"pr1107":{"commit":"6123fc5d57db16aaa3e8a26b4a11a34b46c0c391","files":{"research/gauge44-ends7-t16/CONSTRUCTION.md":{"git_blob":"fa156763668d1c761968b6dfaecbb55199904415","sha256":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea"},"research/gauge44-ends7-t16/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-ends7-t16/LOCAL-VALIDATION.json":{"git_blob":"5973645e1a8338e168ae0eb10836f99a62333635","sha256":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e"},"research/gauge44-ends7-t16/MANIFEST.json":{"git_blob":"96ed00c1a079c2c7cbd8d6f778ecd65f0fdd8ef7","sha256":"00c5214d1dd21ab29c934c80f86165494a09307913c614dc36ae363ce7d166c1"},"research/gauge44-ends7-t16/NOTICE.md":{"git_blob":"30d0c8cd3ca119c2eb8765908f44e483dda4caea","sha256":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf"},"research/gauge44-ends7-t16/PROOF-NOTE-BARCH.md":{"git_blob":"8cea5a6846a254a25136f8a53e24bb0ef665a44b","sha256":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d"},"research/gauge44-ends7-t16/PROOF-NOTE-BIT.md":{"git_blob":"da06360da046bbcb66192264ec389c96ba61ca41","sha256":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7"},"research/gauge44-ends7-t16/PROOF-NOTE-FRAMES-X4.md":{"git_blob":"a456a8127badf654c6b2ac64e54818bfa6ec0837","sha256":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036"},"research/gauge44-ends7-t16/PROOF-NOTE-LAYERS.md":{"git_blob":"c4b4e85b6aedbc04a4b1a1d900755e85c619850f","sha256":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f"},"research/gauge44-ends7-t16/PROOF-NOTE-LEAVER.md":{"git_blob":"b34a289c48364b816f782816d13debcfedb243fa","sha256":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3"},"research/gauge44-ends7-t16/PROOF-NOTE-NOTRI.md":{"git_blob":"54bd84e01dbf49655c259f97a0481541911e2bb2","sha256":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414"},"research/gauge44-ends7-t16/PROOF-NOTE-P6N.md":{"git_blob":"bef9ad2de04fdefc0a318051fe781d811c4106de","sha256":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d"},"research/gauge44-ends7-t16/PROOF-NOTE-PROMO.md":{"git_blob":"8233bbd6b86677298ee71463c24487e063bb6f72","sha256":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae"},"research/gauge44-ends7-t16/PROOF-NOTE-SW4.md":{"git_blob":"a064cc54ccdb90e077f88821f082864a2b83be35","sha256":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d"},"research/gauge44-ends7-t16/README.md":{"git_blob":"e610e3937ce05b2be9bdd98185852a225f6ad00e","sha256":"1aed29292fd04ab3e38339272d0336bdd674893809885eae2f50eb4ead5388b8"},"research/gauge44-ends7-t16/RESULT.json":{"git_blob":"4d4a90d703c378ac4981501e37fb0627a8897687","sha256":"f76608b9702dc189ab62cdf004304076b0940ea1703cbb5415ffb93c50271605"},"research/gauge44-ends7-t16/SOURCES.json":{"git_blob":"0d69845db9d41f4714c63544f34270936af715e7","sha256":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0"},"research/gauge44-ends7-t16/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-ends7-t16/code/assemble.py":{"git_blob":"581dd9cb29a45bd68cc651538311b63f6966ad68","sha256":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a"},"research/gauge44-ends7-t16/code/assembly_controls.py":{"git_blob":"096ba9cdfe9b5188b54768b845161014c5fb9a76","sha256":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d"},"research/gauge44-ends7-t16/code/audit_allcold.py":{"git_blob":"923bf7b675ca09f4d2633e7e53f16a1b23b6d5bc","sha256":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc"},"research/gauge44-ends7-t16/code/bind_providers_portable.py":{"git_blob":"97e28da17ed75cd4add54394f6178dba8c9b257f","sha256":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6"},"research/gauge44-ends7-t16/code/bit_supplier_controls.py":{"git_blob":"e86b8527b464277a926a788f2493e8f2e091fff1","sha256":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5"},"research/gauge44-ends7-t16/code/emit_allcold.py":{"git_blob":"28a08a79da911d8f0e16f4bf8df47c580fb6b255","sha256":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e"},"research/gauge44-ends7-t16/code/freeze_spec.py":{"git_blob":"4fe3b8891565ce658f6c05a4f4e8c15751103b85","sha256":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2"},"research/gauge44-ends7-t16/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/gauge44-ends7-t16/code/invoice_allcold.py":{"git_blob":"d1dd2212917ad1e7f099287a141f741fd52bdcf6","sha256":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8"},"research/gauge44-ends7-t16/code/prepare_global.py":{"git_blob":"655c9470f666138918afbaff077ad2ec5663c6bd","sha256":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc"},"research/gauge44-ends7-t16/code/restore_parent.py":{"git_blob":"21135f898a43e35b55e522c2d0b81a5e32033097","sha256":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d"},"research/gauge44-ends7-t16/code/witness.py":{"git_blob":"c5c7fbc1142220ce854907de4e439420ac12d30c","sha256":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444"},"research/gauge44-ends7-t16/construction/COLD44-RECIPE.json.gz":{"git_blob":"6f59d889202eee8d97ba32329273a3b7cf2389b2","sha256":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c"},"research/gauge44-ends7-t16/construction/COMPLETION-PRIORITY.json":{"git_blob":"e0df30aeefc4063ccf203347889e18a621ff6b2a","sha256":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47"},"research/gauge44-ends7-t16/construction/INPUTS.json":{"git_blob":"2b12294b58686a906d350de5b6f13c157bdecf5b","sha256":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99"},"research/gauge44-ends7-t16/construction/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-ends7-t16/construction/NOTICE.md":{"git_blob":"16b0507070427fb5bb20e7783c05768b8cdb3265","sha256":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816"},"research/gauge44-ends7-t16/construction/REBUILD-CHECKS.json":{"git_blob":"0801f35da7881ed675c943c1ff2bfd83b0a102b1","sha256":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91"},"research/gauge44-ends7-t16/construction/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-ends7-t16/construction/barch/LOCAL-PINS-barch-U8.json":{"git_blob":"4028b95c0ee2d6575ff1d40a25e789af6083ab2b","sha256":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5"},"research/gauge44-ends7-t16/construction/barch/RECIPE-U8.json":{"git_blob":"ee215a805a7487c300fe1e2b117bd4b5720d4d24","sha256":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652"},"research/gauge44-ends7-t16/construction/barch/build_tri.py":{"git_blob":"11c43711144a98224d0bc166f217e9ae996ffeb2","sha256":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e"},"research/gauge44-ends7-t16/construction/barch/reproduce_barch.py":{"git_blob":"22f15b491de212027334bf20ef2937322136c4dc","sha256":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1"},"research/gauge44-ends7-t16/construction/barch/run_controls.py":{"git_blob":"f1ce999bfb6cbc39e10d3c113d0306e0dc1989c4","sha256":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476"},"research/gauge44-ends7-t16/construction/build_gauge_cold44.py":{"git_blob":"72d2945f6ba7f33e84f5d8938c635e20592890a2","sha256":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb"},"research/gauge44-ends7-t16/construction/construct_gauge_xcentre.py":{"git_blob":"1010d86746ed9d0ca2059d7fc81fb3282ec743b3","sha256":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217"},"research/gauge44-ends7-t16/construction/ends7/ENDS7-PINS-k8.json":{"git_blob":"8a0cfa7caedb55ece53480e7bfaa44fb6601bcbf","sha256":"88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044"},"research/gauge44-ends7-t16/construction/ends7/README.md":{"git_blob":"7a013932542b41c0566a6f53f0914f0a3baa6ba5","sha256":"3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd"},"research/gauge44-ends7-t16/construction/ends7/RECIPE-ENDS7-k8.json":{"git_blob":"64c025dc5a5107f619e13640e898c601d05cb800","sha256":"18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3"},"research/gauge44-ends7-t16/construction/ends7/build_ends7.py":{"git_blob":"9270bab3ae33547543f50134e631d98df4e4b4fc","sha256":"4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148"},"research/gauge44-ends7-t16/construction/ends7/end7_controls.py":{"git_blob":"a888c1eae5dc445ac764a9eeb668a795cb7a7c85","sha256":"c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067"},"research/gauge44-ends7-t16/construction/ends7/fastpath/NOTICE.md":{"git_blob":"a3b31e157fcb9f8978040535a98d30a640509424","sha256":"3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2"},"research/gauge44-ends7-t16/construction/ends7/fastpath/PROOF.md":{"git_blob":"bbd59904396b5978c15e38720d0c0ad7a9ac5398","sha256":"d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053"},"research/gauge44-ends7-t16/construction/ends7/fastpath/lowering.py":{"git_blob":"75232da3800f97562e933d6cfb81553e5555854a","sha256":"ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b"},"research/gauge44-ends7-t16/construction/ends7/fastpath/phases_fast.py":{"git_blob":"ce73f874bdc184189fb100649252f519305ba316","sha256":"122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657"},"research/gauge44-ends7-t16/construction/ends7/fastpath/sparse_state.py":{"git_blob":"ca39f73494e11bf0a860c51b8d711bec48ec0842","sha256":"e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37"},"research/gauge44-ends7-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-ends7-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-ends7-t16/construction/ends7/premise/premise_check.py":{"git_blob":"98efec187df79832e4db56d8250ccb711b4062f1","sha256":"28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639"},"research/gauge44-ends7-t16/construction/ends7/premise/verify_1049.py":{"git_blob":"3e34e2c5a69ac01025ecd0eb2da17af488711dee","sha256":"a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545"},"research/gauge44-ends7-t16/construction/ends7/verify_ends7.py":{"git_blob":"ba3addc2fad198b534d3208434bf0ba59163b035","sha256":"321254d77040f48f3857141ef51602ffac4fbf80fbf0bb85ee8a629ff9a1aaa1"},"research/gauge44-ends7-t16/construction/frames/FRAME-RECIPE-sw4.json":{"git_blob":"7394064c5e6ed5fc7e99f042a5229fb03f51cea6","sha256":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473"},"research/gauge44-ends7-t16/construction/frames/LOCAL-PINS-frames-sw4.json":{"git_blob":"834ae13a2f1844002ca8dba0abc486d1cc6a884c","sha256":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f"},"research/gauge44-ends7-t16/construction/frames/build_frames.py":{"git_blob":"22021549e6991dceee823191cedc8a892db8c3f8","sha256":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb"},"research/gauge44-ends7-t16/construction/frames/frame_controls.py":{"git_blob":"cd951a9f0e05586b5e616b2cb1977f87c5249f36","sha256":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77"},"research/gauge44-ends7-t16/construction/frames/reproduce_frames.py":{"git_blob":"eaf9b47cac5324d713994f96e83ea16bca7cf3ac","sha256":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832"},"research/gauge44-ends7-t16/construction/jx/LOCAL-PINS-jx-X4.json":{"git_blob":"417e4ba7a1d731f56b24ae68563a963703e33a0b","sha256":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974"},"research/gauge44-ends7-t16/construction/jx/RECIPE-X4.json":{"git_blob":"30f7fa5948539b888969935b03e848cc1f3289c0","sha256":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd"},"research/gauge44-ends7-t16/construction/jx/build_jx.py":{"git_blob":"f8d74a6324515b3d55bb49b399dedf9ed58a3ae2","sha256":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916"},"research/gauge44-ends7-t16/construction/jx/reproduce_jx.py":{"git_blob":"6829a1b25d4ff473dfd1ea315cf6e363aecfd139","sha256":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c"},"research/gauge44-ends7-t16/construction/layers/build_pivot_swap.py":{"git_blob":"b225601c017bc9773ba11b94a0e875f542dc863f","sha256":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8"},"research/gauge44-ends7-t16/construction/layers/layer_end_controls.py":{"git_blob":"317da36d95aee13edfd93d5b314bb61bd0ccad2a","sha256":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef"},"research/gauge44-ends7-t16/construction/layers/reproduce_layers.py":{"git_blob":"ed517ba1dd8d6f1235d88525320f139dde4b50c0","sha256":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e"},"research/gauge44-ends7-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":{"git_blob":"f9155e307940fcd10dcb75c20e996c3b439b92fa","sha256":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0"},"research/gauge44-ends7-t16/construction/layers_np/HPE-RECIPE-NP.json":{"git_blob":"2605d199ed73ddac439c242b2e1d655c07cfc5b8","sha256":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1"},"research/gauge44-ends7-t16/construction/layers_np/PIVOT-SWAP-NP.json":{"git_blob":"4e0d8464269a2835aa93d76f28785cbbbd51636c","sha256":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5"},"research/gauge44-ends7-t16/construction/layers_np/reproduce_np.py":{"git_blob":"79cb6fa9121d3b6c79b10af95ca01610efc3fcd2","sha256":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c"},"research/gauge44-ends7-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":{"git_blob":"a408c95816d0a92e962ec5e7e083e8ba1900a396","sha256":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4"},"research/gauge44-ends7-t16/construction/layers_p6n/P6N-SPEC.json":{"git_blob":"43c3ec265c1b4a95f20b203d3339b19a3caf4d8f","sha256":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1"},"research/gauge44-ends7-t16/construction/layers_p6n/layer_end_controls.py":{"git_blob":"dd321fe2558c6138b57ae123b229d1f7d6137824","sha256":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e"},"research/gauge44-ends7-t16/construction/layers_p6n/reproduce_p6n.py":{"git_blob":"f9eb173bc115486971a16b49839b61786379096b","sha256":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca"},"research/gauge44-ends7-t16/construction/leaver/CHAIN-PINS-k8.json":{"git_blob":"afd0467911a2994c1d1df7bff61d9bed2ddfca36","sha256":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9"},"research/gauge44-ends7-t16/construction/leaver/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":{"git_blob":"6850696b19a96dea7c2415998ff8b7873f92c1c6","sha256":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33"},"research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":{"git_blob":"dc0275695d22db133a1d49324645796036878264","sha256":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb"},"research/gauge44-ends7-t16/construction/leaver/FRAME-RECIPE-LV-k8.json":{"git_blob":"982bd357daac8d593c97eb5f00f7e9d9af3e0394","sha256":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065"},"research/gauge44-ends7-t16/construction/leaver/HPE-RECIPE-k8.json":{"git_blob":"94d36f227999496c5977e87f515f033e91d8fb61","sha256":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9"},"research/gauge44-ends7-t16/construction/leaver/LEAVER-PINS-k8.json":{"git_blob":"b22678629c226d523b37d0157f941ba616b32164","sha256":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6"},"research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json":{"git_blob":"820ee8d63a2cba44bbcd68c4d5cd161eb9ea2609","sha256":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19"},"research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-k8.json":{"git_blob":"5218a5f09615f4770982bd48f4bb45f44eaa2bca","sha256":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914"},"research/gauge44-ends7-t16/construction/leaver/PIVOT-SWAP-k8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/gauge44-ends7-t16/construction/leaver/PROMO-RECIPE-k8.json":{"git_blob":"1952580fc814b0e8b598531c02681a2b6920a10c","sha256":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83"},"research/gauge44-ends7-t16/construction/leaver/RECIPE-U8-k8.json":{"git_blob":"98ea6e3d231622a726edb22e85919e744c81775f","sha256":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e"},"research/gauge44-ends7-t16/construction/leaver/RECIPE-X4-k8.json":{"git_blob":"3483acd5a51c987f7029e10785717f189e986b36","sha256":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1"},"research/gauge44-ends7-t16/construction/leaver/REGROUP-LEAVER-k8.json":{"git_blob":"d482da23a8252583a8d95132c231232ccdff7880","sha256":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e"},"research/gauge44-ends7-t16/construction/leaver/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-ends7-t16/construction/leaver/build_frames_lv.py":{"git_blob":"5f8aa7a24bd075fbdd1b0c824cf74881db060674","sha256":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01+.json":{"git_blob":"bfef820f29a7e19bff618d165185197b72be3328","sha256":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01-.json":{"git_blob":"3afa894b20a24e20dc3dabf019d5c9c0d104d9de","sha256":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23+.json":{"git_blob":"98ff8050e7d76607fb74dd82934931b3c05cc3ac","sha256":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23-.json":{"git_blob":"517b89d38270440a1a007e09168350aa2751a051","sha256":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45+.json":{"git_blob":"2bc89e1de1957ca9d6a30dd3715eef1331ee7fad","sha256":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45-.json":{"git_blob":"b9c1904b83c904726a558a34950090cd0672b902","sha256":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67+.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67-.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-ends7-t16/construction/leaver/cgx_leaver.py":{"git_blob":"e686c66306456e2c6cac9c05d01448765322836c","sha256":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c"},"research/gauge44-ends7-t16/construction/leaver/layer_end_controls_leaver.py":{"git_blob":"84b1c52ed250b30a8a675949714cf4625e22f6dc","sha256":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206"},"research/gauge44-ends7-t16/construction/leaver/reproduce_leaver.py":{"git_blob":"bc4360ef93ceea8fe2da33afbbaa100feaf0731a","sha256":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30"},"research/gauge44-ends7-t16/construction/leaver/reproduce_leaver_chain.py":{"git_blob":"19fcd28f4d41db8590ae71f6b98dd7c0655bce32","sha256":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5"},"research/gauge44-ends7-t16/construction/notri/PRIO6.json":{"git_blob":"069a7bf5a5f4db53068480acd57cb9e2e62eac2f","sha256":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15"},"research/gauge44-ends7-t16/construction/notri/cgx.py":{"git_blob":"08e80804eb6858be9d6ce6458a936cea1e76dc76","sha256":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418"},"research/gauge44-ends7-t16/construction/notri/cold44x.py":{"git_blob":"8fa6f3a6a6641f093eff1d467df20af0f8a21278","sha256":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296"},"research/gauge44-ends7-t16/construction/notri/port_stage_x.py":{"git_blob":"81ac65ceff60123daaf87edb621df4194622c9ca","sha256":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7"},"research/gauge44-ends7-t16/construction/notri/reproduce_notri.py":{"git_blob":"a85f2acf1537253512f8a00928415e64532639cf","sha256":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8"},"research/gauge44-ends7-t16/construction/promo/LOCAL-PINS-p6n-k4.json":{"git_blob":"c43b391a43b4443a5fa12d4899d97b8e5fcc1979","sha256":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f"},"research/gauge44-ends7-t16/construction/promo/PROMO-RECIPE-p6n-k4.json":{"git_blob":"3f336c07eaec6ee0e8b350b3f3acb8e011a09453","sha256":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90"},"research/gauge44-ends7-t16/construction/promo/build_promotion.py":{"git_blob":"f1daad34c22efdd97a11b1e16384962b8af1d704","sha256":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf"},"research/gauge44-ends7-t16/construction/promo/make_recipe.py":{"git_blob":"618d609453ea9718b8c74c5d2a26cd5b9e985309","sha256":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122"},"research/gauge44-ends7-t16/construction/promo/promo_controls.py":{"git_blob":"20ee51f7dbabd401e125ad948e96c38f36cde6cb","sha256":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372"},"research/gauge44-ends7-t16/construction/promo/reproduce_promo.py":{"git_blob":"6e04aa71b163a80c2f7ca2f5000976bd98fb8557","sha256":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026"},"research/gauge44-ends7-t16/construction/reproduce.py":{"git_blob":"8b51efa64638c849ad329757b807ef1f68a6cb8c","sha256":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92"},"research/gauge44-ends7-t16/construction/slots/RECIPE-SLOTS-k8.json":{"git_blob":"acc1a733d6e52354b3a300136c106aa18e3de030","sha256":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b"},"research/gauge44-ends7-t16/construction/slots/SLOT-PINS-k8.json":{"git_blob":"2702c368f4de0b671577aee9a0e2df41c1b27658","sha256":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2"},"research/gauge44-ends7-t16/construction/slots/verify_slots.py":{"git_blob":"fd06b654afb1f3a98b28d5cbac50f3ba4a967883","sha256":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be"},"research/gauge44-ends7-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json":{"git_blob":"ae26a0f2f144b0ac863dd868f570270cb4c75d32","sha256":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327"},"research/gauge44-ends7-t16/construction/sw4/NOTES.md":{"git_blob":"2a53ffb3b82af7b283bf79efc81089dc6ab37dd3","sha256":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446"},"research/gauge44-ends7-t16/construction/sw4/SW4-RECIPE-P6k4.json":{"git_blob":"b9dea4152a099782d48d533523a50f3464351677","sha256":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa"},"research/gauge44-ends7-t16/construction/sw4/build_sw4.py":{"git_blob":"617e0ed06d133e8820ac5c29f8e9397f6c3cbec9","sha256":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66"},"research/gauge44-ends7-t16/construction/sw4/reproduce_sw4.py":{"git_blob":"cb038e064b4acd1c4bf454ee76102fc923e8f284","sha256":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac"},"research/gauge44-ends7-t16/data/FRONTIER.json":{"git_blob":"70285d4d85f0a901de07f9613538825dcd36a848","sha256":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2"},"research/gauge44-ends7-t16/data/OWNERS.json.gz":{"git_blob":"bd16cbfa564722eb060b15860cbb8dfd15be0ae0","sha256":"75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c"},"research/gauge44-ends7-t16/data/PLAN.json":{"git_blob":"eeb24113ac690c6faf2246f693e5b181154d6c38","sha256":"c958fe85322465ba8ba727fcd9dcc7439e1e2d5879ec16a17ad9bbc3f771722e"},"research/gauge44-ends7-t16/data/PREPARATION.json":{"git_blob":"8c7796820f47f790733741613cd61af350465f5c","sha256":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9"},"research/gauge44-ends7-t16/data/SPEC-T8.json":{"git_blob":"8476256133e472cf043abc7210c538ef162ab9a2","sha256":"4d1da93ea1a3e4eb6c335ac0e70f9218cb42495d128f91e315ec4846f015b453"},"research/gauge44-ends7-t16/data/SPEC.json":{"git_blob":"5a42a7c6f001157c995b5da9f219256df90d6e98","sha256":"94e0232aede81bb1f3f68600098cc300bcb19a86c53c4a73b40e99dd0dbc0ac8"},"research/gauge44-ends7-t16/data/T8/OWNERS.json.gz":{"git_blob":"bd1cec69f0b4be3dd088118295c10bec94442f5d","sha256":"93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045"},"research/gauge44-ends7-t16/data/T8/PLAN.json":{"git_blob":"105d6c222366694faf5af9cd7cba928408e9b156","sha256":"3b47f5027c4f047883c23a41e4578b0fd5c85cdc01fb5a14a6f23eabbe12acbc"},"research/gauge44-ends7-t16/data/UPSTREAM-PINS.json":{"git_blob":"68486b84e3ae599d776b9613adc901fd8874718d","sha256":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b"},"research/gauge44-ends7-t16/evidence/ADMISSION-CONTROLS.json":{"git_blob":"2e15a1006563e996c90376c24ce4df297205b99d","sha256":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28"},"research/gauge44-ends7-t16/evidence/ASSEMBLY.json":{"git_blob":"6feaaf28f534f8315428f1ed849b61d2131269b6","sha256":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f"},"research/gauge44-ends7-t16/evidence/BINDING.json":{"git_blob":"b03160c67acab5beb4d2c035224f1135d4fa7824","sha256":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b"},"research/gauge44-ends7-t16/evidence/CENTER-COMPATIBILITY.json":{"git_blob":"5a3ae374226298bdc93d17a84e08d4040223a5f6","sha256":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3"},"research/gauge44-ends7-t16/evidence/ENDS7-T16-STANDALONE.json":{"git_blob":"ef2a1dc71051ed9d303c97395e72ab358497c1a1","sha256":"43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263"},"research/gauge44-ends7-t16/evidence/LOCAL-STAGES.json":{"git_blob":"b2753eb57a8d163ce4226de982d16fe7eec7f2c3","sha256":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591"},"research/gauge44-ends7-t16/evidence/PACKING-SUCCESSOR.json":{"git_blob":"2aad708dcc5680fc08604034dc7bf9681f417595","sha256":"7faadb710a9cb5bb402566455727763a14bf73fec0158195a6cc48cbaf6d1acd"},"research/gauge44-ends7-t16/evidence/REPLAY.json":{"git_blob":"c6f4e0f983aed66e80f7875f2b78bdc9a479189e","sha256":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2"},"research/gauge44-ends7-t16/evidence/STAGES.json":{"git_blob":"9464e2dfea4ac299955ae2c4f1de34e1eb8a2e03","sha256":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458"},"research/gauge44-ends7-t16/evidence/audit/ASYNC-AUDIT.json":{"git_blob":"05975382b5e8e457d0ebc0c9aec19f9344464591","sha256":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662"},"research/gauge44-ends7-t16/evidence/audit/GLOBAL-PREFIX.json":{"git_blob":"a557ebbe60a67823094fcb616500099fdd9c95be","sha256":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671"},"research/gauge44-ends7-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json":{"git_blob":"1c86a8a01d1d133a87cdc1928e9119edc634ec0e","sha256":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048"},"research/gauge44-ends7-t16/evidence/audit/OWNERS-AND-PROFILE.json":{"git_blob":"bdb9441b7efc06b56585502ed0856d8dec8e1591","sha256":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313"},"research/gauge44-ends7-t16/evidence/audit/PREFIX-AND-INVOICE.json":{"git_blob":"6c96ec67062b536f40ecdedba96b497f58d5270e","sha256":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582"},"research/gauge44-ends7-t16/evidence/global/ACTUAL-SIGMAS.json.gz":{"git_blob":"dbb57066e2f71a5d11096a6c73c7ba448f278419","sha256":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f"},"research/gauge44-ends7-t16/evidence/global/GLOBAL-TEMPLATE.json.gz":{"git_blob":"424c2df489364ea5b29e0df9841e6fe91a517df4","sha256":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b"},"research/gauge44-ends7-t16/evidence/global/HOSTED.json":{"git_blob":"498e849ab782c095bd6bffa884fb0a41eac4c844","sha256":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e"},"research/gauge44-ends7-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":{"git_blob":"3562e60f057d4ee0bb20b1d0ba3d759d08c83d1d","sha256":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784"},"research/gauge44-ends7-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json":{"git_blob":"078078767410495313abd3b2c24203d7ec80328b","sha256":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff"},"research/gauge44-ends7-t16/evidence/leaver/CELL-MUTANTS-LV.json":{"git_blob":"4d4ef7403c06e17b7b6c519f7a2bc10c88793fbf","sha256":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220"},"research/gauge44-ends7-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json":{"git_blob":"9f56e21000ef55584d14dc828f5601f3ae3717cc","sha256":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd"},"research/gauge44-ends7-t16/evidence/local/CANONICAL-WORD.json.gz":{"git_blob":"5062a1f62fd19777ac4a3d32bf0973a3ed71658d","sha256":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed"},"research/gauge44-ends7-t16/evidence/local/CLIFFORD-RECIPES.json":{"git_blob":"3ba8326d3acdb61e7a40507cee7b84f9689738e1","sha256":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771"},"research/gauge44-ends7-t16/evidence/local/CLIFFORD-REVIEW.json":{"git_blob":"6b12ae0e4b4b9d4f188e10dae041ecc146babdcf","sha256":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12"},"research/gauge44-ends7-t16/evidence/local/FULL-WORD.json.gz":{"git_blob":"447d45d08bf4b054d2fa76a0dc00a3b0f168fe91","sha256":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e"},"research/gauge44-ends7-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"aa15edfba5d132afbe6b3be5efe883dddd92af5e","sha256":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e"},"research/gauge44-ends7-t16/evidence/local/LOCAL-CHECKS.json":{"git_blob":"3872f0e59618ccc4fd6f00daeb7c9164957b7ea2","sha256":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c"},"research/gauge44-ends7-t16/evidence/local/LOCAL-PROGRAMS.json.gz":{"git_blob":"d511f2afa49f9eed010e91eed590a15252506470","sha256":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2"},"research/gauge44-ends7-t16/evidence/local/RESIDUAL-ADAPTERS.json":{"git_blob":"9c66f92ffb350d32286025c0b60b3b9a70b773c9","sha256":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94"},"research/gauge44-ends7-t16/evidence/local/SCALAR-FRAME-AUDIT.json":{"git_blob":"23bf3d263ed961be2d60ab79d89ec79c50a2a3ff","sha256":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb"},"research/gauge44-ends7-t16/evidence/local/WRAPPER-CHECKS.json":{"git_blob":"a18afd4fad769aa0422b7d534510f14a937870ae","sha256":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7"},"research/gauge44-ends7-t16/hosting/PROOF.md":{"git_blob":"b551b6d3e5535c5486c96dd93bd04262ba5a71f9","sha256":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0"},"research/gauge44-ends7-t16/hosting/README.md":{"git_blob":"b9505ebbea39c3b4dd3efd45fb0472aab8331096","sha256":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1"},"research/gauge44-ends7-t16/hosting/audit_frozen.py":{"git_blob":"26a07408ea56e5bebb3d03d9938655ba9f74bac7","sha256":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659"},"research/gauge44-ends7-t16/hosting/expand_owners.py":{"git_blob":"ee6c4c24e63aa0555638f8d11be3f6367f7d2e62","sha256":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70"},"research/gauge44-ends7-t16/hosting/frozen/FROZEN-AUDIT.json":{"git_blob":"5f95552366147690dd3cccd141a14d7613132a97","sha256":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b"},"research/gauge44-ends7-t16/hosting/frozen/MAJORIZATION.json.gz":{"git_blob":"047b1cfb678fac19f80a29cf512770505f126d28","sha256":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf"},"research/gauge44-ends7-t16/hosting/frozen/MANIFEST.json":{"git_blob":"291005722ccdc7d7a78a5c13f592f25038d838e6","sha256":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967"},"research/gauge44-ends7-t16/hosting/frozen/MATCHING-RECEIPT.json":{"git_blob":"993331090c85923d2f9e4a4eabe35f098c91d968","sha256":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2"},"research/gauge44-ends7-t16/hosting/frozen/OWNERS.json.gz":{"git_blob":"e9c7cfc72db0f8825070ea8f0ab4c45dae89baef","sha256":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57"},"research/gauge44-ends7-t16/hosting/frozen/REPRODUCTION.json":{"git_blob":"8ad59712b276961b0bff5df309d60c09c68851b0","sha256":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81"},"research/gauge44-ends7-t16/hosting/frozen/SEED-OWNERS.json.gz":{"git_blob":"d61916a1564d7072c8de69e3757d35e5cbec24d1","sha256":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048"},"research/gauge44-ends7-t16/hosting/frozen/SEED-RECEIPT.json":{"git_blob":"82911f647b44c6efec6bf7689d57202c690d9b6c","sha256":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba"},"research/gauge44-ends7-t16/hosting/frozen/SEED-REPRODUCTION.json":{"git_blob":"91ee98cf7046e1408ce4c0a78896db661b0d8138","sha256":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194"},"research/gauge44-ends7-t16/hosting/reproduce.py":{"git_blob":"2f29a5ff13a06d7734ea4482bd18a74698f6217f","sha256":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82"},"research/gauge44-ends7-t16/hosting/reuse_owners.py":{"git_blob":"234b831790d7839d4c2e43357ae277b7bf254a2b","sha256":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402"},"research/gauge44-ends7-t16/independent/CENTRE-GUARD-REVIEW.md":{"git_blob":"6c62bd070ef90cda02355b7ad87dd67dc92e7184","sha256":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897"},"research/gauge44-ends7-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":{"git_blob":"771faa86a7432c0b2652a1ab0b2d849a11462b94","sha256":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9"},"research/gauge44-ends7-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":{"git_blob":"e2df1dcca8fec4d74662718841ad7fe86ba2af9e","sha256":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b"},"research/gauge44-ends7-t16/independent/GAUGE44-INDEPENDENT-PRICE.json":{"git_blob":"7aa86180dd71ed15d4180efa682ae7c4c5f41d9f","sha256":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683"},"research/gauge44-ends7-t16/independent/README.md":{"git_blob":"f97dcf81b134238cf11dae9704ca8574d027b72c","sha256":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89"},"research/gauge44-ends7-t16/independent/audit_local.py":{"git_blob":"4744d8783c25bf7bf5076886169077ca3808309a","sha256":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd"},"research/gauge44-ends7-t16/independent/price_profile.py":{"git_blob":"0e36ebd4687374e3ca14f233c77fafbdc1e5cfcd","sha256":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf"},"research/gauge44-ends7-t16/independent/review_guards.py":{"git_blob":"086dcf3d11897b73dfb2730bbfacd690fa3f0c41","sha256":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d"},"research/gauge44-ends7-t16/inputs/PR589-EXPECTED.json":{"git_blob":"e293ddc557742637f9f679f083a1a282d87b1b13","sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"},"research/gauge44-ends7-t16/t16/NOTICE.md":{"git_blob":"403f4afffb49ef96a3ec1a8053b95cb9346da3ea","sha256":"902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5"},"research/gauge44-ends7-t16/t16/build_parent.py":{"git_blob":"bd9e28bd2dc091dcec90a09fa3e556c71579e528","sha256":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e"},"research/gauge44-ends7-t16/t16/indep16.py":{"git_blob":"81e1e9fe1554c38865e9d149fb8f4196aad91b4a","sha256":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7"},"research/gauge44-ends7-t16/t16/lift16.py":{"git_blob":"613c4bdb3c8ab9cb5f069a52488a673e3ce77702","sha256":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689"},"research/gauge44-ends7-t16/verify_manifest.py":{"git_blob":"8c2441d39202409ffe1c2cb42f197946f7bfa7c0","sha256":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b"},"research/gauge44-ends7-t16/verify_t16.py":{"git_blob":"4794150c4cf96cf1c445e2650800e636809fa06c","sha256":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46"}},"repository":"https://github.com/CrocSwap/integer-mult-bounds"},"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-ends7-owners/audit.py b/research/complex-t37-ends7-owners/audit.py new file mode 100644 index 0000000000..0e229af569 --- /dev/null +++ b/research/complex-t37-ends7-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: 56, 5: 32, 7: 32, 8: 120, 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:5424,48:11320} + 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-ends7-owners/common.py b/research/complex-t37-ends7-owners/common.py new file mode 100644 index 0000000000..4af6dc3374 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/construct.py b/research/complex-t37-ends7-owners/construct.py new file mode 100644 index 0000000000..baa7907e1d --- /dev/null +++ b/research/complex-t37-ends7-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/'vendor/pr1107/research/gauge44-ends7-t16/data/T8/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:56,5:32,7:32,8:120,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-ends7-owners/controller.py b/research/complex-t37-ends7-owners/controller.py new file mode 100644 index 0000000000..73db26d95b --- /dev/null +++ b/research/complex-t37-ends7-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_ENDS7_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-ends7-owners/controls.py b/research/complex-t37-ends7-owners/controls.py new file mode 100644 index 0000000000..cf713edd8a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/data/FLOW.json.gz b/research/complex-t37-ends7-owners/data/FLOW.json.gz new file mode 100644 index 0000000000..a2c82829af Binary files /dev/null and b/research/complex-t37-ends7-owners/data/FLOW.json.gz differ diff --git a/research/complex-t37-ends7-owners/data/ORDER.json b/research/complex-t37-ends7-owners/data/ORDER.json new file mode 100644 index 0000000000..b32f07b09b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/data/OWNERS.json.gz b/research/complex-t37-ends7-owners/data/OWNERS.json.gz new file mode 100644 index 0000000000..ce81815c7f Binary files /dev/null and b/research/complex-t37-ends7-owners/data/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/data/SPEC.json b/research/complex-t37-ends7-owners/data/SPEC.json new file mode 100644 index 0000000000..8fb753d982 --- /dev/null +++ b/research/complex-t37-ends7-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":"98c27c4fc4a107c1e1d0fbc79a8390832ed0555f810d61c24a6a2e65579ec7ce","plan_sha256":"22fcc9295c7161d8f17e5e585445522713dac6f3ea9e5be10c2c86d6a7600fb1"},"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":12506,"assembly_controls_rejected":69,"complex_lower":"419287201220779036669/250000000000000000000000","conservative_complex_lower":"1677148802020351553173/1000000000000000000000000","conservative_kappa_decimal":"0.001674340683548763","cross_replica_helper_roles":151027,"gain_baseline_kappa":"0.001636241501576388","global_profile":{"1":806622,"2":143856,"3":141192,"4":47286,"48":11320,"5":27306,"8":2664},"hosted_residuals":159840,"idle_remainder_profile":{"1":5424,"48":11320},"idle_remainders":16744,"kappa":"1674340686401949/1000000000000000000","kappa_decimal":"0.001674340686401949","live":33152,"mutations_rejected":15,"physical":33642,"provider_counts":{"gauge44":333},"rank_mass":2408256},"name":"seven-slot-k8-t37-wave","pivot_swap":{"recipe":"vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PIVOT-SWAP-k8.json","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"providers":{"gauge44":{"artifact_semantic_sha256":{"CANONICAL-WORD.json.gz":"a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a","CLIFFORD-RECIPES.json":"e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161","CLIFFORD-REVIEW.json":"a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd","INDEPENDENT-LOCAL-REPLAY.json":"b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49","LOCAL-CHECKS.json":"dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e","LOCAL-PROGRAMS.json.gz":"d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44","RESIDUAL-ADAPTERS.json":"4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568"},"artifacts":{"CLIFFORD-RECIPES.json":"e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161","LOCAL-CHECKS.json":"7886c4fb6f8e152964f18cc98588aec4310f0a8e82d0f534cfa0c05edb6a7037","RESIDUAL-ADAPTERS.json":"05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108"},"complete_contract":{"centres":8,"children":3494,"cold_hyperplane_ended_helpers":48,"compiler":25934336,"entering_helpers":192,"entrance_rank":384,"h":9,"helpers":480,"hyperplane_ended_helpers":78,"local":{"backward":{"all_dirty_helper_columns_restored":true,"all_exact_columns":704,"coefficient_work_primitive_count":98365,"dirty_helper_columns":480,"endpoint_evidence":"Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json","events":24767,"macros":19693,"post_wrappers":240,"pre_wrappers":240,"prefix_bits":68,"prefix_l1":"14824960514781440791821/64","private_centres_and_coefficient_work_cleared":true,"real_component_primitives":198814},"forward":{"all_dirty_helper_columns_restored":true,"all_exact_columns":704,"coefficient_work_primitive_count":98333,"dirty_helper_columns":480,"endpoint_evidence":"Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json","events":24767,"macros":19693,"post_wrappers":240,"pre_wrappers":240,"prefix_bits":52,"prefix_l1":"2765345294379392599/1024","private_centres_and_coefficient_work_cleared":true,"real_component_primitives":198766}},"local_adapters":387056,"local_primitive_bound":10038040553630,"n":704,"paid_profile":{"1":2406,"2":432,"3":424,"4":142,"5":82,"8":8},"program_hashes":{"backward":"c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1","forward":"f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273"},"semantic_artifact_sha256":{"CANONICAL-WORD.json.gz":"a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a","CLIFFORD-RECIPES.json":"e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161","CLIFFORD-REVIEW.json":"a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd","INDEPENDENT-LOCAL-REPLAY.json":"b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49","LOCAL-CHECKS.json":"dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e","LOCAL-PROGRAMS.json.gz":"d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44","RESIDUAL-ADAPTERS.json":"4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568"},"terminal_codimension":208,"v":112,"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]},"entering":192,"entrance":384,"expected_local":{"backward":{"coefficient_work_primitive_count":98365,"events":24767,"macros":19693,"prefix_l1":"14824960514781440791821/64","real_component_primitives":198814},"forward":{"coefficient_work_primitive_count":98333,"events":24767,"macros":19693,"prefix_l1":"2765345294379392599/1024","real_component_primitives":198766}},"expected_profile":{"1":2406,"2":432,"3":424,"4":142,"5":82,"8":8},"inventory":{"4":56,"5":32,"7":32,"8":120,"9":240},"native_negative_controls":25,"phase_edges":2897,"program_hashes":{"backward":"c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1","forward":"f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273"},"semantic_phase_sha256":"a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd","width_digest":"d63626638b95584b87db7e7481471b43683386e135f964a2b27be372cf6abf70","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-ends7-owners/package.py b/research/complex-t37-ends7-owners/package.py new file mode 100644 index 0000000000..1164d5f92e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/prepare.py b/research/complex-t37-ends7-owners/prepare.py new file mode 100644 index 0000000000..f43746aefa --- /dev/null +++ b/research/complex-t37-ends7-owners/prepare.py @@ -0,0 +1,61 @@ +"""Reuse PR942's explicit source adapters and build the five-bank parent. + +Only the frozen order, owner map, and PR1107 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 PR1107 rank-seven-end seven-slot 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 PR1107 rank-seven-end 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) + slots=P/'vendor/pr1107/research/gauge44-ends7-t16' + plan=read(slots/'data/T8/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-ends7-owners/price.py b/research/complex-t37-ends7-owners/price.py new file mode 100644 index 0000000000..5b6e5e2e1e --- /dev/null +++ b/research/complex-t37-ends7-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/'vendor/pr1107/research/gauge44-ends7-t16/data/T8/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)==(14832,-1192,135600) + 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(5424,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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md new file mode 100644 index 0000000000..fa15676366 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/MANIFEST.json new file mode 100644 index 0000000000..8161f0e77d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/README.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/README.md new file mode 100644 index 0000000000..48f987a99f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/RESULT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/RESULT.json new file mode 100644 index 0000000000..0fcf674173 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/SOURCES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/SOURCES.json new file mode 100644 index 0000000000..0d69845db9 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/assemble.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/assemble.py new file mode 100644 index 0000000000..8cee90b50e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py new file mode 100644 index 0000000000..93bca1ce6f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py new file mode 100644 index 0000000000..c86f7b0235 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py new file mode 100644 index 0000000000..8e147f80a6 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py new file mode 100644 index 0000000000..dd0358d396 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py new file mode 100644 index 0000000000..b244cd5994 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/build_pivot_swap.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/layer_end_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/reproduce_np.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/build_frames_lv.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/port_stage_x.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/PLAN.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/PLAN.json new file mode 100644 index 0000000000..4f17b4ccf3 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/SPEC.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/SPEC.json new file mode 100644 index 0000000000..db24c49da4 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..2e15a10065 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6feaaf28f5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json new file mode 100644 index 0000000000..b03160c67a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..b2753eb57a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json new file mode 100644 index 0000000000..c6f4e0f983 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json new file mode 100644 index 0000000000..9464e2dfea --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..05975382b5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..a557ebbe60 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json new file mode 100644 index 0000000000..498e849ab7 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..3ba8326d3a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..6b12ae0e4b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..3872f0e596 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..9c66f92ffb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..a18afd4fad --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/README.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/verify_global.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/verify_global.py new file mode 100644 index 0000000000..7ab79e3062 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-leaver8/verify_manifest.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-leaver8/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md new file mode 100644 index 0000000000..fa15676366 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/MANIFEST.json new file mode 100644 index 0000000000..6daa9abfd6 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/README.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/README.md new file mode 100644 index 0000000000..8b48510939 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/RESULT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/RESULT.json new file mode 100644 index 0000000000..89be708d9c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/SOURCES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/SOURCES.json new file mode 100644 index 0000000000..0d69845db9 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/assemble.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/assemble.py new file mode 100644 index 0000000000..8cee90b50e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/assembly_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/assembly_controls.py new file mode 100644 index 0000000000..93bca1ce6f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/audit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/audit_allcold.py new file mode 100644 index 0000000000..c86f7b0235 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/emit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/emit_allcold.py new file mode 100644 index 0000000000..8e147f80a6 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/freeze_spec.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/freeze_spec.py new file mode 100644 index 0000000000..dd0358d396 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/generated_identity.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py new file mode 100644 index 0000000000..b244cd5994 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/INPUTS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers/build_pivot_swap.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers/layer_end_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/reproduce_np.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/build_frames_lv.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/port_stage_x.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/slots/SLOT-PINS-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py new file mode 100644 index 0000000000..fd06b654af --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/FRONTIER.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/PLAN.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/PLAN.json new file mode 100644 index 0000000000..0465492a1f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/PREPARATION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/SPEC.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/SPEC.json new file mode 100644 index 0000000000..6ac06e4b75 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..2e15a10065 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6feaaf28f5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/BINDING.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/BINDING.json new file mode 100644 index 0000000000..b03160c67a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..b2753eb57a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json new file mode 100644 index 0000000000..c6f4e0f983 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/STAGES.json new file mode 100644 index 0000000000..9464e2dfea --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..05975382b5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..a557ebbe60 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json new file mode 100644 index 0000000000..498e849ab7 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..3ba8326d3a --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..6b12ae0e4b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..3872f0e596 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..9c66f92ffb --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..a18afd4fad --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/PROOF.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/README.md b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/audit_local.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/review_guards.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/verify_global.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/verify_global.py new file mode 100644 index 0000000000..7ab79e3062 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1022/research/gauge44-slots/verify_manifest.py b/research/complex-t37-ends7-owners/vendor/pr1022/research/gauge44-slots/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/CONSTRUCTION.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/CONSTRUCTION.md new file mode 100644 index 0000000000..fa15676366 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/LOCAL-VALIDATION.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/MANIFEST.json new file mode 100644 index 0000000000..96ed00c1a0 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/MANIFEST.json @@ -0,0 +1,198 @@ +{ + "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": "321254d77040f48f3857141ef51602ffac4fbf80fbf0bb85ee8a629ff9a1aaa1", + "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-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": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "data/OWNERS.json.gz": "75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c", + "data/PLAN.json": "c958fe85322465ba8ba727fcd9dcc7439e1e2d5879ec16a17ad9bbc3f771722e", + "data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "data/SPEC-T8.json": "4d1da93ea1a3e4eb6c335ac0e70f9218cb42495d128f91e315ec4846f015b453", + "data/SPEC.json": "94e0232aede81bb1f3f68600098cc300bcb19a86c53c4a73b40e99dd0dbc0ac8", + "data/T8/OWNERS.json.gz": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "data/T8/PLAN.json": "3b47f5027c4f047883c23a41e4578b0fd5c85cdc01fb5a14a6f23eabbe12acbc", + "data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "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/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "evidence/ENDS7-T16-STANDALONE.json": "43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263", + "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", + "evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "evidence/PACKING-SUCCESSOR.json": "7faadb710a9cb5bb402566455727763a14bf73fec0158195a6cc48cbaf6d1acd", + "evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "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": "1aed29292fd04ab3e38339272d0336bdd674893809885eae2f50eb4ead5388b8", + "RESULT.json": "f76608b9702dc189ab62cdf004304076b0940ea1703cbb5415ffb93c50271605", + "SOURCES.json": "abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0", + "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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BARCH.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BIT.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LAYERS.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LEAVER.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-NOTRI.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-P6N.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-PROMO.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-SW4.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/README.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/README.md new file mode 100644 index 0000000000..e610e3937c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/README.md @@ -0,0 +1,338 @@ +# Rank-seven helper ends + sixteen replicas on the seven-slot k8 word: conditional κ = 0.001672765980186726 + +- **κ = 0.001672765980186726** (conservative 0.001672765977335015), T16. This exceeds published #1104 + 0.001672691689152441 (head d8982686, checked 2026-10-14); publication must recheck the live board. + T8 κ of the unchanged ends7 word with its frozen T8 owners is 0.00167112035308811 (`bind8`). +- **Frozen packing:** Packer2 E7G4b, strict candidate E7G4_1, improving the RankSevenEnds laneG_4 map; + owner SHA-256 `75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c`. + The historical material below is provenance, not the binding word/map/result. Only the two-stage ends7/T16 + replay below binds this package; using unchanged #1018 locals is incorrect. +- **Mechanism (credit: #1030, AlexS / Scale, `research/complex-rank7-end-pair`).** #1030 lets U8's helpers 588/589 + end in dimension seven instead of eight (end `U = span{256,128,96,17,9,5,3}`), changing eight B frames and two + early-cleanup frames. On the seven-slot k8 word (`c2b29430…`, R = 480) those helpers are **574/575**; the + recipe `construction/ends7/RECIPE-ENDS7-k8.json` is the same twelve annotations (B 994, 995, 1026, 1027, 1106, 1107, + 1138, 1139; tails 93/94; both ends), output word `f64e0942…`. Local profile Δ `{1:-6,2:+14,3:-8}` (rank mass −2), + widths `{7:30,8:122}` → `{7:32,8:120}`. The freed width is re-packed by an exact pattern-flow LNS on the T16 geometry + (`data/OWNERS.json.gz`, frozen). Search over every helper: see `construction/ends7/README.md`. +- **Checks in the ends7 layer:** literal recipe (old values checked, codimension-one lowerings, output pinned); three + negative controls (end restored to eight, wrong frame, cone violation), each rejected by both audit_local and the + native hpe auditor; native locals pinned; audit_local; PR1049's leaver-premise check on the new word; strict T8. + +## Verification (two commands) + +```sh +# 1. ends7 layer on a completed #1018 slot replay (verify_slots.py or FastPhases' verify_slots_fast.py --work dir); +# writes the new word's locals to /tmp/ends7/local and runs strict T8 on data/T8 +python -B research/gauge44-ends7-t16/construction/ends7/verify_ends7.py \ + --main . --pr635 /tmp/gauge44-pr635 --baseline /tmp/slots --work /tmp/ends7 +# 2. T16 on those locals +python -B research/gauge44-ends7-t16/verify_t16.py --main . --local /tmp/ends7/local --work /tmp/ends7-t16 +``` + +Everything below is the gauge44-slots-t16 README (its κ/owner lines refer to that package). + +# Sixteen replicas on the seven-slot k8 word (#1018): conditional κ = 0.001672651218919025 + +This package runs the two-bank T16 whole-owner controller on [research/gauge44-slots](../gauge44-slots) (#1018). +The local word (`c2b29430…`), its 480 helper widths and the PR589 bit supplier are unchanged. The only new +object is a 16-replica owner map. + +- **κ = 0.001672651218919025** (conservative 0.001672651216067113). That is +11.01×10⁻⁷ over #1018's T8 + κ 0.00167166528321877. The complex side binds. +- **Change:** T16 on #1018. `data/OWNERS.json.gz` (`2e1252f4…`, 69,120 whole-helper roles, 144 calls) is an exact + pattern-flow LNS repack (integer pattern counts + König edge colouring) on the actual T16 window geometry. It is + frozen data. The verifier runs no constructor and no optimizer: `t16/lift16.py` checks every role inside its + owner's actual bridge-aware window, the controller audit re-derives the profile, and `t16/indep16.py` independently + rechecks windows, whole widths, charts, prefix and row. Idle profile `{1:2190, 2:3, 3:370, 6:1, 7:6, 11:18, 48:4870}`. + Prefix 397 < 512; physical row coefficient 16469 < 20161. +- **Code:** `code/` is byte-identical to the signed research/gauge44-barch-t16 code (the #870 T16 adaptation of + #858's source edits). `t16/` holds #858's `build_parent.py` and the generic-R `lift16.py`/`indep16.py` (R taken from the + word; the parent namespace stays at 504). The T8 package's `data/` moves to `data/T8/` and `data/SPEC-T8.json`; + the `bind8` stage replays #1018's T8 admission. +- **Controls:** 69 admission, 12 bit-supplier, 15 controller mutations and 6 independent T16 controls. +- **Credit:** the T16 two-bank controller, parent lift, actual-window reconstruction and independent checker are + Hao Yan's (@FanPUYen) [#858](https://github.com/CrocSwap/integer-mult-bounds/pull/858). The T16 code adaptation is + from #870. The word and T8 package are #1018's (rohanarun's #987 slots on the #1005 leaver word). + +## Verification + +```sh +# 1. #1018's own replay (research/gauge44-slots README): it writes the new word's locals to /tmp/slots/local +python -B research/gauge44-slots/construction/slots/verify_slots.py \ + --main . --pr635 /tmp/gauge44-pr635 --baseline /tmp/lvc --work /tmp/slots +# 2. this package (about 2 minutes) +python -B research/gauge44-slots-t16/verify_manifest.py +python -B research/gauge44-slots-t16/verify_t16.py --main . --local /tmp/slots/local --work /tmp/slots-t16 +# PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY 0.001672651218919025 +``` + +Step 1 must use research/gauge44-slots itself: this package's inherited `verify_global.py` is removed, and the T8 +admission runs inside `verify_t16.py` as `bind8`. Everything below is #1018's README, unchanged. + +--- + +# 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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/RESULT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/RESULT.json new file mode 100644 index 0000000000..4d4a90d703 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/RESULT.json @@ -0,0 +1,113 @@ +{ + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "836382990093363/500000000000000000", + "kappa_decimal": "0.001672765980186726", + "conservative_kappa_decimal": "0.001672765977335015", + "complex_lower": "1675568814697413823921/1000000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348654, + "2": 62211, + "3": 61426, + "4": 20448, + "5": 11808, + "6": 1, + "7": 6, + "8": 1152, + "11": 18, + "48": 4870 + }, + "idle_remainder_profile": { + "1": 2190, + "2": 3, + "3": 370, + "6": 1, + "7": 6, + "11": 18, + "48": 4870 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 9828, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "167112035308811/100000000000000000", + "spec_sha256": "94e0232aede81bb1f3f68600098cc300bcb19a86c53c4a73b40e99dd0dbc0ac8", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.266, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.515, + "exit_code": 0, + "log_sha256": "2e24becb3cc51c1273e7f95b6c1ad07ea7268d8f010e45136e2a717ab978c85c" + }, + { + "name": "bind", + "seconds": 0.438, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.656, + "exit_code": 0, + "log_sha256": "0d4ad4d3ec19dac80cabcc252d52f0e1be675433a2e72fa5812cd31f128efd18" + }, + { + "name": "audit", + "seconds": 18.844, + "exit_code": 0, + "log_sha256": "46dfa91895e878dae0d7e0e4f242a46697ebee087416d630fe620fe448a22839" + }, + { + "name": "invoice", + "seconds": 1.078, + "exit_code": 0, + "log_sha256": "caa1229b78eca961462d35e8ee458be536111111a985294a153e4dd74b9171a8" + }, + { + "name": "assembly", + "seconds": 0.344, + "exit_code": 0, + "log_sha256": "787262ef961d4cb11da7bb463fed3f7c7f249384969edccdaf9c329f65dae233" + }, + { + "name": "admission-controls", + "seconds": 0.422, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.594, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.828, + "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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/SOURCES.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/SOURCES.json new file mode 100644 index 0000000000..0d69845db9 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/assemble.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/assemble.py new file mode 100644 index 0000000000..581dd9cb29 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/assembly_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/assembly_controls.py new file mode 100644 index 0000000000..096ba9cdfe --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/audit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/audit_allcold.py new file mode 100644 index 0000000000..923bf7b675 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/bind_providers_portable.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/bit_supplier_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/emit_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/emit_allcold.py new file mode 100644 index 0000000000..28a08a79da --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/freeze_spec.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/freeze_spec.py new file mode 100644 index 0000000000..4fe3b88915 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/generated_identity.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/invoice_allcold.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/code/invoice_allcold.py new file mode 100644 index 0000000000..d1dd221291 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/COLD44-RECIPE.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/COLD44-RECIPE.json.gz new file mode 100644 index 0000000000..6f59d88920 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/COMPLETION-PRIORITY.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/INPUTS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/LICENSE b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/REBUILD-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/UPSTREAM-NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/LOCAL-PINS-barch-U8.json new file mode 100644 index 0000000000..4028b95c0e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/RECIPE-U8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/build_tri.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/reproduce_barch.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/run_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/build_gauge_cold44.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/construct_gauge_xcentre.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/RECIPE-ENDS7-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/RECIPE-ENDS7-k8.json new file mode 100644 index 0000000000..64c025dc5a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/build_ends7.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/build_ends7.py new file mode 100644 index 0000000000..9270bab3ae --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/end7_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/end7_controls.py new file mode 100644 index 0000000000..a888c1eae5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/NOTICE.md new file mode 100644 index 0000000000..a3b31e157f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/PROOF.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/PROOF.md new file mode 100644 index 0000000000..bbd5990439 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/lowering.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/lowering.py new file mode 100644 index 0000000000..75232da380 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/phases_fast.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/phases_fast.py new file mode 100644 index 0000000000..ce73f874bd --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/sparse_state.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/fastpath/sparse_state.py new file mode 100644 index 0000000000..ca39f73494 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/premise_check.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/premise_check.py new file mode 100644 index 0000000000..98efec187d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/verify_1049.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/premise/verify_1049.py new file mode 100644 index 0000000000..3e34e2c5a6 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/verify_ends7.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/verify_ends7.py new file mode 100644 index 0000000000..ba3addc2fa --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/ends7/verify_ends7.py @@ -0,0 +1,132 @@ +#!/usr/bin/env python3 +"""Rank-seven helper ends (PR1030's mechanism) on the seven-slot k8 word, with hash-checked reuse of a completed slot replay. + +Follows the baseline-reuse pattern of construction/slots/verify_slots.py (and FastPhases' verify_slots_fast.py): + 1. baseline: a completed verify_slots[_fast].py --work directory; its slot word and its canonical/program/Clifford locals + must equal construction/slots/SLOT-PINS-k8.json and every recorded step must have passed. + 2. ends7: build_ends7.py with RECIPE-ENDS7-k8.json (literal old->new edits, codimension-one lowerings; output pinned), + then end7_controls.py: the recipe word passes and the three negative controls (end restored to eight, wrong frame, + cone violation) are each rejected by BOTH the independent audit_local and the native hpe auditor with pinned reasons. + 3. native locals of the new word (verify_slots step 3; phases via PR1029's sparse evaluator unless --phases reference); + canonical/programs/Clifford pinned in ENDS7-PINS-k8.json. + 4. independent audit_local, and PR1049's leaver-premise / endpoint / frame-recount check on the NEW word. + 5. strict global replay (verify_global.py) of this package's data on the new locals; kappa pinned. +""" +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'); pins = read(HERE / 'ENDS7-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. 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'] == pins['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'] == pins['base_sha256'] and r['expected']['output_sha256'] == pins['word_sha256'] + assert [e[0] for e in r['ends']] == pins['helpers'] + (work / 'ends7').mkdir(); fw = work / 'ends7/FULL-WORD.json.gz' + run('ends7', HERE / 'build_ends7.py', bw, rec, fw, portable=False) + assert csha(fw) == pins['word_sha256'], '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'] == pins['control_rejections'], c['status'] + + # 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'] == r['expected']['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__')) + 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 + kd = pins['kappa_decimal'] + res = dict(status='PASS_RANK7_ENDS_ON_CHECKED_SLOT_BASELINE', kappa_decimal=kd, strict=last, + 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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/FRAME-RECIPE-sw4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/FRAME-RECIPE-sw4.json new file mode 100644 index 0000000000..7394064c5e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/LOCAL-PINS-frames-sw4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/LOCAL-PINS-frames-sw4.json new file mode 100644 index 0000000000..834ae13a2f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/build_frames.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/build_frames.py new file mode 100644 index 0000000000..22021549e6 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/frame_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/frame_controls.py new file mode 100644 index 0000000000..cd951a9f0e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/reproduce_frames.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/frames/reproduce_frames.py new file mode 100644 index 0000000000..eaf9b47cac --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/LOCAL-PINS-jx-X4.json new file mode 100644 index 0000000000..417e4ba7a1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/RECIPE-X4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/build_jx.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/reproduce_jx.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/build_pivot_swap.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/build_pivot_swap.py new file mode 100644 index 0000000000..b225601c01 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/layer_end_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/layer_end_controls.py new file mode 100644 index 0000000000..317da36d95 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/reproduce_layers.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/HPE-RECIPE-NP.json new file mode 100644 index 0000000000..2605d199ed --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/PIVOT-SWAP-NP.json new file mode 100644 index 0000000000..4e0d846426 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/reproduce_np.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_np/reproduce_np.py new file mode 100644 index 0000000000..79cb6fa912 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/P6N-SPEC.json new file mode 100644 index 0000000000..43c3ec265c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/layer_end_controls.py new file mode 100644 index 0000000000..dd321fe255 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/layers_p6n/reproduce_p6n.py new file mode 100644 index 0000000000..f9eb173bc1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CHAIN-PINS-k8.json new file mode 100644 index 0000000000..afd0467911 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/FRAME-RECIPE-LV-k8.json new file mode 100644 index 0000000000..982bd357da --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/HPE-RECIPE-k8.json new file mode 100644 index 0000000000..94d36f2279 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEAVER-PINS-k8.json new file mode 100644 index 0000000000..b22678629c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json new file mode 100644 index 0000000000..820ee8d63a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/LEC-REASON-PINS-k8.json new file mode 100644 index 0000000000..5218a5f096 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/PROMO-RECIPE-k8.json new file mode 100644 index 0000000000..1952580fc8 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-U8-k8.json new file mode 100644 index 0000000000..98ea6e3d23 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/RECIPE-X4-k8.json new file mode 100644 index 0000000000..3483acd5a5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/REGROUP-LEAVER-k8.json new file mode 100644 index 0000000000..d482da23a8 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/build_frames_lv.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/build_frames_lv.py new file mode 100644 index 0000000000..5f8aa7a24b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01+.json new file mode 100644 index 0000000000..bfef820f29 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-01-.json new file mode 100644 index 0000000000..3afa894b20 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23+.json new file mode 100644 index 0000000000..98ff8050e7 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-23-.json new file mode 100644 index 0000000000..517b89d382 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45+.json new file mode 100644 index 0000000000..2bc89e1de1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-45-.json new file mode 100644 index 0000000000..b9c1904b83 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67+.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cells-k8/CORE-67-.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cgx_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/leaver/reproduce_leaver_chain.py new file mode 100644 index 0000000000..19fcd28f4d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/PRIO6.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/cgx.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/port_stage_x.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/port_stage_x.py new file mode 100644 index 0000000000..81ac65ceff --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/reproduce_notri.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/LOCAL-PINS-p6n-k4.json new file mode 100644 index 0000000000..c43b391a43 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/PROMO-RECIPE-p6n-k4.json new file mode 100644 index 0000000000..3f336c07ea --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/build_promotion.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/make_recipe.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/promo_controls.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/reproduce_promo.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/RECIPE-SLOTS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/RECIPE-SLOTS-k8.json new file mode 100644 index 0000000000..acc1a733d6 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/SLOT-PINS-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/SLOT-PINS-k8.json new file mode 100644 index 0000000000..2702c368f4 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/verify_slots.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/slots/verify_slots.py new file mode 100644 index 0000000000..fd06b654af --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json new file mode 100644 index 0000000000..ae26a0f2f1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/NOTES.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/SW4-RECIPE-P6k4.json new file mode 100644 index 0000000000..b9dea4152a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/build_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/reproduce_sw4.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/FRONTIER.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/OWNERS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/OWNERS.json.gz new file mode 100644 index 0000000000..bd16cbfa56 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/PLAN.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/PLAN.json new file mode 100644 index 0000000000..eeb24113ac --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/PLAN.json @@ -0,0 +1,85662 @@ +{ + "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": 348654, + "2": 62211, + "3": 61426, + "4": 20448, + "5": 11808, + "6": 1, + "7": 6, + "8": 1152, + "11": 18, + "48": 4870 + }, + "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": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 1, + "stage": 0, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 2, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 3, + "stage": 0, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 4, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 5, + "stage": 1, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 6, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 7, + "stage": 0, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 8, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 9, + "stage": 1, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 10, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 11, + "stage": 2, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 12, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 13, + "stage": 0, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 14, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 15, + "stage": 1, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 16, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 17, + "stage": 2, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 18, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 19, + "stage": 3, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 20, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 21, + "stage": 0, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 22, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 23, + "stage": 1, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 24, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 25, + "stage": 2, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 26, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 27, + "stage": 3, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 28, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 29, + "stage": 4, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 30, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 31, + "stage": 0, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 32, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 33, + "stage": 1, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 34, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 35, + "stage": 2, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 36, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 37, + "stage": 3, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 38, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 39, + "stage": 4, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 40, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 41, + "stage": 5, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 42, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 43, + "stage": 0, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 44, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 45, + "stage": 1, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 46, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 47, + "stage": 2, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 48, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 49, + "stage": 3, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 50, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 51, + "stage": 4, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 52, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 53, + "stage": 5, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 54, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 55, + "stage": 0, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 56, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 57, + "stage": 6, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 58, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 59, + "stage": 1, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 60, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 61, + "stage": 2, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 62, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 63, + "stage": 3, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 64, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 65, + "stage": 4, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 66, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 67, + "stage": 5, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 68, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 69, + "stage": 6, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 70, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 71, + "stage": 1, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 72, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 73, + "stage": 7, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 74, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 75, + "stage": 2, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 76, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 77, + "stage": 3, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 78, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 79, + "stage": 4, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 80, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 81, + "stage": 5, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 82, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 83, + "stage": 6, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 84, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 85, + "stage": 7, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 86, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 87, + "stage": 2, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 88, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 89, + "stage": 8, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 90, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 91, + "stage": 3, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 92, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 93, + "stage": 4, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 94, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 95, + "stage": 5, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 96, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 97, + "stage": 6, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 98, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 99, + "stage": 7, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 100, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 101, + "stage": 8, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 102, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 103, + "stage": 3, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 104, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 105, + "stage": 4, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 106, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 107, + "stage": 5, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 108, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 109, + "stage": 6, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 110, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 111, + "stage": 7, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 112, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 113, + "stage": 8, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 114, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 115, + "stage": 4, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 116, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 117, + "stage": 5, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 118, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 119, + "stage": 6, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 120, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 121, + "stage": 7, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 122, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 123, + "stage": 8, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 124, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 125, + "stage": 5, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 126, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 127, + "stage": 6, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 128, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 129, + "stage": 7, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 130, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 131, + "stage": 8, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 132, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 133, + "stage": 6, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 134, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 135, + "stage": 7, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 136, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 137, + "stage": 8, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 138, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 139, + "stage": 7, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 140, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 141, + "stage": 8, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 142, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 143, + "stage": 8, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + } + ], + "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": "b93750aa257ed81ed074baac5ef6a4295a40b89a375b7c127aacfcf1751eddbd", + "LOCAL-PROGRAMS.json.gz": "c5336204d14a0eb1c190ea722b456f147eb4f14e05c941837b529eea96b6bdf3", + "LOCAL-CHECKS.json": "7886c4fb6f8e152964f18cc98588aec4310f0a8e82d0f534cfa0c05edb6a7037", + "INDEPENDENT-LOCAL-REPLAY.json": "168fef9638bf9ee450b8721d8801457cc61a737b453fa14b31a4c285ed86b568", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "f9266e70c2ebaafb7d7344413fa13c4f17725f430f906486dc077bbeca4e12de", + "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": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273", + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + } + }, + "source_plan_sha256": "3b47f5027c4f047883c23a41e4578b0fd5c85cdc01fb5a14a6f23eabbe12acbc", + "assignment_sha256": "75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c", + "source_owners_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "assignment_content_sha256": "bdc303c6306a0d1311ba01c16d430e371f1e65b8877e24a7d15d2f52e775fd44", + "replica_lift": { + "groups": 2, + "source_replicas": 8, + "replicas": 16, + "parent_template_content_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "owners_file_sha256": "75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c", + "window_semantics": "strict physical source-event touch intervals, including bridges", + "schedule_content_sha256": "ef9b70f30251e90ca15f54e7802cedf9b2d23bdc150e8f2bc18c916d0f2f2312" + } +} diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/PREPARATION.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC-T8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC-T8.json new file mode 100644 index 0000000000..8476256133 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC-T8.json @@ -0,0 +1,1327 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-all72", + "data": { + "plan_sha256": "3b47f5027c4f047883c23a41e4578b0fd5c85cdc01fb5a14a6f23eabbe12acbc", + "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": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + }, + "entering": 192, + "entrance": 384, + "width_digest": "d63626638b95584b87db7e7481471b43683386e135f964a2b27be372cf6abf70", + "program_hashes": { + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1", + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + "artifacts": { + "LOCAL-CHECKS.json": "7886c4fb6f8e152964f18cc98588aec4310f0a8e82d0f534cfa0c05edb6a7037", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "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": 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": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1", + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "semantic_phase_sha256": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "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": 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": 30707, + "4": 10224, + "5": 5904, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.001671120350237024", + "kappa_decimal": "0.00167112035308811", + "complex_lower": "1673917670977474940547/1000000000000000000000000", + "conservative_complex_lower": "836958834058417704099/500000000000000000000000", + "kappa": "167112035308811/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC.json new file mode 100644 index 0000000000..5a42a7c6f0 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/SPEC.json @@ -0,0 +1,1977 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-t16-two-bank", + "data": { + "plan_sha256": "c958fe85322465ba8ba727fcd9dcc7439e1e2d5879ec16a17ad9bbc3f771722e", + "owners_sha256": "75c9562408f8b79425556a385aaa401224ec89496abac11ecd2306b3e417312c" + }, + "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": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + }, + "entering": 192, + "entrance": 384, + "width_digest": "d63626638b95584b87db7e7481471b43683386e135f964a2b27be372cf6abf70", + "program_hashes": { + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1", + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + "artifacts": { + "LOCAL-CHECKS.json": "7886c4fb6f8e152964f18cc98588aec4310f0a8e82d0f534cfa0c05edb6a7037", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "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": 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": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1", + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "semantic_phase_sha256": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "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": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 9828, + "cross_replica_helper_roles": 58311, + "idle_remainders": 7458, + "idle_remainder_profile": { + "1": 2190, + "2": 3, + "3": 370, + "6": 1, + "7": 6, + "11": 18, + "48": 4870 + }, + "global_profile": { + "1": 348654, + "2": 62211, + "3": 61426, + "4": 20448, + "5": 11808, + "6": 1, + "7": 6, + "8": 1152, + "11": 18, + "48": 4870 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001672765977335015", + "kappa_decimal": "0.001672765980186726", + "complex_lower": "1675568814697413823921/1000000000000000000000000", + "conservative_complex_lower": "1675568811836138353091/1000000000000000000000000", + "kappa": "836382990093363/500000000000000000", + "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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/T8/OWNERS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/T8/OWNERS.json.gz new file mode 100644 index 0000000000..bd1cec69f0 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/T8/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/T8/PLAN.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/T8/PLAN.json new file mode 100644 index 0000000000..105d6c2223 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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": 30707, + "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": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273" + } + ], + "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": "b93750aa257ed81ed074baac5ef6a4295a40b89a375b7c127aacfcf1751eddbd", + "LOCAL-PROGRAMS.json.gz": "c5336204d14a0eb1c190ea722b456f147eb4f14e05c941837b529eea96b6bdf3", + "LOCAL-CHECKS.json": "7886c4fb6f8e152964f18cc98588aec4310f0a8e82d0f534cfa0c05edb6a7037", + "INDEPENDENT-LOCAL-REPLAY.json": "168fef9638bf9ee450b8721d8801457cc61a737b453fa14b31a4c285ed86b568", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "f9266e70c2ebaafb7d7344413fa13c4f17725f430f906486dc077bbeca4e12de", + "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": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "f2fdd8a9986836ca8babb879f2bc45ffb1a8af9b03356f8c9f473296d4860273", + "backward": "c4209bfd82bf85b315050849e35e645dfa8a0959a0029134bde37907c4010eb1" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "LOCAL-PROGRAMS.json.gz": "d361480e71f39003ba7cbb696172354df6761f49a12aa988b4ba340cd638af44", + "LOCAL-CHECKS.json": "dfa7214c680d84526b9aa0a196d34762cefdd783909a36c0cfb9a04e9d62b18e", + "INDEPENDENT-LOCAL-REPLAY.json": "b4b0d578e2942c1ddd0e06ccd06d36aec5d7f70003fd477c339b2e33ceb45e49", + "CLIFFORD-RECIPES.json": "e19924062afe25129ab0c1fc98c9c40cbeb123c72ff48816778f05897b6ee161", + "CLIFFORD-REVIEW.json": "a6384e4c74181960875692abfcd1e7dba45dbdbe8bfdaf1b20ebceb680c4dfdd", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + } + }, + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "assignment_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" +} diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/UPSTREAM-PINS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..2e15a10065 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ASSEMBLY.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6feaaf28f5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/BINDING.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/BINDING.json new file mode 100644 index 0000000000..b03160c67a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ENDS7-T16-STANDALONE.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ENDS7-T16-STANDALONE.json new file mode 100644 index 0000000000..ef2a1dc710 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/ENDS7-T16-STANDALONE.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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/LOCAL-STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..b2753eb57a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/PACKING-SUCCESSOR.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/PACKING-SUCCESSOR.json new file mode 100644 index 0000000000..2aad708dcc --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/PACKING-SUCCESSOR.json @@ -0,0 +1,121 @@ +{ + "status": "PASS_FROZEN_ENDS7_PACKING_SUCCESSOR", + "candidate": "E7G4_1", + "local": "C:\\src\\mult\\scratch\\RankSevenEnds\\G4-standalone-ends7\\local", + "structural_replay_evidence": "ENDS7-T16-STANDALONE.json", + "strict_replay": { + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "836382990093363/500000000000000000", + "kappa_decimal": "0.001672765980186726", + "conservative_kappa_decimal": "0.001672765977335015", + "complex_lower": "1675568814697413823921/1000000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348654, + "2": 62211, + "3": 61426, + "4": 20448, + "5": 11808, + "6": 1, + "7": 6, + "8": 1152, + "11": 18, + "48": 4870 + }, + "idle_remainder_profile": { + "1": 2190, + "2": 3, + "3": 370, + "6": 1, + "7": 6, + "11": 18, + "48": 4870 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 9828, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "167112035308811/100000000000000000", + "spec_sha256": "94e0232aede81bb1f3f68600098cc300bcb19a86c53c4a73b40e99dd0dbc0ac8", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.266, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.515, + "exit_code": 0, + "log_sha256": "2e24becb3cc51c1273e7f95b6c1ad07ea7268d8f010e45136e2a717ab978c85c" + }, + { + "name": "bind", + "seconds": 0.438, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.656, + "exit_code": 0, + "log_sha256": "0d4ad4d3ec19dac80cabcc252d52f0e1be675433a2e72fa5812cd31f128efd18" + }, + { + "name": "audit", + "seconds": 18.844, + "exit_code": 0, + "log_sha256": "46dfa91895e878dae0d7e0e4f242a46697ebee087416d630fe620fe448a22839" + }, + { + "name": "invoice", + "seconds": 1.078, + "exit_code": 0, + "log_sha256": "caa1229b78eca961462d35e8ee458be536111111a985294a153e4dd74b9171a8" + }, + { + "name": "assembly", + "seconds": 0.344, + "exit_code": 0, + "log_sha256": "787262ef961d4cb11da7bb463fed3f7c7f249384969edccdaf9c329f65dae233" + }, + { + "name": "admission-controls", + "seconds": 0.422, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.594, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.828, + "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." + }, + "local_word_sha256": "a8a009fa1a48780a7e9cdbc0a782a26d7059a4dbcb9a8d8389ecd5d17a084a5a", + "log": "C:\\src\\mult\\scratch\\T37Port\\vship_pkg-ends7-t16_1.log" +} diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/REPLAY.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/REPLAY.json new file mode 100644 index 0000000000..c6f4e0f983 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/STAGES.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/STAGES.json new file mode 100644 index 0000000000..9464e2dfea --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..05975382b5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..a557ebbe60 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..1c86a8a01d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..bdb9441b7e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/audit/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..6c96ec6706 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/ACTUAL-SIGMAS.json.gz new file mode 100644 index 0000000000..dbb57066e2 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..424c2df489 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/HOSTED.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/HOSTED.json new file mode 100644 index 0000000000..498e849ab7 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz new file mode 100644 index 0000000000..3562e60f05 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json new file mode 100644 index 0000000000..0780787674 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/CELL-MUTANTS-LV.json new file mode 100644 index 0000000000..4d4ef7403c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json new file mode 100644 index 0000000000..9f56e21000 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CANONICAL-WORD.json.gz new file mode 100644 index 0000000000..5062a1f62f Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..3ba8326d3a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..6b12ae0e4b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/FULL-WORD.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/FULL-WORD.json.gz new file mode 100644 index 0000000000..447d45d08b Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..aa15edfba5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..3872f0e596 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-PROGRAMS.json.gz new file mode 100644 index 0000000000..d511f2afa4 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..9c66f92ffb --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/SCALAR-FRAME-AUDIT.json new file mode 100644 index 0000000000..23bf3d263e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..a18afd4fad --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/PROOF.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/expand_owners.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MAJORIZATION.json.gz new file mode 100644 index 0000000000..047b1cfb67 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/OWNERS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/OWNERS.json.gz new file mode 100644 index 0000000000..e9c7cfc72d Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-OWNERS.json.gz new file mode 100644 index 0000000000..d61916a156 Binary files /dev/null and b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/reproduce.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/reuse_owners.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json new file mode 100644 index 0000000000..771faa86a7 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json new file mode 100644 index 0000000000..e2df1dcca8 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/README.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/audit_local.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/review_guards.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/inputs/PR589-EXPECTED.json b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/NOTICE.md new file mode 100644 index 0000000000..403f4afffb --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/build_parent.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/build_parent.py new file mode 100644 index 0000000000..bd9e28bd2d --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/indep16.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/indep16.py new file mode 100644 index 0000000000..81e1e9fe15 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/lift16.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/t16/lift16.py new file mode 100644 index 0000000000..613c4bdb3c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/verify_manifest.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/verify_t16.py b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-t16/verify_t16.py new file mode 100644 index 0000000000..4794150c4c --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr1107/research/gauge44-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/LICENSE b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json new file mode 100644 index 0000000000..1aba78802a --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json @@ -0,0 +1,61 @@ +{ + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "PROOF-COMMUTING-PREFIX.md": "59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1", + "PROOF-NOTE-R.md": "22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed", + "PROOF-NOTE.md": "e79d0920228107083be166a6733186816a38a8fa68d99f2038f07b157ea5690e", + "README.md": "d74a9499a23a729d3470bde7b06b85c4cf8602d06d10af9bf9991aea2da8ed7e", + "code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "data/EXPECTED.json": "9eeb8b149bf7649a47b0d3266436b9bfe0ba155ffb9668fa66cfa21136f9b8ed", + "data/OWNERS.json.gz": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "data/PLAN.json": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "data/SPEC.json": "f5473e3e6d76901bca57616efda78c3e23b3d30aa2c05acb656b6e87c38abbff", + "data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "data/WITNESS.json": "05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436", + "data/cand.json": "f1f42cb6f1f272ca3690e65fe604c18427dd9ac51241095c133bf97af21d32e3", + "data/recipes/atm3-step0-promote.json": "9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f", + "data/recipes/atm3-step1-greedy_kernels.json": "c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f", + "data/recipes/atm3-step2-frame_coalesce.json": "e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c", + "data/recipes/atm3-step3-gate_move_coalesce.json": "3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d", + "data/recipes/ck-step0-greedy_kernels.json": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "data/recipes/ck-step1-frame_coalesce.json": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "data/recipes/ck-step2-gate_move_coalesce.json": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "data/recipes/k492-atm3-cold_end.json.gz": "a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c", + "data/recipes/k492-atm3-frame_regroup.json": "8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e", + "data/recipes/k492-atm3-hyperplane_end.json": "30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631", + "data/recipes/k492-ck-cold_end.json.gz": "9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c", + "data/recipes/k492-ck-frame_regroup.json": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "data/recipes/k492-ck-hyperplane_end.json": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "data/recipes/k492-jp8-cold_end.json.gz": "90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35", + "data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "data/search/DISPATCH.json": "34f233d4976e59455c3f0e1fa6edef8091d04bf63e4268aeb4a73810bfd5e338", + "data/search/LP-PATTERNS-AGG.json": "5a1e2c3f7784cff71d4577e29d7a598a41198dac20aa35d5c87bb345d12f3e03", + "data/search/LP-PATTERNS-EX.json": "08dd7090b5fda8b0a2c936c12982b279333c5765cfd090361a58e74d68b22e80", + "data/search/TEMPLATE-PLAN.json": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "data/search/WARM-OWNERS.json.gz": "56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4", + "data/search/WARM-PLAN.json": "89539c2b5d24225613c0ceb571a03a2165bcaf0a0bea06986e212649cbfef9e1", + "verify.py": "4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7", + "verify.sh": "18cf93f64fa5b7301f837950df181cf08ee8c3efe1b3fb6803354549a7462618" +} diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/NOTICE.md b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md new file mode 100644 index 0000000000..f3ab78dba0 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md @@ -0,0 +1,91 @@ +# Hyperplane ends past a commuting cleanup prefix (46 helpers per call) + +Status: for independent review. Code: `scratch/MultiHPEScout/pipe/` (a copy of `scratch/Pipeline`; only +`code/build_hpe.py` and `code/hpe_controls_atc.py` differ). Lean: PR #593 (`research/hyperplane-end-lean`, Tail.lean / +Main.lean / Labels.lean) and PR #599 (Multi.lean), archived at `scratch/MultiHPEScout/research/hyperplane-end-lean`. + +## 0. The change + +`build_hpe.py` (#596) admitted an early cleanup gate `g = cleanup[i] = h -= p` only when `g` was the **first** cleanup +gate on both `h` and `p`. The relaxed rule admits `g` when it **commutes with every earlier cleanup gate on its registers** +(`commute()` in build_hpe.py: neither gate writes a register the other touches, or both are additions into one target +and neither reads the other's target). All other conditions are unchanged: `h` is an entering helper with exactly one +cleanup gate, `U` = join of the last A/B frames of `h` and `p` (dim 8), early gates share no register. + +On #596's ck, atm3 and jp8 words this admits 8 more helpers per word (38 → 46): `h ∈ {496, 497, 520, 521, 544, 545, +568, 569}`. In each case the partner `p` (299, 33, 331, 105, 363, 41, 395, 97) has exactly one earlier cleanup gate, +`x -= p` (x = 283, 9, 315, 65, 347, 1, 379, 73; cleanup 440–447), which only **reads** `p`. `h` has no earlier cleanup +gate. E is dim 1 ((24) or (30)), the last frames of h / p have dim 7 / 5 and U has dim 8. + +Per helper: width 8 → 7; paid `{1:+2, 2:−1, 3:+1, 4:−1}` (h 7→9 becomes 7→8; p 5→9 becomes 5→8→9). Rank mass −1 with +hosted width −1, so total mass and the 2560 deficit are unchanged. The constructor's profile is reproduced by an +independent build of coldk-hpe with the same rule (`coldk-multi.exe info`). + +Multi-gate tails and cold E = ⊥ helpers (#599) admit nothing further on these words; see `CENSUS.md`. + +## 1. Why #593's hypotheses still hold + +#593's theorems are about the word **as executed**, `a ++ tail ++ b ++ [post]`. Nothing in them refers to the original +cleanup order: the order matters only through the scalar hypothesis `hS` (unit helper row, zero column), which the +tools check on the reordered program. + +1. **Labels** — `hpe_labels` (Tail.lean:44; equally `hpe_labels_multi`, Multi.lean:195, as the one-gate instance via + `tail_eq_mtail`). Hypotheses: + * `ha`: `a` = precondition + compensation + A + cut + B is the inherited part, unchanged. + * `tail h p Ah Ap U q` is well labelled by `tail_labels` (Tail.lean:30): h and p climb to U, the gate runs at U (G0). + * `hb`: `b` = the final climbs + the remaining FULL cleanup. The skipped gate `x -= p` now runs in `b` after `p` has + climbed U → FULL in the final phase, so both operands are at FULL (G0). `b` is well labelled exactly as for the 38 + (the partner of each of the 38 likewise continues U → FULL). + * `hmv`: no event of `b` moves `h`. True because `h` has exactly one cleanup gate (constructor assert; audit assert + `cleanup on non-FULL end`, hpe_audit_and_transport.py:216). + The skipped gate touches `p` and `x`, never `h`, so the relaxation does not affect `hmv`. +2. **Scalars** — `hS` and the endpoint (E). `hpe_audit_and_transport.py:116-124` replays `precondition + compensation + + A + cut + B + tail + rest` exactly (forward and inverse-transpose, all 728 columns) and asserts the inherited scalar + identity. Why it passes: as matrices, `t += a·s` is `I + a·E_ts`, and + `(I + a E_ts)(I + b E_uv) = I + a E_ts + b E_uv + ab·[s = u]·E_tv`. For `x -= p` (t = x, s = p) and `h -= p` + (u = h, v = p): `s = p ≠ h = u` and `v = p ≠ x = t`, so both products equal `I − E_xp − E_hp`; the gates commute and the + reordered program is the same linear map as the original. A skipped gate that **writes** `p` (`p += c·y`: t = p = v) + or touches `h` fails this and is refused by the constructor; any such move that reached the audit is rejected by the + replay (control below). +3. **(N)** — the new helpers use (E, U) pairs `((24), U₂₄)` and `((30), U₃₀)`. The wrapper check + (`hpe_adapters_local.py`, `WRAPPER-CHECKS.json`) checks T_U T_E⁻¹ = L (C_[7] ⊗ I) R exactly with phase for **every** + (E, U) pair of the emitted word; #593's `factor_of_exact` then gives (F), and `hpe_word` (Main.lean:86) gives the + endpoint `χ⁻¹ (C_[7] ⊗ I₂) χ`. `code/check_hpe_pairs.py` (#593 §4) re-checks the shape on the emitted local run. +4. **Accounting** — unchanged rules: width = |final| − |E| at the emit/audit/invoice sites, mass neutrality as in + `HostingShapeScout/PROOF-HYPERPLANE-END.md` §2 (the partner pays last → U → FULL, h pays last → U). + +No verifier rule changes: the audit, emitter, adapters, invoice and global stage already accept any exact reordering. +Only the constructor's admissibility rule (a sufficient condition for the replay to pass) is widened. + +## 2. Negative controls (`code/hpe_controls_atc.py`, run by verify.py's hyperplane_end step) + +Inherited raw-word controls (8), all rejected; the first is the audit-level one for this change: an early gate that does +not commute with its skipped prefix (a gate whose source was written by an earlier cleanup gate) is rejected by the +exact replay. + +New controls (13; PrefixReviewer fixes applied). Every constructor control must fail with a **pinned** assertion message +(`NONCOMMUTE` = "cleanup gate does not commute with the skipped cleanup gates on its registers", `ONEGATE` = "helper must +have exactly this one cleanup gate"); a different failure aborts the control run. Helpers are paired with their early +gate through the gate's target `cleanup[i][1]` (checked against `helper_final`), not through dict order. +* Synthetic, gate inserted at the head of the cleanup (skipped by the first early gate `h -= p`): + positive `x -= p` (only reads p) accepted; `p -= x` → NONCOMMUTE; `p *= −1` → NONCOMMUTE; + an extra gate reading `h` → ONEGATE; an extra gate adding into `h` → ONEGATE (these two exercise the one-gate rule, + not the commutation check). +* Real helpers: for each helper admitted only by the commutation rule (496, 497, 520, 521, 544, 545, 568, 569 on ck), + its actual skipped gate `x -= p` (cleanup 447 … 440) is flipped in place to `p -= x` → NONCOMMUTE (8 controls). The + unflipped word's own changes are re-built (positive). +* Raw word (audit): `local_profile['1'] −= 8` (the 8 new partners' U → FULL climbs not charged) → rejected by the + audit's paid-profile assert. + +Result on `w_ck`: `PASS 21 HPE raw-word mutations rejected` (9 raw-word + 12 constructor). + +## 3. Evidence from the strict build (`prop_m46/build`, pipe/propose.py --until build, dev reuse of baseline558 only) + +* `{ck,atm3,jp8}-step*-hyperplane_end-construction.log`: `PASS 46 hyperplane-ended helpers` each. +* `{ck,atm3,jp8}-step*-hyperplane_end-controls.log`: `PASS 12 HPE raw-word mutations rejected` each (8 inherited + 4 + constructor; the positive reader case built). +* `{ck,atm3,jp8}-local/WRAPPER-CHECKS.json`: `PASS_RESIDUAL_WRAPPERS_ARE_EXACT`; plus the local native checks + (all-columns-native-frames = exact replay of the reordered program, phase edges, reflected ledgers, independent local + controls) that the build runs on every provider. +* #593's independent instance check `code/check_hpe_pairs.py RUN --mutants` on each local: PASS, 46 helpers, 3 distinct + (E, U) pairs (24 / 12 / 10 helpers; #596 had 24 / 8 / 6 — the same three pairs), 6/6 mutants rejected. diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md new file mode 100644 index 0000000000..a403cbeb77 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md @@ -0,0 +1,86 @@ +# Proof note: the global code for provider helper count R (R = 492 in complex-571-cold14-k492) + +**Scope.** +- Code: `code/{bind_providers_portable,emit_allcold,audit_allcold,invoice_allcold,assemble,assembly_controls,generated_identity_controls,witness}.py` of this package. +- Base: complex-571-cold14-b3, whose six global scripts are byte-identical to complex-571-cold14-e1's. +- The generalisation is GlobalR's (scratch `GlobalR/generalise-R.diff`), with three review fixes: + 1. The width-8 spot check is restored, not dropped. + 2. The cold-helper width-swap control is restored without the skip. + 3. The register of the generated-identity same-rank start-frame mutation follows the helper map. + +**Geometry.** There are v = 112 data ports and h = 9. A provider word has R helper registers `[2v, 2v+R)`, so n = 2v+R. Two helper counts appear in the code: +- **R**: the helper count of the provider words that the hosted calls run. It is read from `word['R']`, and every step asserts that all providers share one value. +- **R0 = 504**: the helper count of the fixed *parent* template, which is the baseline558 split-centres word and its dedicated-bank global template. The parent enters only as geometry and an overcharge envelope: + - `parent_live` 11704 = 7168 + 9·504 banks; + - `parent_physical` 12218 = 11704 + 504 + 8 + 2. + +The inherited code wrote both counts as the literal 504. That is sound when R = R0 and wrong otherwise. + +**Spot helpers.** `witness.SPOT` = `SPEC.width_spot_helpers`, defaulting to PR558's helpers (270, 282, 294, 306). For a K-triangle package, `verify.py` asserts that the spec value equals the images of those four helpers under the constructor's `HELPER-MAP.json`. Here that is [264, 276, 288, 300]. + +**Per-site revert controls.** `revert_controls.py` (scratch `Stack492/`) runs each control: +1. It patches one site back to its 504 text in a temporary copy of `code/`. The site's text must match exactly once. +2. It re-runs the chain listed in the tables below on the fixture's own inputs. +3. It records `pass_identical`, `pass_changed` or `fail`, with the failing assertion. + +Expectations: on R = 504 every revert must pass with identical outputs, apart from `seconds` fields. On R ≠ 504 every R site must fail; the R0 and cosmetic sites must pass. + +## Sites (32), each with its revert control and the observed result on the R = 492 strict fixture + +Fixture: `cands/K1/strict`, the strict `verify.py` run of this package (κ 0.00163542231500688). Report: `REVERT-492.json`, **ALL_AGREE, 32 sites, 47.7 s**. + +| site | file | generalised | revert (504 text) | kind | why it is the same quantity | R=492 observed | +|---|---|---|---|---|---|---| +| bind.word_R | bind | `(v,h,centres)==(112,9,8)`, R a positive int, one R across providers | `(v,h,R,centres)==(112,9,504,8)` | R | the bound word's own helper count | fail (AssertionError) | +| bind.helper_range | bind | `range(2*112,2*112+word['R'])` | `range(224,728)` | R | helper registers are `[2v,2v+R)` | fail (IndexError) | +| bind.spot_width8 | bind | `widths[h]==8 for h in SPOT` | `… in (270,282,294,306)` | R (helper map) | the same four PR558 helpers, renumbered | fail (AssertionError) | +| emit.R_from_providers | emit | `R=pc['R']` (all providers equal) | `R=504` | R | hosted calls run the provider words; the old code took R from the parent | fail (IndexError) | +| emit.roles_72R | emit | `len(roles)==72*R` | `72*504` | R | one role per (call, helper) | fail | +| emit.widths_range | emit | `for h in range(R)` | `range(504)` | R | one width per helper | fail (IndexError) | +| emit.all_helpers_owned | emit | `set(bycall[k])==set(range(R))` | `range(504)` | R | every helper of a call is owned | fail | +| emit.physical | emit | `physical=DATA+C+R+2` | `+504+` | R | stock = data + centres + R helpers + 2 coefficient columns | fail (independent audit) | +| emit.reserved_tableau | emit | `[DATA+C,DATA+C+R]` | `+504` | R | the private tableau holds R helper columns | fail (independent audit) | +| emit.parent_R0 | emit | `parent physical-live==C+R0+2` | `C+R+2` (provider R) | R0 control | parent stock identity | fail | +| emit.version_label | emit | `'round20-R%d-…'%R` | `'round20-R504-…'` | cosmetic | a label that no check reads | pass_changed (expected pass) | +| audit.spot_width8 | audit | `widths[h]==8 for h in SPOT` | PR558 indices | R (helper map) | as bind | fail | +| invoice.recount_R | invoice | `(v,h)==(112,9)`, helpers = `w['R']` | `(v,helpers,h)==(112,504,9)` | R | helper count of the recounted word | fail | +| invoice.run_R_n | invoice | common provider R, `n=2v+R` | `helpers=504; n=728` | R | n = 2v+R | fail | +| invoice.parent_R0 | invoice | `parent_physical==parent_live+parent_helpers+…` | `+helpers+` | R0 control | parent stock identity | fail | +| invoice.route_items | invoice | `+2*call_count*helpers` | `*504` | R | per-call in/out routes of the R hosted helpers (PR531 invoice_final); assemble recounts with `2*72*R` | fail (assemble) | +| assemble.R | assemble | `R=invoice['helpers']` | `R=504` | R | invoice helper count, equal for every provider | fail | +| assemble.owners_per_call | assemble | `==2*112+R` | `==728` | R | whole owners per call = 2v + R | fail | +| assemble.hosted_72R | assemble | `==72*R` (new, stronger) | `==72*504` | R | one helper owner chart per (call, helper) | fail | +| assemble.stock_helpers | assemble | `local_helpers=R` | `504` | R | physical stock term | fail | +| assemble.provider_helpers | assemble | `p['helpers']==R` | `504` | R | provider helper count | fail | +| assemble.provider_n | assemble | `p['n']==2*112+R` | `728` | R | exact columns | fail | +| assemble.width_sum | assemble | `9*R-entrance-codim` | `9*504-…` | R | Σ widths over R helpers | fail | +| assemble.width_len | assemble | `len(widths)==R` | `504` | R | one width per helper | fail | +| assemble.exact_columns | assemble | `all_exact_columns==2*112+R` | `728` | R | n = 2v+R | fail | +| assemble.dirty_columns | assemble | `dirty_helper_columns==R` | `504` | R | R helper columns restored | fail | +| assemble.local_adapters | assemble | `16*(macros+children+2*112+R+8)+64*73` | `+728+8` | R | adapter formula with n = 2v+R | fail | +| assemble.route_items | assemble | `+2*72*R+` | `+2*72*504+` | R | matches the invoice term | fail | +| assemble.parent_banks | assemble | `+9*parent_banks+`, with `parent_banks=(11704-7168)/9` asserted = 504 | `+9*504+` | R0 | parent geometry, independent of the providers | pass_identical (expected pass) | +| assemble.spot_width8 | assemble | `p['widths'][h]==8 for h in SPOT` | PR558 indices | R (helper map) | as bind | fail | +| controls.swap_spot | assembly_controls | `cold_helper_width_swap_h` for h in SPOT | `for h in (270,282,294,306)` | R (helper map) | at a PR558 index of width 9 the swap is the identity; strict mode then reports "Invalid admission receipt accepted" | fail (`ck:cold_helper_width_swap_294` accepted) | +| identity.start_register | generated_identity_controls | `r = 2*112 + SPOT[2]` | `r = 518` | R (helper map) | same-rank start-frame mutation of an entering helper (PR558 helper 294; image 288, register 512) | fail (StopIteration: register 518 is rank 0 here) | + +### Other changes in this package's verifier, beyond GlobalR +- In `generated_identity_controls.py`, the mutation `all_exact_columns` → 727 became `all_exact_columns − 1`. This value is 727 for R = 504, so it is bit-exact there, and it stays a wrong column count for any R. On R = 492 the old 727 was also wrong (actual 716), so it was not unsound, only literal. +- `verify.py` gains the `k_triangle` base, the `port_stage` and `frame_regroup` step types, the shadow chains, the `width_spot_helpers` ↔ HELPER-MAP check, and support for PR531's `{algorithm, sha256}` source manifest. None of these touch R constants. `verify.py`'s other `224` uses are 2v. + +### Unchanged quantities, independent of R (asserted as before) +- v = 112, h = 9, 8 centres, M = 73, live 7168. +- Deficit `73·7168 − mass = 2560`, so rank mass is 520704. +- The halving pair [5329, 4608], from maxchild 48. +- `endpoint_adapters == 224`, which is 2v. +- The gate-move indices `-224` and `112<=e[1]<224`, which are v quantities. + +### How R enters κ +κ = `outer_witness(b)`, where b is the certified complex lower endpoint of the moment problem for the global paid profile H (W = live = 7168, deficit 2560). R therefore enters κ only through H: each provider's local paid profile over its dispatched calls, plus the idle remainders the owner map leaves. The physical stock (7168 + 8 + R + 2 = 7670 here), owners_per_call (2v+R = 716), hosted residuals (72R = 35424) and the routing term enter only the strict finite inequalities. All of these get easier as R shrinks. + +## Evidence +- **R = 492.** + - `REVERT-492.json`: ALL_AGREE, 32/32. Every R site fails, both R0 controls fail, `assemble.parent_banks` passes identically, and the version label passes changed. + - Fixture spot widths at the PR558 indices: ck [7,8,9,7], jp8 [8,9,9,8]. At the map images they are [8,8,8,8] for ck, jp8 and atm3 (the bind/audit/assemble checks pass). +- **R = 504.** `REVERT-504.json`: ALL_AGREE, 32/32 pass_identical. The fixture is GlobalR's `run504b` (a full generalised run of complex-571-cold14-e1, κ 0.001626010676080313 = SPEC), run with this package's eight global files and that package's data. So the restored checks and the helper-map defaults reproduce the 504 outputs exactly. +- **Strict.** This package's strict `verify.py` passes with these files: PASS_COLD14_NATIVE_COMPLEX_AND_CITED_BIT, κ 0.00163542231500688. diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md new file mode 100644 index 0000000000..4d3964dd17 --- /dev/null +++ b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md @@ -0,0 +1,321 @@ +# Proof note: two new A-gate primitives in the `cold_end` build step (ColdBeyond, final = v3) + +v3 = per factory block a second cold low-frame end (S b.9 at U_b, no lifted partner; absorption p5 += -1/2 S.5) on top of +#604's S b.10 end, plus ColdSupply's E1 entering pair (608/610 at a hyperplane, published as #615), on jp8, ck and atm3. +Profile per word vs #604: {1:+20, 2:-4, 6:-14}; widths 9->4 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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/README.md b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/README.md new file mode 100644 index 0000000000..6ee54bcf64 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py new file mode 100644 index 0000000000..d1674e657f --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json new file mode 100644 index 0000000000..3e11cb431e --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json new file mode 100644 index 0000000000..d7794713dd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json new file mode 100644 index 0000000000..9832064f28 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json new file mode 100644 index 0000000000..46ed52dab8 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/cand.json b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/cand.json new file mode 100644 index 0000000000..b0e7db15fd --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz differ diff --git a/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json b/research/complex-t37-ends7-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-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/verify.py b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/verify.py new file mode 100644 index 0000000000..1be6686ac9 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/verify.sh b/research/complex-t37-ends7-owners/vendor/pr635/research/complex-571-cold14-st2/verify.sh new file mode 100644 index 0000000000..a36218d768 --- /dev/null +++ b/research/complex-t37-ends7-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-ends7-owners/verify.py b/research/complex-t37-ends7-owners/verify.py new file mode 100644 index 0000000000..4feb61fb5a --- /dev/null +++ b/research/complex-t37-ends7-owners/verify.py @@ -0,0 +1,93 @@ +"""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) + # 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') + ends=P/'vendor/pr1107/research/gauge44-ends7-t16' + run('ends7-manifest',ends/'verify_manifest.py') + run('rank-seven-ends',ends/'construction/ends7/verify_ends7.py','--main',view,'--pr635',pr635,'--baseline',work/'slots','--work',work/'ends7','--phases','reference') + local=work/'ends7/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_ENDS7_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) + 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)) + 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()