diff --git a/research/owned-query-ports/.gitattributes b/research/owned-query-ports/.gitattributes new file mode 100644 index 0000000000..fa1385d99a --- /dev/null +++ b/research/owned-query-ports/.gitattributes @@ -0,0 +1 @@ +* -text diff --git a/research/owned-query-ports/ATTRIBUTION.md b/research/owned-query-ports/ATTRIBUTION.md new file mode 100644 index 0000000000..3cbe3396fa --- /dev/null +++ b/research/owned-query-ports/ATTRIBUTION.md @@ -0,0 +1,11 @@ +# Attribution and overlap + +The exact Clifford compiler is retained, byte-pinned, at `research/t74-native-fast/vendor/native/new/code/borrow/vendor/clifford/clifford_exact.py`. Recipe decoding and gate-by-gate conjugation in `verify.py` are adapted from the retained `research/kappa-function-composition/complex/prune_native.py`; its source is pinned as provenance. Existing notices are unchanged. + +The graph snapshot builds on zxv's native/compiler work, Jacob Alan Sussman's mixed-target integer compiler, and Cinna Davis's padding, thinning, retiming and joint-boundary contributions. Relevant predecessors are [#4359](https://github.com/CrocSwap/integer-mult-bounds/pull/4359), [#4416](https://github.com/CrocSwap/integer-mult-bounds/pull/4416), [#4440](https://github.com/CrocSwap/integer-mult-bounds/pull/4440), [#4441](https://github.com/CrocSwap/integer-mult-bounds/pull/4441), [#4447](https://github.com/CrocSwap/integer-mult-bounds/pull/4447) and [#4470](https://github.com/CrocSwap/integer-mult-bounds/pull/4470). #4470 is pinned at `b9a13c1673e0e9697de410de16e8bbf3207a7363`; canonical main for packaging is `2a13eb1827784206202db90e5dc8327cf8a250db`. These contributions are predecessors, not new work here. + +The sufficient owned-copy/transform/ADD/erase identity is consistent with the inherited owned-query contract. Rank-one factorization and metric α-expansion are established concepts; no priority claim is made. The addition here is the explicit split-port cost model, complete local costs, primitive checks, portable discovery sources and scoped frozen evidence. It does not improve #4470's κ or independently accept its whole conditional construction. + +Source-only discovery also consulted the shared MathProof DAG and `BinarySymplecticGroupOrder` and `Problem18CharTwoSymplecticBasis20260929` Lean sources. Those are retrieval precedents, not imported proof dependencies or fresh kernel audits. The authoritative DAG was not changed. + +Prepared for Dugongue with substantial OpenAI assistance in mathematics, software, discovery and review. No independent human or proof-assistant acceptance is claimed. New work is Apache-2.0, with retained predecessor credit and notices. diff --git a/research/owned-query-ports/FRAMES.json b/research/owned-query-ports/FRAMES.json new file mode 100644 index 0000000000..9cd5d7027f --- /dev/null +++ b/research/owned-query-ports/FRAMES.json @@ -0,0 +1,7975 @@ +[ + [], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ], + [ + 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 + ], + [ + 51 + ], + [ + 30 + ], + [ + 42 + ], + [ + 7 + ], + [ + 82, + 42 + ], + [ + 75, + 42 + ], + [ + 25 + ], + [ + 85, + 42 + ], + [ + 76, + 42 + ], + [ + 82, + 7 + ], + [ + 75, + 7 + ], + [ + 75, + 25 + ], + [ + 76, + 25 + ], + [ + 120, + 7 + ], + [ + 97, + 7 + ], + [ + 102, + 25 + ], + [ + 97, + 25 + ], + [ + 414, + 51 + ], + [ + 102 + ], + [ + 85 + ], + [ + 459 + ], + [ + 75 + ], + [ + 120 + ], + [ + 45 + ], + [ + 82, + 45 + ], + [ + 76, + 45 + ], + [ + 429, + 30 + ], + [ + 264, + 136, + 85, + 51 + ], + [ + 256, + 128, + 64, + 32, + 16, + 9, + 4, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ], + [ + 256, + 128, + 64, + 33, + 16, + 8, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 128, + 64, + 32, + 16, + 9, + 5, + 2 + ], + [ + 256, + 128, + 64, + 32, + 17, + 8, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 16, + 8, + 5, + 2 + ], + [ + 256, + 128, + 65, + 32, + 16, + 8, + 5, + 2 + ], + [ + 256, + 129, + 64, + 32, + 16, + 8, + 5, + 2 + ], + [ + 257, + 128, + 64, + 32, + 16, + 8, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 16, + 9, + 4, + 2 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 4, + 2 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 4, + 2 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 4, + 2 + ], + [ + 256, + 128, + 65, + 32, + 17, + 8, + 4, + 2 + ], + [ + 256, + 129, + 64, + 32, + 17, + 8, + 4, + 2 + ], + [ + 257, + 128, + 64, + 32, + 17, + 8, + 4, + 2 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 4, + 2 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 129, + 65, + 32, + 16, + 8, + 4, + 2 + ], + [ + 257, + 128, + 65, + 32, + 16, + 8, + 4, + 2 + ], + [ + 257, + 129, + 64, + 32, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 18, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 66, + 32, + 16, + 8, + 6, + 1 + ], + [ + 256, + 130, + 64, + 32, + 16, + 8, + 6, + 1 + ], + [ + 258, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ], + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ], + [ + 258, + 128, + 64, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ], + [ + 256, + 130, + 64, + 32, + 18, + 8, + 4, + 1 + ], + [ + 258, + 128, + 64, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 130, + 66, + 32, + 16, + 8, + 4, + 1 + ], + [ + 258, + 128, + 66, + 32, + 16, + 8, + 4, + 1 + ], + [ + 258, + 130, + 64, + 32, + 16, + 8, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 20, + 12, + 2, + 1 + ], + [ + 256, + 128, + 64, + 36, + 16, + 12, + 2, + 1 + ], + [ + 256, + 132, + 64, + 32, + 16, + 12, + 2, + 1 + ], + [ + 260, + 128, + 64, + 32, + 16, + 12, + 2, + 1 + ], + [ + 256, + 128, + 68, + 32, + 20, + 8, + 2, + 1 + ], + [ + 256, + 132, + 64, + 32, + 20, + 8, + 2, + 1 + ], + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 68, + 36, + 16, + 8, + 2, + 1 + ], + [ + 256, + 132, + 64, + 36, + 16, + 8, + 2, + 1 + ], + [ + 260, + 128, + 64, + 36, + 16, + 8, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ], + [ + 256, + 128, + 64, + 40, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 72, + 32, + 24, + 4, + 2, + 1 + ], + [ + 256, + 136, + 64, + 32, + 24, + 4, + 2, + 1 + ], + [ + 264, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 72, + 40, + 16, + 4, + 2, + 1 + ], + [ + 256, + 136, + 64, + 40, + 16, + 4, + 2, + 1 + ], + [ + 264, + 128, + 64, + 40, + 16, + 4, + 2, + 1 + ], + [ + 256, + 136, + 72, + 32, + 16, + 4, + 2, + 1 + ], + [ + 264, + 128, + 72, + 32, + 16, + 4, + 2, + 1 + ], + [ + 264, + 136, + 64, + 32, + 16, + 4, + 2, + 1 + ], + [ + 256, + 128, + 80, + 48, + 8, + 4, + 2, + 1 + ], + [ + 256, + 144, + 64, + 48, + 8, + 4, + 2, + 1 + ], + [ + 272, + 128, + 64, + 48, + 8, + 4, + 2, + 1 + ], + [ + 256, + 144, + 80, + 32, + 8, + 4, + 2, + 1 + ], + [ + 272, + 128, + 80, + 32, + 8, + 4, + 2, + 1 + ], + [ + 272, + 144, + 64, + 32, + 8, + 4, + 2, + 1 + ], + [ + 256, + 160, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 288, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 288, + 160, + 64, + 16, + 8, + 4, + 2, + 1 + ], + [ + 320, + 192, + 32, + 16, + 8, + 4, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ], + [ + 258, + 130, + 66, + 34, + 18, + 10, + 4, + 1 + ], + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ], + [ + 258, + 130, + 66, + 34, + 16, + 10, + 6, + 1 + ], + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ], + [ + 258, + 130, + 64, + 34, + 18, + 10, + 6, + 1 + ], + [ + 258, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 130, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 33, + 17, + 9, + 4, + 2 + ], + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ], + [ + 257, + 129, + 65, + 33, + 16, + 9, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ], + [ + 257, + 129, + 64, + 33, + 17, + 9, + 5, + 2 + ], + [ + 257, + 128, + 65, + 33, + 17, + 9, + 5, + 2 + ], + [ + 256, + 129, + 65, + 33, + 17, + 9, + 5, + 2 + ], + [ + 257, + 129, + 65, + 33, + 17, + 8, + 4, + 3 + ], + [ + 257, + 129, + 65, + 33, + 16, + 9, + 4, + 3 + ], + [ + 257, + 129, + 65, + 32, + 17, + 9, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 17, + 9, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 17, + 9, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ], + [ + 257, + 129, + 65, + 33, + 16, + 8, + 5, + 3 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ], + [ + 257, + 129, + 64, + 33, + 17, + 8, + 5, + 3 + ], + [ + 257, + 128, + 65, + 33, + 17, + 8, + 5, + 3 + ], + [ + 256, + 129, + 65, + 33, + 17, + 8, + 5, + 3 + ], + [ + 257, + 129, + 65, + 32, + 16, + 9, + 5, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 129, + 64, + 32, + 17, + 9, + 5, + 3 + ], + [ + 257, + 128, + 65, + 32, + 17, + 9, + 5, + 3 + ], + [ + 256, + 129, + 65, + 32, + 17, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 35, + 16, + 11, + 5 + ], + [ + 388, + 74, + 40, + 26, + 1 + ], + [ + 388, + 67, + 33, + 18, + 8 + ], + [ + 273, + 145, + 85, + 51, + 8 + ], + [ + 256, + 128, + 64, + 34, + 17, + 11, + 4 + ], + [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + [ + 385, + 66, + 36, + 22, + 8 + ], + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 384, + 74, + 44, + 30, + 1 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ], + [ + 258, + 130, + 67, + 22, + 8 + ], + [ + 266, + 138, + 75, + 47, + 30 + ], + [ + 256, + 128, + 65, + 32, + 17, + 8, + 5, + 2 + ], + [ + 266, + 138, + 74, + 30, + 1 + ], + [ + 256, + 128, + 64, + 38, + 20, + 10, + 1 + ], + [ + 257, + 161, + 70, + 19, + 13 + ], + [ + 416, + 70, + 18, + 12, + 1 + ], + [ + 262, + 134, + 102, + 22, + 8 + ], + [ + 262, + 134, + 102, + 30, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 257, + 137, + 67, + 37, + 22 + ], + [ + 392, + 67, + 35, + 16, + 6 + ], + [ + 259, + 131, + 75, + 42, + 25 + ], + [ + 259, + 131, + 75, + 51, + 7 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ], + [ + 256, + 128, + 64, + 32, + 19, + 11, + 6 + ], + [ + 256, + 128, + 64, + 37, + 21, + 8, + 3 + ], + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ], + [ + 256, + 128, + 66, + 36, + 22, + 8, + 1 + ], + [ + 256, + 128, + 65, + 36, + 20, + 9, + 3 + ], + [ + 256, + 128, + 65, + 37, + 20, + 8, + 2 + ], + [ + 256, + 128, + 72, + 44, + 28, + 2, + 1 + ], + [ + 256, + 128, + 70, + 32, + 18, + 12, + 1 + ], + [ + 256, + 128, + 65, + 33, + 18, + 10, + 6 + ], + [ + 261, + 133, + 85, + 45 + ], + [ + 320, + 192, + 45, + 30 + ], + [ + 423, + 65, + 20, + 10 + ], + [ + 400, + 69, + 35, + 14 + ], + [ + 426, + 96, + 24, + 6, + 1 + ], + [ + 385, + 70, + 33, + 18, + 12 + ], + [ + 288, + 160, + 75, + 25, + 7 + ], + [ + 388, + 75, + 41, + 26 + ], + [ + 407, + 66, + 36, + 9 + ], + [ + 273, + 145, + 85, + 51 + ], + [ + 455, + 33, + 18, + 12 + ], + [ + 385, + 74, + 44, + 30 + ], + [ + 266, + 138, + 75, + 30 + ], + [ + 416, + 70, + 19, + 13 + ], + [ + 258, + 130, + 85, + 45 + ], + [ + 262, + 134, + 102, + 30 + ], + [ + 392, + 67, + 37, + 22 + ], + [ + 259, + 131, + 75, + 51 + ], + [ + 448, + 38, + 21, + 11 + ], + [ + 413, + 72, + 48, + 3 + ], + [ + 427, + 96, + 24, + 6 + ], + [ + 258, + 130, + 84, + 44, + 1 + ], + [ + 409, + 80, + 40, + 5, + 2 + ], + [ + 258, + 130, + 74, + 45, + 31 + ], + [ + 265, + 137, + 75, + 45 + ], + [ + 80, + 40, + 5, + 2 + ], + [ + 144, + 75, + 42, + 7 + ], + [ + 386, + 73, + 45, + 28 + ], + [ + 391, + 68, + 34, + 17 + ], + [ + 268, + 140, + 45, + 30 + ], + [ + 288, + 160, + 75, + 25 + ], + [ + 262, + 193, + 33, + 18, + 12 + ], + [ + 260, + 132, + 75, + 42, + 25 + ], + [ + 260, + 132, + 75, + 51 + ], + [ + 388, + 81, + 48, + 3 + ], + [ + 391, + 72, + 41, + 26 + ], + [ + 273, + 136, + 76, + 51 + ], + [ + 264, + 145, + 76, + 51 + ], + [ + 391, + 76, + 44, + 30 + ], + [ + 288, + 138, + 97, + 30 + ], + [ + 259, + 148, + 66, + 36, + 9 + ], + [ + 406, + 66, + 36, + 8, + 1 + ], + [ + 385, + 66, + 36, + 22, + 9 + ], + [ + 257, + 129, + 76, + 42, + 30 + ], + [ + 258, + 130, + 85, + 37, + 8 + ], + [ + 258, + 130, + 67, + 45, + 22 + ], + [ + 276, + 131, + 66, + 36, + 9 + ], + [ + 478, + 45 + ], + [ + 45, + 21 + ], + [ + 38, + 11 + ], + [ + 51, + 11 + ], + [ + 21, + 11 + ], + [ + 448, + 45 + ], + [ + 448, + 51 + ], + [ + 448, + 30 + ], + [ + 493, + 30 + ], + [ + 478, + 51 + ], + [ + 38, + 30 + ], + [ + 38, + 21 + ], + [ + 459, + 38, + 21 + ], + [ + 448, + 51, + 11 + ], + [ + 448, + 38, + 30 + ], + [ + 486, + 21, + 11 + ], + [ + 459, + 38, + 30 + ], + [ + 448, + 21, + 11 + ], + [ + 448, + 38, + 21 + ], + [ + 469, + 51, + 11 + ], + [ + 261, + 45 + ], + [ + 133, + 45 + ], + [ + 208, + 45 + ], + [ + 168, + 120 + ], + [ + 133, + 85 + ], + [ + 336, + 45 + ], + [ + 296, + 120 + ], + [ + 261, + 85 + ], + [ + 296, + 85 + ], + [ + 261, + 120 + ], + [ + 168, + 85 + ], + [ + 133, + 120 + ], + [ + 261, + 133, + 120 + ], + [ + 296, + 168, + 120 + ], + [ + 261, + 168, + 85 + ], + [ + 296, + 133, + 85 + ], + [ + 296, + 168, + 85 + ], + [ + 261, + 133, + 85 + ], + [ + 296, + 133, + 120 + ], + [ + 261, + 168, + 120 + ], + [ + 69, + 45 + ], + [ + 475, + 45 + ], + [ + 400, + 45 + ], + [ + 400, + 75 + ], + [ + 400, + 102 + ], + [ + 35, + 14 + ], + [ + 75, + 35 + ], + [ + 69, + 35 + ], + [ + 102, + 14 + ], + [ + 69, + 14 + ], + [ + 445, + 102 + ], + [ + 445, + 75 + ], + [ + 435, + 69, + 14 + ], + [ + 400, + 75, + 35 + ], + [ + 414, + 69, + 35 + ], + [ + 400, + 102, + 14 + ], + [ + 435, + 102, + 14 + ], + [ + 400, + 69, + 35 + ], + [ + 414, + 75, + 35 + ], + [ + 400, + 69, + 14 + ], + [ + 81, + 51 + ], + [ + 463, + 51 + ], + [ + 41, + 26 + ], + [ + 81, + 41 + ], + [ + 75, + 41 + ], + [ + 388, + 51 + ], + [ + 439, + 120 + ], + [ + 439, + 75 + ], + [ + 388, + 75 + ], + [ + 388, + 120 + ], + [ + 75, + 26 + ], + [ + 98, + 26 + ], + [ + 388, + 98, + 26 + ], + [ + 414, + 81, + 41 + ], + [ + 429, + 75, + 26 + ], + [ + 388, + 75, + 41 + ], + [ + 388, + 75, + 26 + ], + [ + 414, + 75, + 41 + ], + [ + 429, + 98, + 26 + ], + [ + 388, + 81, + 41 + ], + [ + 273, + 51 + ], + [ + 145, + 51 + ], + [ + 324, + 51 + ], + [ + 290, + 85 + ], + [ + 273, + 102 + ], + [ + 196, + 51 + ], + [ + 145, + 85 + ], + [ + 162, + 102 + ], + [ + 145, + 102 + ], + [ + 162, + 85 + ], + [ + 290, + 102 + ], + [ + 273, + 85 + ], + [ + 273, + 162, + 85 + ], + [ + 290, + 145, + 85 + ], + [ + 290, + 162, + 102 + ], + [ + 273, + 145, + 102 + ], + [ + 290, + 145, + 102 + ], + [ + 273, + 162, + 102 + ], + [ + 273, + 145, + 85 + ], + [ + 290, + 162, + 85 + ], + [ + 385, + 30 + ], + [ + 44, + 30 + ], + [ + 487, + 30 + ], + [ + 415, + 120 + ], + [ + 385, + 102 + ], + [ + 74, + 30 + ], + [ + 84, + 44 + ], + [ + 84, + 50 + ], + [ + 74, + 44 + ], + [ + 74, + 50 + ], + [ + 415, + 102 + ], + [ + 385, + 120 + ], + [ + 385, + 74, + 50 + ], + [ + 415, + 84, + 44 + ], + [ + 415, + 84, + 50 + ], + [ + 385, + 74, + 44 + ], + [ + 415, + 74, + 44 + ], + [ + 385, + 84, + 50 + ], + [ + 385, + 84, + 44 + ], + [ + 415, + 74, + 50 + ], + [ + 321, + 30 + ], + [ + 193, + 30 + ], + [ + 138, + 30 + ], + [ + 148, + 85 + ], + [ + 148, + 75 + ], + [ + 266, + 30 + ], + [ + 266, + 85 + ], + [ + 266, + 75 + ], + [ + 276, + 75 + ], + [ + 276, + 85 + ], + [ + 138, + 75 + ], + [ + 138, + 85 + ], + [ + 276, + 138, + 85 + ], + [ + 266, + 148, + 85 + ], + [ + 266, + 138, + 75 + ], + [ + 276, + 148, + 75 + ], + [ + 276, + 138, + 75 + ], + [ + 266, + 148, + 75 + ], + [ + 266, + 138, + 85 + ], + [ + 276, + 148, + 85 + ], + [ + 70, + 30 + ], + [ + 491, + 30 + ], + [ + 19, + 13 + ], + [ + 85, + 13 + ], + [ + 70, + 13 + ], + [ + 416, + 30 + ], + [ + 446, + 85 + ], + [ + 446, + 75 + ], + [ + 416, + 75 + ], + [ + 416, + 85 + ], + [ + 75, + 19 + ], + [ + 70, + 19 + ], + [ + 416, + 70, + 19 + ], + [ + 435, + 85, + 13 + ], + [ + 429, + 75, + 19 + ], + [ + 416, + 70, + 13 + ], + [ + 416, + 75, + 19 + ], + [ + 435, + 70, + 13 + ], + [ + 429, + 70, + 19 + ], + [ + 416, + 85, + 13 + ], + [ + 134, + 30 + ], + [ + 262, + 30 + ], + [ + 352, + 30 + ], + [ + 262, + 120 + ], + [ + 280, + 102 + ], + [ + 224, + 30 + ], + [ + 152, + 120 + ], + [ + 134, + 102 + ], + [ + 152, + 102 + ], + [ + 134, + 120 + ], + [ + 262, + 102 + ], + [ + 280, + 120 + ], + [ + 280, + 134, + 120 + ], + [ + 262, + 152, + 120 + ], + [ + 262, + 134, + 102 + ], + [ + 280, + 152, + 102 + ], + [ + 262, + 152, + 102 + ], + [ + 280, + 134, + 102 + ], + [ + 280, + 152, + 120 + ], + [ + 262, + 134, + 120 + ], + [ + 392, + 51 + ], + [ + 477, + 51 + ], + [ + 443, + 85 + ], + [ + 392, + 102 + ], + [ + 67, + 51 + ], + [ + 85, + 37 + ], + [ + 102, + 22 + ], + [ + 67, + 37 + ], + [ + 67, + 22 + ], + [ + 443, + 102 + ], + [ + 392, + 85 + ], + [ + 37, + 22 + ], + [ + 392, + 67, + 22 + ], + [ + 414, + 85, + 37 + ], + [ + 429, + 102, + 22 + ], + [ + 392, + 67, + 37 + ], + [ + 414, + 67, + 37 + ], + [ + 392, + 102, + 22 + ], + [ + 392, + 85, + 37 + ], + [ + 429, + 67, + 22 + ], + [ + 328, + 51 + ], + [ + 200, + 51 + ], + [ + 131, + 51 + ], + [ + 176, + 120 + ], + [ + 176, + 75 + ], + [ + 259, + 51 + ], + [ + 259, + 120 + ], + [ + 259, + 75 + ], + [ + 304, + 75 + ], + [ + 304, + 120 + ], + [ + 131, + 75 + ], + [ + 131, + 120 + ], + [ + 304, + 131, + 120 + ], + [ + 259, + 176, + 120 + ], + [ + 259, + 131, + 75 + ], + [ + 304, + 176, + 75 + ], + [ + 304, + 131, + 75 + ], + [ + 259, + 176, + 75 + ], + [ + 259, + 131, + 120 + ], + [ + 304, + 176, + 120 + ], + [ + 322, + 45 + ], + [ + 194, + 45 + ], + [ + 265, + 45 + ], + [ + 265, + 75 + ], + [ + 265, + 102 + ], + [ + 137, + 45 + ], + [ + 137, + 75 + ], + [ + 137, + 102 + ], + [ + 164, + 102 + ], + [ + 164, + 75 + ], + [ + 292, + 102 + ], + [ + 292, + 75 + ], + [ + 292, + 164, + 75 + ], + [ + 265, + 137, + 75 + ], + [ + 292, + 137, + 102 + ], + [ + 265, + 164, + 102 + ], + [ + 292, + 164, + 102 + ], + [ + 265, + 137, + 102 + ], + [ + 292, + 137, + 75 + ], + [ + 265, + 164, + 75 + ], + [ + 45, + 28 + ], + [ + 386, + 45 + ], + [ + 73, + 45 + ], + [ + 73, + 49 + ], + [ + 73, + 28 + ], + [ + 471, + 45 + ], + [ + 386, + 120 + ], + [ + 431, + 85 + ], + [ + 386, + 85 + ], + [ + 431, + 120 + ], + [ + 85, + 49 + ], + [ + 100, + 28 + ], + [ + 431, + 100, + 28 + ], + [ + 386, + 73, + 49 + ], + [ + 414, + 85, + 49 + ], + [ + 386, + 73, + 28 + ], + [ + 386, + 85, + 49 + ], + [ + 431, + 73, + 28 + ], + [ + 386, + 100, + 28 + ], + [ + 414, + 73, + 49 + ], + [ + 140, + 45 + ], + [ + 274, + 45 + ], + [ + 146, + 45 + ], + [ + 146, + 51 + ], + [ + 140, + 30 + ], + [ + 268, + 45 + ], + [ + 274, + 51 + ], + [ + 289, + 30 + ], + [ + 268, + 30 + ], + [ + 268, + 51 + ], + [ + 161, + 30 + ], + [ + 140, + 51 + ], + [ + 268, + 140, + 51 + ], + [ + 274, + 146, + 51 + ], + [ + 289, + 161, + 30 + ], + [ + 268, + 140, + 30 + ], + [ + 268, + 161, + 30 + ], + [ + 289, + 140, + 30 + ], + [ + 274, + 140, + 51 + ], + [ + 268, + 146, + 51 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 74, + 40, + 26, + 4, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 34, + 17, + 10, + 5 + ], + [ + 256, + 128, + 65, + 35, + 16, + 10, + 4 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 34, + 16, + 14, + 1 + ], + [ + 486, + 19, + 13 + ], + [ + 416, + 70, + 30 + ], + [ + 352, + 134, + 30 + ], + [ + 385, + 74, + 30 + ], + [ + 459, + 37, + 22 + ], + [ + 392, + 67, + 51 + ], + [ + 328, + 131, + 51 + ], + [ + 259, + 200, + 51 + ], + [ + 266, + 193, + 30 + ], + [ + 448, + 38, + 11 + ], + [ + 336, + 192, + 45 + ], + [ + 208, + 35, + 14 + ], + [ + 256, + 144, + 80, + 45 + ], + [ + 448, + 35, + 11, + 5 + ], + [ + 336, + 208, + 35, + 14 + ], + [ + 336, + 208, + 35, + 11, + 5 + ], + [ + 400, + 80, + 35, + 11, + 5 + ], + [ + 256, + 128, + 64, + 45, + 16 + ], + [ + 256, + 128, + 64, + 35, + 16, + 14 + ], + [ + 320, + 192, + 35, + 16, + 11, + 5 + ], + [ + 272, + 128, + 80, + 35, + 11, + 5 + ], + [ + 256, + 144, + 80, + 35, + 11, + 5 + ], + [ + 256, + 128, + 64, + 33, + 16, + 11, + 7 + ], + [ + 272, + 144, + 64, + 33, + 9, + 5, + 2 + ], + [ + 469, + 38, + 11 + ], + [ + 137, + 73, + 45 + ], + [ + 265, + 222, + 45 + ], + [ + 263, + 137, + 73, + 45, + 25 + ], + [ + 453, + 36, + 16, + 9, + 2 + ], + [ + 265, + 137, + 78, + 45, + 25 + ], + [ + 258, + 130, + 69, + 38, + 18, + 11 + ], + [ + 389, + 64, + 36, + 16, + 9, + 2 + ], + [ + 263, + 135, + 71, + 35, + 23, + 14 + ], + [ + 256, + 128, + 64, + 35, + 16, + 9, + 7 + ], + [ + 258, + 130, + 66, + 33, + 18, + 11, + 7 + ], + [ + 256, + 133, + 64, + 36, + 16, + 9, + 2 + ], + [ + 261, + 128, + 64, + 36, + 16, + 9, + 2 + ], + [ + 258, + 130, + 66, + 35, + 18, + 11, + 5 + ], + [ + 256, + 128, + 69, + 36, + 16, + 9, + 2 + ], + [ + 261, + 208, + 45 + ], + [ + 146, + 80, + 45 + ], + [ + 265, + 40, + 5 + ], + [ + 261, + 144, + 80, + 45, + 2 + ], + [ + 261, + 130, + 82, + 36, + 9 + ], + [ + 265, + 144, + 82, + 40, + 5 + ], + [ + 265, + 130, + 64, + 40, + 18, + 5 + ], + [ + 261, + 130, + 66, + 36, + 16, + 9 + ], + [ + 261, + 144, + 80, + 33, + 12, + 2 + ], + [ + 262, + 224, + 30 + ], + [ + 256, + 144, + 80, + 33, + 9, + 5, + 2 + ], + [ + 265, + 128, + 64, + 40, + 16, + 5, + 2 + ], + [ + 256, + 130, + 66, + 33, + 16, + 9, + 5 + ], + [ + 261, + 128, + 64, + 33, + 16, + 12, + 2 + ], + [ + 256, + 130, + 64, + 33, + 18, + 9, + 5 + ], + [ + 400, + 76, + 45 + ], + [ + 400, + 69, + 36, + 9 + ], + [ + 272, + 146, + 45 + ], + [ + 274, + 73, + 45 + ], + [ + 272, + 146, + 69, + 36, + 9 + ], + [ + 274, + 130, + 69, + 36, + 9 + ], + [ + 274, + 144, + 73, + 40, + 5 + ], + [ + 256, + 130, + 73, + 40, + 18, + 5 + ], + [ + 258, + 130, + 69, + 36, + 16, + 9 + ], + [ + 272, + 146, + 64, + 33, + 9, + 5 + ], + [ + 256, + 128, + 73, + 40, + 16, + 5, + 2 + ], + [ + 258, + 130, + 64, + 33, + 16, + 9, + 5 + ], + [ + 258, + 128, + 64, + 33, + 18, + 9, + 5 + ], + [ + 407, + 76, + 45 + ], + [ + 407, + 66, + 35, + 14 + ], + [ + 347, + 140, + 45 + ], + [ + 268, + 45, + 28 + ], + [ + 279, + 130, + 66, + 35, + 14 + ], + [ + 258, + 149, + 66, + 35, + 14 + ], + [ + 268, + 139, + 76, + 45, + 28 + ], + [ + 256, + 135, + 64, + 33, + 16, + 12 + ], + [ + 258, + 130, + 66, + 35, + 23, + 14 + ], + [ + 261, + 130, + 66, + 35, + 18, + 14 + ], + [ + 258, + 130, + 66, + 35, + 18, + 9, + 7 + ], + [ + 256, + 128, + 64, + 33, + 21, + 12, + 2 + ], + [ + 256, + 133, + 64, + 33, + 16, + 12, + 2 + ], + [ + 459, + 45, + 21 + ], + [ + 261, + 222, + 45 + ], + [ + 133, + 69, + 45 + ], + [ + 256, + 219, + 40, + 5 + ], + [ + 398, + 69, + 45, + 21 + ], + [ + 261, + 133, + 69, + 45 + ], + [ + 261, + 133, + 69, + 45, + 21 + ], + [ + 395, + 64, + 40, + 16, + 5 + ], + [ + 256, + 128, + 91, + 40, + 5 + ], + [ + 256, + 128, + 64, + 40, + 27, + 5 + ], + [ + 261, + 133, + 69, + 38, + 21, + 11 + ], + [ + 267, + 128, + 64, + 40, + 16, + 5 + ], + [ + 256, + 139, + 64, + 40, + 16, + 5 + ], + [ + 448, + 45, + 21 + ], + [ + 194, + 45, + 28 + ], + [ + 322, + 192, + 45 + ], + [ + 258, + 194, + 40, + 25, + 5 + ], + [ + 386, + 66, + 33, + 21, + 12 + ], + [ + 320, + 192, + 45, + 2 + ], + [ + 320, + 192, + 33, + 21, + 12, + 2 + ], + [ + 386, + 66, + 33, + 16, + 9, + 5 + ], + [ + 258, + 130, + 64, + 40, + 25, + 5 + ], + [ + 256, + 128, + 64, + 40, + 25, + 5, + 2 + ], + [ + 320, + 192, + 33, + 16, + 9, + 5, + 2 + ], + [ + 258, + 128, + 66, + 33, + 16, + 9, + 5 + ], + [ + 133, + 82, + 45 + ], + [ + 258, + 133, + 82, + 45 + ], + [ + 137, + 40, + 5 + ], + [ + 274, + 80, + 45 + ], + [ + 258, + 137, + 82, + 40, + 5 + ], + [ + 258, + 133, + 66, + 45, + 16 + ], + [ + 272, + 137, + 80, + 45, + 2 + ], + [ + 272, + 133, + 80, + 33, + 12, + 2 + ], + [ + 258, + 133, + 66, + 36, + 16, + 9 + ], + [ + 258, + 137, + 64, + 40, + 18, + 5 + ], + [ + 256, + 137, + 64, + 40, + 16, + 5, + 2 + ], + [ + 272, + 128, + 80, + 33, + 9, + 5, + 2 + ], + [ + 261, + 133, + 82, + 42 + ], + [ + 258, + 130, + 82, + 42 + ], + [ + 261, + 130, + 85, + 42 + ], + [ + 258, + 133, + 85, + 42 + ], + [ + 296, + 168, + 82, + 7 + ], + [ + 258, + 130, + 82, + 7 + ], + [ + 296, + 130, + 120, + 7 + ], + [ + 258, + 168, + 120, + 7 + ], + [ + 407, + 69, + 36, + 14 + ], + [ + 400, + 66, + 35, + 9 + ], + [ + 407, + 69, + 35, + 9 + ], + [ + 400, + 66, + 36, + 14 + ], + [ + 435, + 97, + 9, + 7 + ], + [ + 400, + 66, + 35, + 7 + ], + [ + 409, + 75, + 35, + 7 + ], + [ + 400, + 66, + 9, + 7 + ], + [ + 414, + 81, + 51 + ], + [ + 388, + 41, + 26 + ], + [ + 388, + 81, + 51 + ], + [ + 463, + 41, + 26 + ], + [ + 395, + 64, + 34, + 17, + 4 + ], + [ + 388, + 68, + 34, + 17, + 11 + ], + [ + 388, + 72, + 42, + 26 + ], + [ + 413, + 81, + 41, + 3 + ], + [ + 391, + 75, + 42, + 26 + ], + [ + 388, + 72, + 41, + 3 + ], + [ + 388, + 72, + 25, + 3 + ], + [ + 391, + 75, + 41, + 25 + ], + [ + 429, + 97, + 25, + 3 + ], + [ + 388, + 72, + 41, + 25 + ], + [ + 273, + 145, + 51 + ], + [ + 324, + 196, + 51 + ], + [ + 273, + 196, + 51 + ], + [ + 324, + 145, + 51 + ], + [ + 260, + 132, + 75, + 38, + 21 + ], + [ + 260, + 132, + 64, + 51, + 11 + ], + [ + 273, + 136, + 85, + 42 + ], + [ + 264, + 145, + 85, + 42 + ], + [ + 264, + 136, + 76, + 42 + ], + [ + 273, + 145, + 76, + 42 + ], + [ + 290, + 136, + 102, + 25 + ], + [ + 264, + 162, + 102, + 25 + ], + [ + 264, + 136, + 76, + 25 + ], + [ + 290, + 162, + 76, + 25 + ], + [ + 385, + 44, + 30 + ], + [ + 429, + 74, + 30 + ], + [ + 459, + 44, + 30 + ], + [ + 385, + 65, + 38, + 20, + 10 + ], + [ + 422, + 64, + 20, + 10, + 1 + ], + [ + 321, + 193, + 30 + ], + [ + 266, + 138, + 30 + ], + [ + 321, + 138, + 30 + ], + [ + 257, + 129, + 64, + 38, + 30 + ], + [ + 257, + 129, + 102, + 21, + 11 + ], + [ + 429, + 70, + 30 + ], + [ + 416, + 19, + 13 + ], + [ + 395, + 64, + 32, + 24, + 6 + ], + [ + 416, + 96, + 19, + 11, + 6 + ], + [ + 416, + 65, + 19, + 7 + ], + [ + 435, + 82, + 10, + 7 + ], + [ + 426, + 75, + 19, + 7 + ], + [ + 416, + 65, + 10, + 7 + ], + [ + 416, + 65, + 19, + 10 + ], + [ + 423, + 70, + 20, + 13 + ], + [ + 423, + 70, + 19, + 10 + ], + [ + 416, + 65, + 20, + 13 + ], + [ + 262, + 134, + 30 + ], + [ + 352, + 224, + 30 + ], + [ + 262, + 134, + 75, + 38, + 30 + ], + [ + 288, + 160, + 64, + 21, + 11 + ], + [ + 280, + 129, + 120, + 7 + ], + [ + 257, + 152, + 120, + 7 + ], + [ + 257, + 129, + 97, + 7 + ], + [ + 280, + 152, + 97, + 7 + ], + [ + 262, + 129, + 102, + 25 + ], + [ + 257, + 134, + 102, + 25 + ], + [ + 257, + 129, + 97, + 25 + ], + [ + 262, + 134, + 97, + 25 + ], + [ + 392, + 37, + 22 + ], + [ + 414, + 67, + 51 + ], + [ + 392, + 72, + 37, + 21, + 3 + ], + [ + 405, + 64, + 48, + 8, + 3 + ], + [ + 328, + 200, + 51 + ], + [ + 259, + 131, + 51 + ], + [ + 264, + 136, + 64, + 38, + 21 + ], + [ + 259, + 131, + 85, + 51, + 11 + ], + [ + 260, + 132, + 68, + 37, + 22, + 15 + ], + [ + 264, + 136, + 72, + 41, + 26, + 7 + ], + [ + 257, + 129, + 65, + 39, + 19, + 13 + ], + [ + 267, + 139, + 75, + 43, + 25, + 7 + ], + [ + 257, + 134, + 65, + 32, + 20, + 10 + ], + [ + 288, + 138, + 96, + 24, + 6, + 1 + ], + [ + 260, + 131, + 68, + 34, + 17, + 8 + ], + [ + 264, + 145, + 72, + 48, + 4, + 3 + ], + [ + 273, + 145, + 79, + 51 + ], + [ + 324, + 196, + 41, + 26 + ], + [ + 392, + 64, + 33, + 17, + 3 + ], + [ + 264, + 136, + 51, + 4 + ], + [ + 395, + 64, + 33, + 18, + 4 + ], + [ + 271, + 145, + 81, + 51 + ], + [ + 324, + 192, + 41, + 26 + ], + [ + 259, + 132, + 76, + 33, + 18 + ], + [ + 274, + 136, + 72, + 51, + 4 + ], + [ + 260, + 131, + 76, + 33, + 18 + ], + [ + 321, + 193, + 44, + 30 + ], + [ + 266, + 138, + 103, + 30 + ], + [ + 385, + 70, + 33, + 30 + ], + [ + 257, + 129, + 32, + 30 + ], + [ + 390, + 65, + 33, + 19, + 13 + ], + [ + 321, + 192, + 44, + 30 + ], + [ + 295, + 138, + 74, + 30 + ], + [ + 262, + 193, + 33, + 30 + ], + [ + 268, + 161, + 65, + 30 + ], + [ + 257, + 134, + 64, + 33, + 30 + ], + [ + 262, + 134, + 107, + 30 + ], + [ + 352, + 224, + 19, + 13 + ], + [ + 385, + 70, + 18, + 12 + ], + [ + 257, + 129, + 70, + 32, + 30 + ], + [ + 391, + 64, + 32, + 18, + 12 + ], + [ + 299, + 134, + 70, + 30 + ], + [ + 352, + 192, + 19, + 13 + ], + [ + 262, + 193, + 18, + 12 + ], + [ + 262, + 161, + 65, + 20, + 10 + ], + [ + 288, + 134, + 97, + 18, + 12 + ], + [ + 328, + 200, + 37, + 22 + ], + [ + 259, + 131, + 93, + 51 + ], + [ + 388, + 81, + 48, + 12, + 3 + ], + [ + 264, + 136, + 81, + 48, + 4, + 3 + ], + [ + 391, + 68, + 37, + 22, + 12 + ], + [ + 328, + 192, + 37, + 22 + ], + [ + 285, + 131, + 67, + 51 + ], + [ + 273, + 132, + 64, + 51, + 12 + ], + [ + 273, + 136, + 72, + 48, + 4, + 3 + ], + [ + 260, + 145, + 64, + 51, + 12 + ], + [ + 271, + 143, + 79, + 45, + 30 + ], + [ + 320, + 192, + 41, + 26, + 4 + ], + [ + 320, + 192, + 44, + 30, + 1 + ], + [ + 266, + 138, + 74, + 45, + 30 + ], + [ + 262, + 134, + 70, + 45, + 30 + ], + [ + 320, + 192, + 32, + 19, + 13 + ], + [ + 320, + 192, + 37, + 22, + 8 + ], + [ + 259, + 131, + 67, + 45, + 30 + ], + [ + 385, + 72, + 40, + 24, + 5, + 2 + ], + [ + 408, + 80, + 40, + 4, + 2, + 1 + ], + [ + 273, + 136, + 80, + 40, + 5, + 2 + ], + [ + 264, + 145, + 80, + 40, + 5, + 2 + ], + [ + 392, + 65, + 40, + 17, + 5, + 2 + ], + [ + 401, + 80, + 32, + 8, + 5, + 2 + ], + [ + 280, + 129, + 80, + 40, + 5, + 2 + ], + [ + 257, + 152, + 80, + 40, + 5, + 2 + ], + [ + 266, + 138, + 75, + 42, + 26, + 7 + ], + [ + 272, + 144, + 72, + 41, + 4, + 3 + ], + [ + 264, + 136, + 75, + 42, + 24, + 7 + ], + [ + 272, + 144, + 74, + 42, + 6, + 1 + ], + [ + 257, + 129, + 75, + 42, + 17, + 7 + ], + [ + 272, + 144, + 67, + 34, + 8, + 7 + ], + [ + 259, + 131, + 75, + 42, + 19, + 7 + ], + [ + 272, + 144, + 65, + 32, + 10, + 7 + ], + [ + 260, + 132, + 74, + 42, + 24, + 1 + ], + [ + 258, + 130, + 75, + 42, + 25, + 6 + ], + [ + 260, + 132, + 69, + 36, + 23, + 14 + ], + [ + 260, + 132, + 66, + 35, + 16, + 9 + ], + [ + 260, + 132, + 65, + 32, + 19, + 10 + ], + [ + 260, + 132, + 70, + 39, + 20, + 13 + ], + [ + 257, + 129, + 75, + 42, + 25, + 5 + ], + [ + 260, + 132, + 73, + 40, + 25, + 2 + ], + [ + 261, + 130, + 68, + 34, + 17, + 8 + ], + [ + 258, + 133, + 68, + 34, + 17, + 8 + ], + [ + 390, + 68, + 34, + 16, + 8, + 1 + ], + [ + 385, + 66, + 34, + 17, + 8, + 6 + ], + [ + 262, + 129, + 68, + 34, + 17, + 8 + ], + [ + 257, + 134, + 68, + 34, + 17, + 8 + ], + [ + 389, + 68, + 32, + 17, + 8, + 2 + ], + [ + 386, + 65, + 34, + 17, + 8, + 5 + ], + [ + 257, + 129, + 72, + 42, + 26, + 4 + ], + [ + 257, + 129, + 76, + 41, + 29, + 3 + ], + [ + 257, + 129, + 69, + 35, + 23, + 9 + ], + [ + 257, + 129, + 66, + 36, + 16, + 14 + ], + [ + 257, + 129, + 67, + 37, + 30 + ], + [ + 257, + 129, + 102, + 22, + 8 + ], + [ + 257, + 129, + 100, + 28, + 2 + ], + [ + 257, + 129, + 73, + 47, + 30 + ], + [ + 261, + 130, + 65, + 32, + 20, + 10 + ], + [ + 258, + 133, + 65, + 32, + 20, + 10 + ], + [ + 387, + 65, + 32, + 16, + 10, + 4 + ], + [ + 388, + 65, + 32, + 20, + 9, + 3 + ], + [ + 292, + 131, + 65, + 20, + 10 + ], + [ + 259, + 164, + 65, + 20, + 10 + ], + [ + 386, + 65, + 37, + 20, + 10 + ], + [ + 421, + 65, + 20, + 8, + 2 + ], + [ + 288, + 160, + 67, + 17, + 8, + 7 + ], + [ + 258, + 130, + 75, + 34, + 25, + 7 + ], + [ + 259, + 131, + 75, + 35, + 25, + 7 + ], + [ + 288, + 160, + 66, + 16, + 9, + 7 + ], + [ + 288, + 160, + 72, + 25, + 4, + 3 + ], + [ + 265, + 137, + 75, + 41, + 25, + 7 + ], + [ + 264, + 136, + 75, + 40, + 25, + 7 + ], + [ + 288, + 160, + 73, + 25, + 5, + 2 + ], + [ + 296, + 130, + 96, + 24, + 6, + 1 + ], + [ + 258, + 168, + 96, + 24, + 6, + 1 + ], + [ + 418, + 96, + 16, + 8, + 6, + 1 + ], + [ + 392, + 66, + 34, + 24, + 6, + 1 + ], + [ + 290, + 136, + 96, + 24, + 6, + 1 + ], + [ + 264, + 162, + 96, + 24, + 6, + 1 + ], + [ + 424, + 96, + 24, + 4, + 2, + 1 + ], + [ + 386, + 72, + 40, + 24, + 6, + 1 + ], + [ + 264, + 136, + 65, + 32, + 19, + 7 + ], + [ + 258, + 130, + 82, + 51, + 10, + 7 + ], + [ + 257, + 129, + 82, + 51, + 9, + 7 + ], + [ + 264, + 136, + 66, + 35, + 16, + 7 + ], + [ + 264, + 136, + 74, + 44, + 31 + ], + [ + 264, + 136, + 84, + 50, + 1 + ], + [ + 264, + 136, + 85, + 49, + 2 + ], + [ + 264, + 136, + 73, + 47, + 28 + ], + [ + 280, + 129, + 72, + 48, + 4, + 3 + ], + [ + 257, + 152, + 72, + 48, + 4, + 3 + ], + [ + 393, + 72, + 32, + 16, + 4, + 3 + ], + [ + 400, + 65, + 48, + 9, + 4, + 3 + ], + [ + 276, + 137, + 72, + 48, + 3 + ], + [ + 265, + 148, + 72, + 48, + 3 + ], + [ + 385, + 72, + 44, + 28, + 3 + ], + [ + 412, + 72, + 48, + 2, + 1 + ], + [ + 388, + 65, + 36, + 16, + 9, + 3 + ], + [ + 387, + 66, + 32, + 16, + 9, + 4 + ], + [ + 262, + 129, + 66, + 36, + 16, + 9 + ], + [ + 257, + 134, + 66, + 36, + 16, + 9 + ], + [ + 257, + 129, + 76, + 45, + 25, + 3 + ], + [ + 258, + 130, + 72, + 41, + 25, + 4 + ], + [ + 258, + 130, + 70, + 39, + 19, + 10 + ], + [ + 258, + 130, + 65, + 32, + 20, + 13 + ], + [ + 388, + 64, + 33, + 17, + 12, + 3 + ], + [ + 387, + 64, + 33, + 18, + 8, + 4 + ], + [ + 390, + 64, + 32, + 18, + 12, + 1 + ], + [ + 257, + 134, + 64, + 33, + 18, + 12 + ], + [ + 259, + 132, + 64, + 33, + 18, + 12 + ], + [ + 260, + 131, + 64, + 33, + 18, + 12 + ], + [ + 257, + 129, + 67, + 37, + 17, + 15 + ], + [ + 257, + 129, + 68, + 34, + 22, + 8 + ], + [ + 257, + 129, + 76, + 40, + 28, + 2 + ], + [ + 257, + 129, + 73, + 42, + 27, + 5 + ], + [ + 260, + 132, + 68, + 38, + 21, + 15 + ], + [ + 256, + 128, + 75, + 34, + 17, + 4 + ], + [ + 256, + 128, + 64, + 51, + 11, + 4 + ], + [ + 260, + 132, + 64, + 34, + 17, + 11 + ], + [ + 260, + 132, + 64, + 33, + 17, + 8, + 3 + ], + [ + 256, + 128, + 67, + 34, + 17, + 8, + 4 + ], + [ + 256, + 128, + 64, + 33, + 18, + 11, + 4 + ], + [ + 260, + 132, + 68, + 37, + 21, + 12, + 3 + ], + [ + 256, + 131, + 64, + 34, + 17, + 8, + 4 + ], + [ + 267, + 128, + 64, + 34, + 17, + 4 + ], + [ + 260, + 128, + 68, + 33, + 17, + 8, + 3 + ], + [ + 256, + 132, + 68, + 34, + 17, + 11 + ], + [ + 256, + 132, + 68, + 33, + 17, + 8, + 3 + ], + [ + 259, + 128, + 64, + 34, + 17, + 8, + 4 + ], + [ + 256, + 128, + 64, + 38, + 30, + 1 + ], + [ + 257, + 129, + 64, + 38, + 20, + 10 + ], + [ + 257, + 129, + 65, + 39, + 21, + 11 + ], + [ + 256, + 128, + 102, + 20, + 10, + 1 + ], + [ + 256, + 128, + 70, + 32, + 30, + 1 + ], + [ + 257, + 129, + 64, + 32, + 18, + 10, + 6 + ], + [ + 257, + 129, + 65, + 33, + 19, + 11, + 6 + ], + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + [ + 257, + 128, + 65, + 32, + 18, + 10, + 6 + ], + [ + 256, + 129, + 65, + 38, + 20, + 10 + ], + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + [ + 294, + 128, + 64, + 20, + 10, + 1 + ], + [ + 262, + 128, + 65, + 33, + 20, + 10 + ], + [ + 256, + 129, + 65, + 32, + 18, + 10, + 6 + ], + [ + 262, + 134, + 70, + 38, + 19, + 13 + ], + [ + 256, + 128, + 75, + 32, + 24, + 6 + ], + [ + 256, + 128, + 64, + 32, + 21, + 11 + ], + [ + 288, + 160, + 64, + 19, + 11, + 6 + ], + [ + 288, + 160, + 70, + 18, + 12, + 1 + ], + [ + 256, + 128, + 74, + 32, + 24, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + [ + 256, + 138, + 64, + 32, + 24, + 6, + 1 + ], + [ + 267, + 128, + 64, + 32, + 24, + 6 + ], + [ + 288, + 128, + 96, + 18, + 10, + 6, + 1 + ], + [ + 256, + 160, + 96, + 19, + 11, + 6 + ], + [ + 256, + 161, + 96, + 18, + 10, + 6 + ], + [ + 266, + 128, + 64, + 32, + 24, + 6, + 1 + ], + [ + 256, + 128, + 64, + 38, + 21, + 8 + ], + [ + 264, + 136, + 64, + 37, + 21, + 3 + ], + [ + 259, + 131, + 67, + 37, + 22, + 11 + ], + [ + 256, + 128, + 85, + 48, + 8, + 3 + ], + [ + 256, + 128, + 81, + 48, + 8, + 4, + 3 + ], + [ + 264, + 136, + 64, + 33, + 17, + 4, + 3 + ], + [ + 259, + 131, + 67, + 34, + 17, + 11, + 7 + ], + [ + 256, + 128, + 64, + 33, + 18, + 8, + 7 + ], + [ + 264, + 128, + 72, + 33, + 17, + 4, + 3 + ], + [ + 256, + 136, + 72, + 37, + 21, + 3 + ], + [ + 256, + 145, + 64, + 48, + 8, + 4, + 3 + ], + [ + 277, + 128, + 64, + 48, + 8, + 3 + ], + [ + 273, + 128, + 64, + 48, + 8, + 4, + 3 + ], + [ + 256, + 136, + 72, + 33, + 17, + 4, + 3 + ], + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + [ + 288, + 160, + 64, + 18, + 10, + 6, + 1 + ], + [ + 256, + 160, + 96, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 17, + 8, + 7 + ], + [ + 256, + 128, + 64, + 41, + 25, + 4, + 3 + ], + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 19, + 10, + 7 + ], + [ + 259, + 131, + 67, + 33, + 18, + 11, + 7 + ], + [ + 320, + 192, + 33, + 17, + 8, + 4, + 3 + ], + [ + 320, + 192, + 32, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 33, + 18, + 11, + 7 + ], + [ + 256, + 129, + 72, + 40, + 24, + 5, + 2 + ], + [ + 256, + 152, + 80, + 40, + 4, + 2, + 1 + ], + [ + 256, + 136, + 65, + 40, + 17, + 5, + 2 + ], + [ + 256, + 145, + 80, + 32, + 8, + 5, + 2 + ], + [ + 257, + 128, + 72, + 40, + 24, + 5, + 2 + ], + [ + 280, + 128, + 80, + 40, + 4, + 2, + 1 + ], + [ + 273, + 128, + 80, + 32, + 8, + 5, + 2 + ], + [ + 264, + 128, + 65, + 40, + 17, + 5, + 2 + ], + [ + 259, + 131, + 66, + 35, + 19, + 9, + 7 + ], + [ + 272, + 144, + 65, + 32, + 9, + 4, + 3 + ], + [ + 257, + 129, + 66, + 35, + 17, + 9, + 7 + ], + [ + 272, + 144, + 66, + 34, + 8, + 6, + 1 + ], + [ + 256, + 128, + 65, + 32, + 16, + 10, + 7 + ], + [ + 256, + 128, + 72, + 41, + 16, + 4, + 3 + ], + [ + 256, + 128, + 67, + 34, + 16, + 8, + 7 + ], + [ + 256, + 128, + 74, + 42, + 16, + 6, + 1 + ], + [ + 256, + 128, + 74, + 42, + 24, + 4, + 1 + ], + [ + 256, + 128, + 73, + 40, + 25, + 4, + 2 + ], + [ + 256, + 128, + 65, + 32, + 19, + 10, + 4 + ], + [ + 256, + 128, + 66, + 35, + 16, + 9, + 4 + ], + [ + 260, + 132, + 72, + 40, + 24, + 2, + 1 + ], + [ + 257, + 129, + 72, + 41, + 25, + 5, + 3 + ], + [ + 260, + 132, + 69, + 36, + 20, + 13, + 3 + ], + [ + 260, + 132, + 65, + 32, + 16, + 9, + 3 + ], + [ + 261, + 128, + 68, + 32, + 17, + 8, + 2 + ], + [ + 258, + 128, + 65, + 34, + 17, + 8, + 5 + ], + [ + 262, + 128, + 68, + 34, + 16, + 8, + 1 + ], + [ + 257, + 128, + 66, + 34, + 17, + 8, + 6 + ], + [ + 256, + 130, + 65, + 34, + 17, + 8, + 5 + ], + [ + 256, + 133, + 68, + 32, + 17, + 8, + 2 + ], + [ + 256, + 134, + 68, + 34, + 16, + 8, + 1 + ], + [ + 256, + 129, + 66, + 34, + 17, + 8, + 6 + ], + [ + 257, + 129, + 72, + 40, + 24, + 4, + 2 + ], + [ + 257, + 129, + 73, + 41, + 24, + 5, + 3 + ], + [ + 257, + 129, + 67, + 35, + 17, + 9, + 6 + ], + [ + 257, + 129, + 66, + 34, + 16, + 8, + 6 + ], + [ + 256, + 128, + 72, + 42, + 26, + 4, + 1 + ], + [ + 256, + 128, + 76, + 40, + 28, + 2, + 1 + ], + [ + 256, + 128, + 68, + 34, + 22, + 8, + 1 + ], + [ + 256, + 128, + 66, + 36, + 16, + 14, + 1 + ], + [ + 256, + 130, + 65, + 32, + 17, + 10, + 5 + ], + [ + 256, + 133, + 65, + 32, + 20, + 8, + 2 + ], + [ + 256, + 131, + 65, + 32, + 16, + 10, + 4 + ], + [ + 256, + 132, + 65, + 32, + 20, + 9, + 3 + ], + [ + 261, + 128, + 65, + 32, + 20, + 8, + 2 + ], + [ + 258, + 128, + 65, + 32, + 17, + 10, + 5 + ], + [ + 259, + 128, + 65, + 32, + 16, + 10, + 4 + ], + [ + 260, + 128, + 65, + 32, + 20, + 9, + 3 + ], + [ + 256, + 128, + 67, + 32, + 17, + 8, + 7 + ], + [ + 256, + 128, + 73, + 32, + 25, + 5, + 2 + ], + [ + 256, + 128, + 72, + 32, + 25, + 4, + 3 + ], + [ + 256, + 128, + 66, + 32, + 16, + 9, + 7 + ], + [ + 288, + 160, + 65, + 17, + 8, + 5, + 2 + ], + [ + 258, + 130, + 65, + 34, + 19, + 10, + 7 + ], + [ + 259, + 131, + 65, + 35, + 19, + 10, + 7 + ], + [ + 288, + 160, + 65, + 16, + 9, + 4, + 3 + ], + [ + 296, + 128, + 96, + 24, + 4, + 2, + 1 + ], + [ + 258, + 128, + 72, + 40, + 24, + 6, + 1 + ], + [ + 290, + 128, + 96, + 16, + 8, + 6, + 1 + ], + [ + 264, + 128, + 66, + 34, + 24, + 6, + 1 + ], + [ + 256, + 130, + 72, + 40, + 24, + 6, + 1 + ], + [ + 256, + 168, + 96, + 24, + 4, + 2, + 1 + ], + [ + 256, + 162, + 96, + 16, + 8, + 6, + 1 + ], + [ + 256, + 136, + 66, + 34, + 24, + 6, + 1 + ], + [ + 264, + 136, + 65, + 32, + 17, + 5, + 2 + ], + [ + 258, + 130, + 67, + 34, + 17, + 10, + 7 + ], + [ + 257, + 129, + 67, + 34, + 17, + 9, + 7 + ], + [ + 264, + 136, + 66, + 34, + 16, + 6, + 1 + ], + [ + 256, + 128, + 65, + 32, + 19, + 8, + 7 + ], + [ + 256, + 128, + 80, + 49, + 8, + 5, + 2 + ], + [ + 256, + 128, + 82, + 50, + 8, + 6, + 1 + ], + [ + 256, + 128, + 66, + 35, + 16, + 8, + 7 + ], + [ + 256, + 129, + 72, + 40, + 24, + 4, + 3 + ], + [ + 256, + 152, + 72, + 48, + 4, + 2, + 1 + ], + [ + 256, + 137, + 72, + 32, + 16, + 4, + 3 + ], + [ + 256, + 144, + 65, + 48, + 9, + 4, + 3 + ], + [ + 280, + 128, + 72, + 48, + 4, + 2, + 1 + ], + [ + 257, + 128, + 72, + 40, + 24, + 4, + 3 + ], + [ + 265, + 128, + 72, + 32, + 16, + 4, + 3 + ], + [ + 272, + 128, + 65, + 48, + 9, + 4, + 3 + ], + [ + 260, + 128, + 65, + 36, + 16, + 9, + 3 + ], + [ + 259, + 128, + 66, + 32, + 16, + 9, + 4 + ], + [ + 262, + 128, + 66, + 36, + 16, + 8, + 1 + ], + [ + 257, + 128, + 66, + 34, + 16, + 9, + 6 + ], + [ + 256, + 132, + 65, + 36, + 16, + 9, + 3 + ], + [ + 256, + 131, + 66, + 32, + 16, + 9, + 4 + ], + [ + 256, + 129, + 66, + 34, + 16, + 9, + 6 + ], + [ + 256, + 134, + 66, + 36, + 16, + 8, + 1 + ], + [ + 256, + 128, + 76, + 44, + 24, + 2, + 1 + ], + [ + 256, + 128, + 72, + 41, + 25, + 4, + 2 + ], + [ + 256, + 128, + 68, + 37, + 17, + 8, + 2 + ], + [ + 256, + 128, + 65, + 32, + 20, + 13, + 2 + ], + [ + 257, + 129, + 73, + 40, + 25, + 5, + 3 + ], + [ + 258, + 130, + 72, + 40, + 24, + 4, + 1 + ], + [ + 258, + 130, + 67, + 34, + 19, + 10, + 5 + ], + [ + 258, + 130, + 65, + 32, + 17, + 8, + 5 + ], + [ + 256, + 132, + 64, + 33, + 17, + 12, + 3 + ], + [ + 256, + 131, + 64, + 33, + 18, + 8, + 4 + ], + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 256, + 134, + 64, + 32, + 18, + 12, + 1 + ], + [ + 260, + 128, + 64, + 33, + 17, + 12, + 3 + ], + [ + 259, + 128, + 64, + 33, + 18, + 8, + 4 + ], + [ + 257, + 128, + 64, + 33, + 18, + 10, + 6 + ], + [ + 262, + 128, + 64, + 32, + 18, + 12, + 1 + ], + [ + 256, + 128, + 64 + ], + [ + 256, + 128, + 66 + ], + [ + 256, + 128, + 65 + ], + [ + 256, + 128, + 68 + ], + [ + 168, + 336, + 45 + ], + [ + 7, + 51, + 82, + 136, + 264 + ], + [ + 7, + 42, + 80, + 144, + 256 + ], + [ + 2, + 5, + 9, + 33, + 208, + 336 + ], + [ + 2, + 5, + 9, + 33, + 80, + 400 + ], + [ + 7, + 16, + 42, + 64, + 128, + 256 + ], + [ + 45, + 73, + 137, + 286 + ], + [ + 45, + 87, + 137, + 265 + ], + [ + 45, + 80, + 146, + 261 + ], + [ + 5, + 40, + 194, + 265 + ], + [ + 45, + 69, + 400 + ], + [ + 45, + 69, + 146, + 272 + ], + [ + 45, + 69, + 130, + 274 + ], + [ + 45, + 73, + 144, + 274 + ], + [ + 14, + 35, + 469 + ], + [ + 14, + 35, + 130, + 341 + ], + [ + 14, + 35, + 215, + 258 + ], + [ + 28, + 45, + 199, + 268 + ], + [ + 2, + 5, + 40, + 217, + 256 + ], + [ + 7, + 18, + 42, + 66, + 393 + ], + [ + 7, + 42, + 66, + 130, + 258 + ], + [ + 7, + 18, + 42, + 66, + 130, + 258 + ], + [ + 2, + 5, + 16, + 40, + 64, + 393 + ], + [ + 2, + 5, + 40, + 89, + 128, + 256 + ], + [ + 28, + 45, + 194, + 258 + ], + [ + 21, + 45, + 66, + 386 + ], + [ + 5, + 40, + 137, + 336 + ], + [ + 45, + 80, + 137, + 274 + ], + [ + 4, + 8, + 17, + 34, + 64, + 387 + ], + [ + 3, + 8, + 17, + 33, + 68, + 388 + ], + [ + 12, + 21, + 38, + 71, + 132, + 260 + ], + [ + 11, + 18, + 33, + 64, + 132, + 260 + ], + [ + 6, + 10, + 18, + 32, + 65, + 385 + ], + [ + 1, + 10, + 20, + 32, + 64, + 390 + ], + [ + 12, + 18, + 38, + 64, + 129, + 257 + ], + [ + 11, + 21, + 33, + 71, + 129, + 257 + ], + [ + 1, + 6, + 24, + 32, + 64, + 394 + ], + [ + 1, + 6, + 10, + 18, + 96, + 416 + ], + [ + 7, + 25, + 33, + 75, + 129, + 257 + ], + [ + 7, + 11, + 18, + 64, + 160, + 288 + ], + [ + 3, + 4, + 17, + 33, + 72, + 392 + ], + [ + 3, + 4, + 8, + 48, + 64, + 401 + ], + [ + 7, + 18, + 33, + 64, + 136, + 264 + ], + [ + 7, + 11, + 51, + 82, + 131, + 259 + ], + [ + 4, + 51, + 82, + 136, + 264 + ], + [ + 30, + 32, + 76, + 129, + 257 + ], + [ + 13, + 19, + 33, + 455 + ], + [ + 10, + 20, + 32, + 70, + 129, + 257 + ], + [ + 10, + 20, + 32, + 65, + 129, + 262 + ], + [ + 10, + 20, + 32, + 65, + 131, + 260 + ], + [ + 10, + 20, + 32, + 65, + 132, + 259 + ], + [ + 5, + 10, + 17, + 32, + 65, + 386 + ], + [ + 2, + 8, + 20, + 32, + 65, + 389 + ], + [ + 7, + 24, + 43, + 74, + 136, + 264 + ], + [ + 1, + 6, + 50, + 82, + 136, + 264 + ], + [ + 2, + 5, + 49, + 80, + 136, + 264 + ], + [ + 7, + 27, + 40, + 73, + 136, + 264 + ], + [ + 3, + 4, + 48, + 72, + 137, + 272 + ], + [ + 3, + 4, + 48, + 72, + 144, + 265 + ], + [ + 3, + 4, + 24, + 40, + 72, + 385 + ], + [ + 1, + 2, + 4, + 48, + 72, + 408 + ], + [ + 8, + 22, + 37, + 71, + 135, + 263 + ], + [ + 12, + 18, + 33, + 67, + 131, + 259 + ], + [ + 4, + 8, + 18, + 33, + 192, + 320 + ], + [ + 12, + 18, + 33, + 70, + 134, + 262 + ] +] diff --git a/research/owned-query-ports/GRAPH.txt.gz b/research/owned-query-ports/GRAPH.txt.gz new file mode 100644 index 0000000000..913a4e488e Binary files /dev/null and b/research/owned-query-ports/GRAPH.txt.gz differ diff --git a/research/owned-query-ports/INTEGRITY.json b/research/owned-query-ports/INTEGRITY.json new file mode 100644 index 0000000000..bd177e9409 --- /dev/null +++ b/research/owned-query-ports/INTEGRITY.json @@ -0,0 +1,24 @@ +{ + ".gitattributes": "705fd4d6451a31d36b3df7de96f83f30ac976c9b4a6d1e51671d8e2f33e2d0da", + "ATTRIBUTION.md": "191c7a252511517c5e779788e5f8518a53dbab529b12da00ad3ac734ad019e08", + "FRAMES.json": "65f216fe5749084d04dda3dc53d93139f69e80fad4954ca3ffc412c89033f19a", + "GRAPH.txt.gz": { + "mode": "gzip-payload", + "sha256": "ac619e4bd3928ea21b6ad59e1503bac3748ae6bc1ad3ccffe76f846f34f78f14" + }, + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "port_alpha.cpp": "5a02d33c11ca75e8cb49ee90d7ab91e85107951196c28217a7a4303c8f958e05", + "port_plateau_long.cpp": "18de428bc4ab2d29a965cecae461755f6b594000d15f2398801371ccc3cc9c13", + "port_swap.cpp": "6fd08e9e8cc748c0a2100f580f1b5475053434e0958995bf0b1c9533abd33090", + "PROOF.md": "2c9eac4e07bd6ec71846bb2ca92c9a14f81bbaefe64035a5274ca697a2354cf6", + "QUERIES.json": "aad96f5b307eab6211d533a6b2185d0bf59342ae9c79cba9f6a7c5119ecdca56", + "README.md": "cf5854991d5e29c0848ba6c09f061f88b8cc4846d7ce900572f34888ae675372", + "run_search.py": "dcc1f9985d1db46a58693bf5670be450e2af215a5430629a89d987eee7b779ce", + "SEARCH-RESULTS.json": "28b4f246b98f054ac796c54cb98b186eb2f809a4cb552fa97ba0daa34c44998c", + "SNAPSHOT.json": "a5012b98154d41531bafac0e3c6d25077d4a8cfb2aab4790494d8356d50fffc0", + "SOURCES.json": "15b71d80f5415050da8317cb389b9c9cab762b81cdf5ea87e1c3b3c534a1a901", + "TASK.json": "d9cbc75babf6223c88a08876893890581fe383fd20d5c6d78df76a6da8be2d5e", + "VALIDATION.md": "29766823031eddb0d104c8bbf180b1bc557fc2d05578d4d4801fdcde57d0be3f", + "VERIFY.json": "2ffe10d0ff91a414da45756408961c7ed05ab6699a19753b1477450239fe96e4", + "verify.py": "28f9a98160e4ef39cd007bca893364f91d25c83a0824f630c2a70bad273f94ee" +} diff --git a/research/owned-query-ports/LICENSE b/research/owned-query-ports/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/owned-query-ports/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/owned-query-ports/PROOF.md b/research/owned-query-ports/PROOF.md new file mode 100644 index 0000000000..4b23332379 --- /dev/null +++ b/research/owned-query-ports/PROOF.md @@ -0,0 +1,45 @@ +OWNED QUERY ADAPTERS — SCOPED MATHEMATICAL HANDOFF + +Outcome: no new κ value was established. The strongest open claim observed at the final checkpoint is PR #4470, conditional κ = 0.00302015. Canonical main still selects conditional κ = 0.0023. These are different statuses. + +1. Sufficient two-port construction + +Let V be a vector space over a field K. Let A and B be invertible K-linear maps on V, and let λ ∈ K. Store arbitrary independent logical values x and y physically as Bx and Ay. Assume the native model permits scalar COPY and ADD, explicitly clearing an owned temporary, and a paid exact implementation of U = A B⁻¹ with all its monomial factors and absolute phase. + +Then the logical shear (x, y) ↦ (x, y + λx) has a construction that leaves both persistent charts unchanged and invokes U once: + +clear temporary; copy Bx into temporary; apply U; add λ times temporary into Ay; clear temporary. + +Proof. Immediately after U, the temporary equals A B⁻¹ Bx = Ax. The destination becomes Ay + λAx = A(y + λx). The source remains Bx, and the temporary returns to zero. This calculation holds for every x and y and for an arbitrary initial temporary because the first clear removes it. It does not erase or assume anything about an arbitrary persistent input. If λ = 0, omit the entire episode. + +If exact native lowering gives Fourier rank d for U, the recursive bill is one rank-d job when d > 0, no productive credit for the temporary, and its full monomial/scalar implementation. A rank-zero U still has its finite monomial implementation. There is one extra owned field. Relative to the original ADD, clear/copy/clear are three additional scalar operations, with the actual source primitive allowances for coefficients and routes. The temporary must not alias a live C0 or any persistent field. + +This is a sufficient construction under the stated native operations. It does not establish the inherited all-size native lift, precision, stock, tape, analytic or recovery assumptions. + +2. Sufficient shared-bridge construction + +Under the exact primitive and nonaliasing assumptions of Section 1, let I and J be disjoint sets of source and destination fields. Suppose every source uses chart B and every destination uses chart A. Let the requested simultaneous coefficient matrix factor as M[j,i] = u[j] v[i]. Then all updates + +y[j] ↦ y[j] + Σ_i M[j,i] x[i] + +can share one paid U = A B⁻¹, with one owned temporary and no productive credit for that temporary. + +Proof. Clear the temporary, form Σ_i v[i] Bx[i] by explicit scalar copies/additions, apply U once, then add u[j] times that temporary to each Ay[j], and clear it. Linearity gives U(Σ_i v[i] Bx[i]) = A Σ_i v[i] x[i]. Sources and unrelated fields are untouched, and all destination equations follow. Scalar coefficient costs and the complete owned stock are charged. If source and destination sets intersect, or intervening operations do not commute, this proof does not authorize gathering them. + +This covers one-source broadcasts, one-destination accumulation and rational rank-one rectangles. It is not a claim that these elementary linear-algebra ideas are new to the literature or to all prior PRs. + +3. Restricted search representation + +Write D(A,B) for the exact Fourier rank of C_A C_B⁻¹. At an LL-ADD contact, split its common chart vertex into an independent source port and destination port, connected by a paid metric edge D(A,B)^(1−κ). The first construction implements that edge. Existing field transports remain on the field rails. Fixing helper endpoints preserves every productive helper rank; fixing endpoints of each nonordinary warp preserves its actual operator and charge. Owned C0 and all eight rank-eight center calls remain charged. + +For the pinned source, this produces 34,790 vertices, 50,067 paid edges and 16,089 potential query bridges, with 1,790 fixed vertices. The initial graph reproduces the full PR #4470 paid profile exactly. The final plateau state also has exactly that same rank histogram. No κ improvement follows. + +The portable C++17 discovery engines tested all 1,224 single-label expansions, 2,415 swaps among 70 frequent labels, and 60 passes allowing only identical-histogram plateau moves. No accepted improvement was found. Floating costs and integer-rounded cut capacities make these bounded search observations, not exact optimality or impossibility theorems. The expanded model can strictly help other instances: a checked four-terminal control saves one unit, and 30 binary graph controls match exhaustive optima. + +4. Reproduction and limits + +README.md states the portable replay and its limits. The new replay checks seven pinned physical frame pairs in both orientations, decodes native recipes including absolute phase, checks rational shear/shared-bridge controls, and recomputes every snapshot distance and its initial complete paid profile. It does not reconstruct or certify a new full native supplier. The campaign-specific exporter and research dependencies are excluded. + +The numerical search observations are frozen in SEARCH-RESULTS.json. Optional C++17 replay uses run_search.py. No new κ, selected-frontier update, global optimum, novelty or Linux execution is claimed. Any improved future candidate still needs both full physical orientations, all arbitrary-input columns, complete owned stock and scalar costs, exact controller/moment/compiler checks and every outer obligation. + +Credit the retained native and Clifford authors, PR #4359, #4416, #4440, #4441, #4447 and #4470; see ATTRIBUTION.md. Source-only DAG retrieval was not a fresh Lean kernel audit. Prepared for Dugongue with substantial OpenAI assistance. Apache-2.0. diff --git a/research/owned-query-ports/QUERIES.json b/research/owned-query-ports/QUERIES.json new file mode 100644 index 0000000000..cc70641d0e --- /dev/null +++ b/research/owned-query-ports/QUERIES.json @@ -0,0 +1,120 @@ +[ + { + "source_basis": [], + "target_basis": [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ], + "rank": 9 + }, + { + "source_basis": [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ], + "target_basis": [], + "rank": 9 + }, + { + "source_basis": [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ], + "target_basis": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "rank": 1 + }, + { + "source_basis": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "target_basis": [ + 256, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ], + "rank": 2 + }, + { + "source_basis": [ + 45 + ], + "target_basis": [ + 51 + ], + "rank": 2 + }, + { + "source_basis": [ + 51 + ], + "target_basis": [ + 45 + ], + "rank": 2 + }, + { + "source_basis": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "target_basis": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "rank": 0 + } +] diff --git a/research/owned-query-ports/README.md b/research/owned-query-ports/README.md new file mode 100644 index 0000000000..03510925ae --- /dev/null +++ b/research/owned-query-ports/README.md @@ -0,0 +1,41 @@ +# Owned-query adapters and portable split-port search (no new κ) + +This package proves sufficient temporary-field constructions for a two-port shear and a shared rank-one ADD block. It replaces a forced common contact chart with independently chosen source/destination charts and one fully paid bridge. The temporary has no productive credit; explicit initialization, erasure, scalar work, monomial routes and owned stock remain charged. + +**No κ improvement was found.** The reference is the open conditional κ = 0.00302015 in [PR #4470](https://github.com/CrocSwap/integer-mult-bounds/pull/4470), not a new or selected result. The construction is elementary linear algebra; no literature or repository novelty claim is made. + +## Reproduce + +From the repository root, with Python 3.12 and no third-party Python packages: + +```sh +python3.12 -B scripts/research_package.py --package research/owned-query-ports --check-only +python3.12 -B scripts/research_package.py --package research/owned-query-ports +``` + +A Git-free export can run `python3.12 -I -O -B research/owned-query-ports/verify.py`. The single pinned external input is the retained exact Clifford source; the repository exporter includes it. + +The default replay checks 14 phase-bearing primitive instances, 24 rational input columns, all 1,224 × 1,224 CSS distances, the 34,790-vertex/50,067-edge frozen graph and the complete baseline paid profile `{1:2237, 2:388, 3:494, 4:147, 5:36, 8:8}`. It includes false-rank, phase, metric and invoice controls. These are scoped primitive/snapshot checks, not a new 632-column native supplier replay. Both the 11 fixed rank-one warp charges and eight whole rank-eight center calls remain included. + +Optional portable C++17 discovery, requiring `g++` or `clang++`: + +```sh +python3.12 -B research/owned-query-ports/run_search.py +python3.12 -B research/owned-query-ports/run_search.py --cxx clang++ --full +``` + +The first command compiles in temporary storage and checks a strictly improving toy adapter plus 30 binary graphs against exhaustive optima. `--full` additionally runs the frozen α-expansion, label-swap and plateau searches. Rounded cut capacities and floating moment costs make their output discovery evidence, not exact optimality. A discovered label assignment requires separate physical and mathematical verification. Temporary output is not published as a bound. + +## Evidence and limits + +[PROOF.md](PROOF.md) gives the sufficient identities and costs. [SEARCH-RESULTS.json](SEARCH-RESULTS.json) records the original bounded runs: 1,224 expansions, 2,415 swaps, 60 plateau passes and 773 additional line/hyperplane labels, with no accepted improvement. The additional-label run is historical evidence, not reproduced by `--full`. + +`GRAPH.txt.gz` is a frozen graph snapshot from PR #4470's chronological supplier. This package recomputes its metric and bill, but does not regenerate its embedding from the full source word. The campaign-specific exporter, SciPy searches and private drive paths are excluded. Source binding to the original whole native word remains a future obligation. Gzip compression bytes are not mathematical equality: the verifier checks the decompressed payload. + +Local checks ran on Windows. Python uses the standard library and C++ uses standard C++17; **Linux execution has not been verified**. No universal barrier, unconditional multiplication theorem, practical speedup, full native proof or selected-frontier update is claimed. + +## Open next questions + +Find one changed scalar word or provider whose fully charged bridge lowers the complete invoice. Begin with a small exact changed interface, reconstruct both physical orientations and replay every arbitrary input; then charge owned peak stock, scalar and monomial work and recompute controller, strictification, finite compiler and all outer inequalities. No positive candidate is included. [TASK.json](TASK.json) gives the structured handoff. + +See [ATTRIBUTION.md](ATTRIBUTION.md). Prepared for Dugongue with substantial OpenAI assistance; Apache-2.0. diff --git a/research/owned-query-ports/SEARCH-RESULTS.json b/research/owned-query-ports/SEARCH-RESULTS.json new file mode 100644 index 0000000000..a129fde397 --- /dev/null +++ b/research/owned-query-ports/SEARCH-RESULTS.json @@ -0,0 +1,17 @@ +{ + "status": "NO_NEW_KAPPA", + "conditional_reference": "0.00302015 in PR #4470; not a new claim", + "alpha_labels": 1224, + "frequent_label_swaps": 2415, + "plateau_passes": 60, + "additional_line_hyperplane_labels": 773, + "result": "No accepted lower-cost profile. Plateau changes preserved the complete rank histogram.", + "numerics": "Exact GF(2) ranks, floating moment costs, rounded cut capacities at scale 1e8; no exact optimality or universal barrier claim.", + "logs": { + "port-alpha.log": "baseline 5242.14 nodes 34790 edges 50067\npass 0 wins 0\n", + "port-swap.log": "baseline 5242.14 nodes 34790 edges 50067\ntests 200 wins 0\ntests 400 wins 0\ntests 600 wins 0\ntests 800 wins 0\ntests 1000 wins 0\ntests 1200 wins 0\ntests 1400 wins 0\ntests 1600 wins 0\ntests 1800 wins 0\ntests 2000 wins 0\ntests 2200 wins 0\ntests 2400 wins 0\ndone 2415 wins 0\n", + "port-plateau-long.log": "baseline 5242.14 nodes 34790 edges 50067\npass 0 accepted_moves 5\npass 1 accepted_moves 4\npass 2 accepted_moves 3\npass 3 accepted_moves 1\npass 4 accepted_moves 4\npass 5 accepted_moves 3\npass 6 accepted_moves 1\npass 7 accepted_moves 4\npass 8 accepted_moves 3\npass 9 accepted_moves 6\npass 10 accepted_moves 4\npass 11 accepted_moves 2\npass 12 accepted_moves 5\npass 13 accepted_moves 2\npass 14 accepted_moves 1\npass 15 accepted_moves 5\npass 16 accepted_moves 3\npass 17 accepted_moves 6\npass 18 accepted_moves 3\npass 19 accepted_moves 1\npass 20 accepted_moves 5\npass 21 accepted_moves 2\npass 22 accepted_moves 1\npass 23 accepted_moves 5\npass 24 accepted_moves 3\npass 25 accepted_moves 5\npass 26 accepted_moves 2\npass 27 accepted_moves 3\npass 28 accepted_moves 5\npass 29 accepted_moves 2\npass 30 accepted_moves 3\npass 31 accepted_moves 5\npass 32 accepted_moves 4\npass 33 accepted_moves 3\npass 34 accepted_moves 2\npass 35 accepted_moves 3\npass 36 accepted_moves 5\npass 37 accepted_moves 2\npass 38 accepted_moves 3\npass 39 accepted_moves 4\npass 40 accepted_moves 4\npass 41 accepted_moves 3\npass 42 accepted_moves 2\npass 43 accepted_moves 3\npass 44 accepted_moves 5\npass 45 accepted_moves 3\npass 46 accepted_moves 3\npass 47 accepted_moves 3\npass 48 accepted_moves 4\npass 49 accepted_moves 3\npass 50 accepted_moves 2\npass 51 accepted_moves 3\npass 52 accepted_moves 3\npass 53 accepted_moves 1\npass 54 accepted_moves 3\npass 55 accepted_moves 3\npass 56 accepted_moves 4\npass 57 accepted_moves 3\npass 58 accepted_moves 2\npass 59 accepted_moves 4\n", + "port-extra.log": "baseline 5242.14 nodes 34790 edges 50067\npass 0 wins 0\n" + }, + "original_execution": "Windows with GNU C++17; Linux execution not performed. Extra 773-label and old plateau receipts are historical evidence, not part of the default replay." +} diff --git a/research/owned-query-ports/SNAPSHOT.json b/research/owned-query-ports/SNAPSHOT.json new file mode 100644 index 0000000000..0a7cd3baf5 --- /dev/null +++ b/research/owned-query-ports/SNAPSHOT.json @@ -0,0 +1,30 @@ +{ + "source_pr": 4470, + "source_head": "b9a13c1673e0e9697de410de16e8bbf3207a7363", + "canonical_main": "2a13eb1827784206202db90e5dc8327cf8a250db", + "status": "Frozen discovery graph, not a new executable native supplier", + "payload_sha256": "ac619e4bd3928ea21b6ad59e1503bac3748ae6bc1ad3ccffe76f846f34f78f14", + "vertices": 34790, + "edges": 50067, + "fixed_vertices": 1790, + "query_bridges": 16089, + "constant_paid": { + "1": 11, + "8": 8 + }, + "expected_paid": { + "1": 2237, + "2": 388, + "3": 494, + "4": 147, + "5": 36, + "8": 8 + }, + "helpers": { + "4": 28, + "7": 7, + "8": 47, + "9": 326 + }, + "caveat": "Checks authenticate this snapshot and its metric/profile. They do not regenerate its embedding from the full source word or replay 632 arbitrary columns." +} diff --git a/research/owned-query-ports/SOURCES.json b/research/owned-query-ports/SOURCES.json new file mode 100644 index 0000000000..8fdf74481a --- /dev/null +++ b/research/owned-query-ports/SOURCES.json @@ -0,0 +1,30 @@ +{ + "schema_version": 1, + "base_commit": "2a13eb1827784206202db90e5dc8327cf8a250db", + "files": [ + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "ed33caef5c5827693e9572d252a66f99cbb73d40", + "sha256": "5732707cc1e460b090b53f2463162749ad860de878a18f7408938671d295a9d9" + }, + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "64bfc5af6709ed9811171e0a2108f05e1219cb65", + "sha256": "352a6184713b8843d96fd2c2071eb7aeaa655906b7c51d45ad444912666c8a96" + }, + { + "path": "research/t74-native-fast/vendor/native/new/code/borrow/vendor/clifford/clifford_exact.py", + "usage": "input", + "git_blob": "166841a037f069249f6f7f6dedb89248812f59e2", + "sha256": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962" + }, + { + "path": "research/kappa-function-composition/complex/prune_native.py", + "usage": "provenance", + "git_blob": "8c3e11b2408fa96eefa3ebe7952d1b11b90b772b", + "sha256": "f2b37c183a10922eabc8e0436b426a08866430e96bd0adc7e178951c7fbb5257" + } + ] +} diff --git a/research/owned-query-ports/TASK.json b/research/owned-query-ports/TASK.json new file mode 100644 index 0000000000..3884305e99 --- /dev/null +++ b/research/owned-query-ports/TASK.json @@ -0,0 +1,66 @@ +{ + "schema_version": 1, + "task_id": "complex-new-helper-inventory", + "priority_revision": 7, + "base_commit": "2a13eb1827784206202db90e5dc8327cf8a250db", + "original_card": { + "id": "complex-new-helper-inventory", + "question": "Can a new local cost interface change the deficit-to-recursive-cost ratio beyond current packing?", + "starting_points": [ + "docs/research/research-family-status.md", + "research/complex-local-word-ceiling/README.md", + "research/heterogeneous-owner-assembly/README.md", + "certificates/selected-result.json", + "research/selected-k8-unrestricted-ends/README.md" + ], + "methods": [ + "Propose a changed helper inventory and derive an optimistic exact moment.", + "Design a small completed instance and independently verify its endpoint and rank bill." + ], + "acceptance_gate": "A new physically realizable contract outside the frozen catalogue whose per-call profile, screened with ceiling.ceiling(), beats the selected word's packing ceiling; a lower cap does not establish identical circuitry or order attainable optima, and is insufficient to pass the stronger-budget target under this model. A scoped local result may be retained without a complete supplier. Expanding it into further construction rounds requires the family-level budget and obligation gate in research-family-status.md; an optimistic passing relaxation alone is not acceptance.", + "first_step": { + "command": [ + "python3", + "-B", + "research/complex-local-word-ceiling/verify.py" + ], + "expected": "PASS_COMPLEX_LOCAL_WORD_CEILING", + "inspect": "Read the selected word's per-call local profile, its packing ceiling and the lever table; run levers.py for the ideal budget of the lever you target.", + "scope": "Positive control and planning budget only; this is not a new construction or full cold replay." + }, + "first_experiment": "Before any synthesis, write the candidate per-call local profile (and centre charge / unpaid coordinates if changed) and screen it with ceiling.ceiling(); reject it if even the ideal ceiling does not beat the selected word's by your stated margin.", + "bottleneck_link": "Packing of the selected word is capped at +0.87% (ceiling model); only a lower local excess spend or a changed coverage law raises the cap.", + "allowed_variations": [ + "Narrow to one changed boundary or helper type with explicit counts.", + "If the coverage law, template or guard changes, derive an applicable fully charged replacement bound instead of applying the incumbent ceiling outside its scope." + ], + "scope_change_triggers": [ + "Mixing only providers already inside the pinned catalogue.", + "Only changing helper terminal subspaces and monotone frames within the fixed scalar word, entrances and cleanup contract already covered by #1995/#2013.", + "Continuing a partial cost improvement while leaving the same unpriced consumer, restoration or central-readout obligation unresolved; refresh the family expansion decision first. Local product-retiming evidence has a narrow scope and is not a ban on changed graphs or contracts." + ], + "overlap_terms": [ + "helper inventory", + "heterogeneous-owner", + "mutable leaver" + ] + }, + "scope_status": "refined", + "actual_scope": "Sufficient owned-query shear and shared rank-one bridge, exact primitive checks, and frozen split-port discovery graph.", + "scope_change_reason": "The assigned improvement search found no better complete bill. Package the sufficient owned-query adapters and a portable bounded search model without claiming a new bound.", + "bottleneck_link": "Independent ADD ports can replace forced common charts with one fully paid owned query; explicit stock and scalar work remain.", + "budget_minutes": 60, + "stop_rule": "No lower paid profile found in the bounded recorded searches; retain the construction and stop this family expansion.", + "outcome": "partial", + "evidence": "PROOF.md, verify.py, SNAPSHOT.json, SEARCH-RESULTS.json", + "author": "Dugongue", + "ai_assistance": "Substantial OpenAI assistance in proofs, code, search and review; no independent human or Lean acceptance.", + "open_questions": [ + { + "question": "Can a changed scalar word or provider make the paid bridge reduce the complete invoice?", + "why_it_matters": "The adapter is sufficient, but none of the tested source neighborhoods improved κ.", + "first_step": "Find one changed interface with a strictly lower complete profile, reconstruct both physical orientations and replay all arbitrary columns.", + "blocked_by": "No positive supplier candidate; owned stock, scalar routes and all outer hypotheses must still be charged." + } + ] +} diff --git a/research/owned-query-ports/VALIDATION.md b/research/owned-query-ports/VALIDATION.md new file mode 100644 index 0000000000..436e06d64b --- /dev/null +++ b/research/owned-query-ports/VALIDATION.md @@ -0,0 +1,13 @@ +# Validation scope + +Completed author-side checks on Windows with Python 3.12 and GNU C++17: + +- Registered package metadata and all declared source pins pass. +- Registered standard-library replay passes. +- Direct isolated/optimized replay (`-I -O -B`) passes. +- Fourteen phase/rank instances, 24 rational columns, every snapshot CSS metric entry, and the complete baseline count/mass pass. +- Optional C++ controls find the strict toy saving and match all 30 exhaustive binary optima. + +The release receipt beside the short upload folder records the exact commit, full packaged C++ replay, committed-byte and Git-free export outcomes. That receipt is publication evidence, not another mathematical assumption. + +These checks do not establish a new native whole-word embedding, Linux execution, new κ or the retained analytic and integer-recovery assumptions. Rounded-capacity search observations do not establish an exact optimum. Explicit COPY overwrites owned storage; rational controls do not claim that omitting an initial clear before such an overwrite necessarily changes the result. diff --git a/research/owned-query-ports/VERIFY.json b/research/owned-query-ports/VERIFY.json new file mode 100644 index 0000000000..3ae02d5911 --- /dev/null +++ b/research/owned-query-ports/VERIFY.json @@ -0,0 +1,20 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "inputs": [ + "research/t74-native-fast/vendor/native/new/code/borrow/vendor/clifford/clifford_exact.py" + ], + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "timeout_seconds": 300, + "checks": "Exact primitive phase/rank decode in both orientations; rational shear/shared-bridge controls; all snapshot CSS distances and complete baseline invoice; malformed snapshot controls." + } + ] +} diff --git a/research/owned-query-ports/port_alpha.cpp b/research/owned-query-ports/port_alpha.cpp new file mode 100644 index 0000000000..cfe102febc --- /dev/null +++ b/research/owned-query-ports/port_alpha.cpp @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: Apache-2.0 +// Dugongue; substantial OpenAI assistance. Discovery only, no new kappa. +#include +#include +#include +#include +#include +#include +#include +#include +#include +using namespace std; +using I=long long; +struct Dinic{struct E{int v,rev;I c;};vector>g;vectorlv,it;Dinic(int n):g(n),lv(n),it(n){} void add(int a,int b,I c){E x{b,(int)g[b].size(),c},y{a,(int)g[a].size(),0};g[a].push_back(x);g[b].push_back(y);} bool bfs(int s,int t){fill(lv.begin(),lv.end(),-1);queueq;lv[s]=0;q.push(s);while(q.size()){int a=q.front();q.pop();for(auto&e:g[a])if(e.c&&lv[e.v]<0)lv[e.v]=lv[a]+1,q.push(e.v);}return lv[t]>=0;} I dfs(int a,int t,I f){if(a==t)return f;for(int&j=it[a];j<(int)g[a].size();++j){auto&e=g[a][j];if(e.c&&lv[e.v]==lv[a]+1){I z=dfs(e.v,t,min(f,e.c));if(z){e.c-=z;g[e.v][e.rev].c+=z;return z;}}}return 0;}void flow(int s,int t){while(bfs(s,t)){fill(it.begin(),it.end(),0);while(dfs(s,t,1LL<<55));}bfs(s,t);}}; +int main(int argc,char**argv){if(argc!=3)return 2;ifstream in(argv[1]);int n,m,k;in>>n>>m>>k;vectorL(n),fixed(n);for(int i=0;i>L[i]>>fixed[i];vector>edges(m);for(auto&e:edges)in>>e.first>>e.second;vector>D(k,vector(k));for(auto&r:D)for(auto&z:r)in>>z;vectororder;int z;while(in>>z)order.push_back(z);double p[10];for(int i=0;i<10;++i)p[i]=i?pow((double)i,.996979834):0.;auto score=[&](){double s=0;for(auto[a,b]:edges)s+=p[D[L[a]][L[b]]];return s;};double base=score();cout<<"baseline "<u(n,0.);for(auto[x,y]:edges){double A=p[D[L[x]][L[y]]],B=p[D[L[x]][a]],C=p[D[a][L[y]]];double cross=B+C-A;if(cross< -1e-8){cerr<<"nonmetric";return 3;}cross=max(0.,cross);I cap=llround(cross*1e8);f.add(x,y,cap);f.add(y,x,cap);u[x]+=C-A-B;u[y]+=B-A-C;}for(int i=0;i=0)f.add(i,t,llround(u[i]*1e8));else f.add(s,i,llround(-u[i]*1e8));}f.flow(s,t);auto old=L;double before=score();for(int i=0;i=0)L[i]=a;double after=score();if(after +#include +#include +#include +#include +#include +#include +#include +#include +using namespace std; +using I=long long; +struct Dinic{struct E{int v,rev;I c;};vector>g;vectorlv,it;Dinic(int n):g(n),lv(n),it(n){} void add(int a,int b,I c){E x{b,(int)g[b].size(),c},y{a,(int)g[a].size(),0};g[a].push_back(x);g[b].push_back(y);} bool bfs(int s,int t){fill(lv.begin(),lv.end(),-1);queueq;lv[s]=0;q.push(s);while(q.size()){int a=q.front();q.pop();for(auto&e:g[a])if(e.c&&lv[e.v]<0)lv[e.v]=lv[a]+1,q.push(e.v);}return lv[t]>=0;} I dfs(int a,int t,I f){if(a==t)return f;for(int&j=it[a];j<(int)g[a].size();++j){auto&e=g[a][j];if(e.c&&lv[e.v]==lv[a]+1){I z=dfs(e.v,t,min(f,e.c));if(z){e.c-=z;g[e.v][e.rev].c+=z;return z;}}}return 0;}void flow(int s,int t){while(bfs(s,t)){fill(it.begin(),it.end(),0);while(dfs(s,t,1LL<<55));}bfs(s,t);}}; +int main(int argc,char**argv){if(argc!=3)return 2;ifstream in(argv[1]);int n,m,k;in>>n>>m>>k;vectorL(n),fixed(n);for(int i=0;i>L[i]>>fixed[i];vector>edges(m);for(auto&e:edges)in>>e.first>>e.second;vector>D(k,vector(k));for(auto&r:D)for(auto&z:r)in>>z;vectororder;int z;while(in>>z)order.push_back(z);double p[10];for(int i=0;i<10;++i)p[i]=i?pow((double)i,.996979834):0.;auto score=[&](){double s=0;for(auto[a,b]:edges)s+=p[D[L[a]][L[b]]];return s;};double base=score();cout<<"baseline "<45)order.resize(45); for(int pass=0;pass<60;++pass){int wins=0;for(int a:order){Dinic f(n+2);int s=n,t=n+1;vectoru(n,0.);for(auto[x,y]:edges){double A=p[D[L[x]][L[y]]],B=p[D[L[x]][a]],C=p[D[a][L[y]]];double cross=B+C-A;if(cross< -1e-8){cerr<<"nonmetric";return 3;}cross=max(0.,cross);I cap=llround(cross*1e8);f.add(x,y,cap);f.add(y,x,cap);u[x]+=C-A-B;u[y]+=B-A-C;}for(int i=0;i=0)f.add(i,t,llround(u[i]*1e8));else f.add(s,i,llround(-u[i]*1e8));}f.flow(s,t);auto old=L;double before=score();for(int i=0;i=0)L[i]=a;double after=score();if(afterhh(10,0);for(auto[x,y]:edges){hh[D[L[x]][L[y]]]++;hh[D[old[x]][old[y]]]--;}if(all_of(hh.begin(),hh.end(),[](int v){return v==0;})){if(L!=old)++wins;}else L=old;}else L=old;}ofstream checkpoint(string(argv[2])+".checkpoint");for(int v:L)checkpoint< +#include +#include +#include +#include +#include +#include +#include +#include +using namespace std; +using I=long long; +struct Dinic{struct E{int v,rev;I c;};vector>g;vectorlv,it;Dinic(int n):g(n),lv(n),it(n){} void add(int a,int b,I c){E x{b,(int)g[b].size(),c},y{a,(int)g[a].size(),0};g[a].push_back(x);g[b].push_back(y);} bool bfs(int s,int t){fill(lv.begin(),lv.end(),-1);queueq;lv[s]=0;q.push(s);while(q.size()){int a=q.front();q.pop();for(auto&e:g[a])if(e.c&&lv[e.v]<0)lv[e.v]=lv[a]+1,q.push(e.v);}return lv[t]>=0;} I dfs(int a,int t,I f){if(a==t)return f;for(int&j=it[a];j<(int)g[a].size();++j){auto&e=g[a][j];if(e.c&&lv[e.v]==lv[a]+1){I z=dfs(e.v,t,min(f,e.c));if(z){e.c-=z;g[e.v][e.rev].c+=z;return z;}}}return 0;}void flow(int s,int t){while(bfs(s,t)){fill(it.begin(),it.end(),0);while(dfs(s,t,1LL<<55));}bfs(s,t);}}; +int main(int argc,char**argv){if(argc!=3)return 2;ifstream in(argv[1]);int n,m,k;in>>n>>m>>k;vectorL(n),fixed(n);for(int i=0;i>L[i]>>fixed[i];vector>edges(m);for(auto&e:edges)in>>e.first>>e.second;vector>D(k,vector(k));for(auto&r:D)for(auto&z:r)in>>z;vectororder;int z;while(in>>z)order.push_back(z);double p[10];for(int i=0;i<10;++i)p[i]=i?pow((double)i,.996979834):0.;auto score=[&](){double s=0;for(auto[a,b]:edges)s+=p[D[L[a]][L[b]]];return s;};double base=score();cout<<"baseline "<freq(k,0);for(int a:L)freq[a]++;vectorls;for(int i=0;ifreq[b];});if(ls.size()>70)ls.resize(70); +int tests=0,wins=0; +for(int ia=0;ia<(int)ls.size();++ia)for(int ib=ia+1;ib<(int)ls.size();++ib){int a=ls[ia],b=ls[ib];vectormp(n,-1),vs;for(int i=0;iu(z,0.);double d=p[D[a][b]];for(auto[x,y]:edges){int xx=mp[x],yy=mp[y];if(xx>=0&&yy>=0){I cap=llround(d*1e8);f.add(xx,yy,cap);f.add(yy,xx,cap);}else if(xx>=0)u[xx]+=p[D[b][L[y]]]-p[D[a][L[y]]];else if(yy>=0)u[yy]+=p[D[b][L[x]]]-p[D[a][L[x]]];}for(int i=0;i=0)f.add(i,sink,llround(u[i]*1e8));else f.add(src,i,llround(-u[i]*1e8));}f.flow(src,sink);auto old=L;double before=score();for(int i=0;i=0?b:a;double after=score();if(after