From 2b504321322e930b4817fc8132d6277dfd26b3fa Mon Sep 17 00:00:00 2001 From: feltroidprime Date: Tue, 6 Aug 2024 03:26:50 +0200 Subject: [PATCH] parallel test gen --- src/cairo/src/tests/msm_tests.cairo | 39675 ++++++++-------- src/cairo/src/tests/pairing_tests.cairo | 31239 ++++++------ tools/starknet/e2e_tests_writer/mpcheck.py | 4 +- tools/starknet/e2e_tests_writer/msm.py | 2 +- .../starknet/e2e_tests_writer/test_writer.py | 92 +- 5 files changed, 35500 insertions(+), 35512 deletions(-) diff --git a/src/cairo/src/tests/msm_tests.cairo b/src/cairo/src/tests/msm_tests.cairo index 0bdfae58..ae51e0c2 100644 --- a/src/cairo/src/tests/msm_tests.cairo +++ b/src/cairo/src/tests/msm_tests.cairo @@ -8,15 +8,15 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x4d77e628298a41a9579a38b2, - limb1: 0xbebd4ea61dc8258af4a1f4b3, - limb2: 0x17d0298de198840c, + limb0: 0x70bb0db6d95e0ef64f4bebcf, + limb1: 0x4488d8ef547d7f86e49d2c, + limb2: 0x50850527502f7c6, limb3: 0x0 }, y: u384 { - limb0: 0xd9b1bd0cc6ba82a330375a0e, - limb1: 0xdc2cd17f3a8a67ef3c76abc5, - limb2: 0x186c635d4e9d3f5e, + limb0: 0x1772cbcc26bc4caa12b0cbcc, + limb1: 0xd319f0cd4e3ebe07db6aa849, + limb2: 0x2c6ed961e5be52b, limb3: 0x0 } }, @@ -24,7 +24,7 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xd663049d155e18b1fa83ada4a2121ac5, high: 0xf1531cfca055362169df82b9bdee2d + low: 0xe28a2cdcdf484bd244a68754eab10f32, high: 0xe04755e797df425e588662d093c747c }, ] .span(); @@ -32,85 +32,85 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x0, - 0x0, + 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, - 0x1, -0x1, -0x1, - 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, -0x1, 0x0, - 0x0, - -0x1, -0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x0, -0x1, + 0x1, 0x0, + -0x1, 0x1, -0x1, 0x0, + -0x1, + 0x1, + 0x0, + 0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, 0x1, -0x1, 0x0, 0x0, - -0x1, 0x0, + 0x1, + -0x1, + -0x1, -0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x1, 0x0, - 0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, - 0x1, 0x0, 0x0, - 0x1, + -0x1, 0x1, -0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, -0x1, - 0x1, + 0x0, -0x1, 0x1, 0x0, 0x0, + 0x0, + 0x0, -0x1, - -0x1, + 0x0, 0x0, -0x1, -0x1, @@ -119,12 +119,11 @@ mod msm_tests { array![ -0x1, 0x0, + 0x1, 0x0, 0x1, - -0x1, 0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x1, 0x0, @@ -132,67 +131,70 @@ mod msm_tests { 0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x1, -0x1, 0x1, 0x1, + -0x1, 0x1, -0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x0, 0x1, 0x0, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, -0x1, 0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x0, + 0x0, + 0x0, 0x1, + 0x0, + 0x0, 0x1, -0x1, -0x1, + 0x0, + 0x1, + -0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, 0x1, - 0x1, 0x0, - 0x0, - -0x1, - -0x1, -0x1, - 0x1, 0x0, - 0x1, -0x1, -0x1, - 0x0, 0x1, + 0x0, 0x1, ] .span() @@ -203,73 +205,73 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xc5117782099b2067c7f1c198, - limb1: 0xe722130742e7db6ff47c1f27, - limb2: 0x281cee44f34164e9, + limb0: 0x38b831dcd278c412d1024d4e, + limb1: 0x25b61b6964a19172f0267595, + limb2: 0x2b3f31d79ee26829, limb3: 0x0 }, y: u384 { - limb0: 0x13928a199d2fc646746e86, - limb1: 0x36dc70652ab5346784ddf848, - limb2: 0x129898e457ff16b3, + limb0: 0x50a0d558ae6d7332e2dda1ee, + limb1: 0xb947f90d0e7b7c6c8bf3ac60, + limb2: 0x53e059f01a4dd45, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x4a84880717c45606f00e7334, - limb1: 0xf4cb90a99ce898017fd206a6, - limb2: 0x1d859fc73b00329b, + limb0: 0x2dec067f326e031ef03d0f2a, + limb1: 0x712217a7fbaadb9499775e7b, + limb2: 0x19bdc878d8402580, limb3: 0x0 }, y: u384 { - limb0: 0x59242e22f02e298a51d474bd, - limb1: 0x47810446655a5ddd7e4e2fa8, - limb2: 0x20003fcac2e9fa82, + limb0: 0x56ebeae106ec8600bd723dfd, + limb1: 0x55d117d69d1accd6f0947a12, + limb2: 0xf863ce45dfb7727, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x7e867e9dcf6be8ee8867928e, - limb1: 0xd42fe118e4a7c8e6f1625b39, - limb2: 0x2cc34fdeceec1386, + limb0: 0xcfd7fe5ea6c7bf98cefe8459, + limb1: 0x2aea6b41ac49551bb8e6015e, + limb2: 0x2740f963ab8fd594, limb3: 0x0 }, y: u384 { - limb0: 0xb781bce80fadfec005e7b472, - limb1: 0x4dbb89038a482d5b1fb3b6a5, - limb2: 0x238a30a65e9840ae, + limb0: 0x30d060651fae155425b7562c, + limb1: 0x9fa2d85c1f53c7b4e7baf138, + limb2: 0x28b8477432c17815, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x3c278aec26e7fa28bf969c6e, - limb1: 0x13c6cf38f8184fd4d86760bb, - limb2: 0xe4c9c3f647ae749, + limb0: 0xb237169816425142739b9ead, + limb1: 0xb897b7f81000049fd1d7d5a, + limb2: 0xb2e8fc27c2926af, limb3: 0x0 }, u384 { - limb0: 0xd39bddbd94630f9aa97ea6a6, - limb1: 0xb85045b68181585d2c7b4b94, - limb2: 0x30644e72e131a029, + limb0: 0xe027e7967460d9c25e98228, + limb1: 0xdc2822db40c0ac2e5a7ff722, + limb2: 0x183227397098d014, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x30a32757958e21eaaa1ff796, - limb1: 0xd3dbfff0c8009e00e796151e, - limb2: 0x25a2b6b7db5ee9df, + limb0: 0xcde90db7c8ac1372e9cdba34, + limb1: 0xad54bba787f0cc61f17ffdf7, + limb2: 0x156c2d9538f95030, limb3: 0x0 }, u384 { - limb0: 0xbe5a3770451bb61c916e0044, - limb1: 0xcac129bfa252afc045e4c147, - limb2: 0x20db8512ed89575c, + limb0: 0xbefe8af99049b90db82ec42a, + limb1: 0x9255a1742d8b496b207657cf, + limb2: 0x1ccc48cd4c403a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -277,49 +279,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x227da1e92032f93a8783722b, - limb1: 0x96514533e4211cef423b2f2f, - limb2: 0x2651ca905792d2bc, + limb0: 0x3ed2a4ebdd78b2433f4bf4c5, + limb1: 0xa4ce399a32b1725da2d1d4bd, + limb2: 0x1109276c2aab709c, limb3: 0x0 }, u384 { - limb0: 0xe42c7c46c5fa216c47c47fb4, - limb1: 0x942eaeef98be946c6b290316, - limb2: 0x1ce883db7d2a9469, + limb0: 0xa02b74a78ba487e14990aa99, + limb1: 0x79ec61c67b372e462e024b3b, + limb2: 0x140b32afd131a7a1, limb3: 0x0 }, u384 { - limb0: 0xc0a325c460dd9b1e5f1b36f5, - limb1: 0x6a2d29ecb28a334e30463d03, - limb2: 0x26a2f4d856b7c705, + limb0: 0xd27d193be2c63b3445e8aebf, + limb1: 0x43e6741243a23d36aca7d736, + limb2: 0x24adbd464d4bc893, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xc105e0ec48694d924d65ec34, - limb1: 0xaf3746554ff294787bf6a37, - limb2: 0x101f8741cfb97d4c, + limb0: 0x1495e9a1de3ae41e4ec3155, + limb1: 0x4faded4016510cc83cfe8f56, + limb2: 0xfe03a4cc9ba5068, limb3: 0x0 }, u384 { - limb0: 0x6a2b113657120a280350063e, - limb1: 0xefa2f1d1e3f55e85a2ab6eb4, - limb2: 0x1c9f2530638c5c2, + limb0: 0x3cfba0ecb0dd2b29288c4c7e, + limb1: 0xb700e45c88a1dc416163076f, + limb2: 0x5664da67e4c0af, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x30a32757958e21eaaa1ff796, - limb1: 0xd3dbfff0c8009e00e796151e, - limb2: 0x25a2b6b7db5ee9df, + limb0: 0xcde90db7c8ac1372e9cdba34, + limb1: 0xad54bba787f0cc61f17ffdf7, + limb2: 0x156c2d9538f95030, limb3: 0x0 }, u384 { - limb0: 0xbe5a3770451bb61c916e0044, - limb1: 0xcac129bfa252afc045e4c147, - limb2: 0x20db8512ed89575c, + limb0: 0xbefe8af99049b90db82ec42a, + limb1: 0x9255a1742d8b496b207657cf, + limb2: 0x1ccc48cd4c403a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -329,27 +331,30 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x8d4a5816a060947eb2bb84de, - limb1: 0x25c894c59870bc28a8429ca, - limb2: 0x17a17c28ac3d57ff, + limb0: 0xff1944bc663e92eca2671a42, + limb1: 0x43558aba57a2d1be555b3490, + limb2: 0x8db622a21ae6066, limb3: 0x0 }, u384 { - limb0: 0x804cba4b591100b39770455b, limb1: 0x7006c0, limb2: 0x0, limb3: 0x0 + limb0: 0x4d41e356f4e4047b276daaf1, + limb1: 0xdc2822db40c0ac2ed2793cdc, + limb2: 0x183227397098d014, + limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x5897afbe136b50b32a2bdd3c, - limb1: 0xc729fa01b6ad1506cbe0bfe8, - limb2: 0x18244235ef0c04bc, + limb0: 0xa0ca1253be4fc8bd54eb76f6, + limb1: 0x1682f90fbb5d789f67258764, + limb2: 0x9e7d76b41936563, limb3: 0x0 }, u384 { - limb0: 0x38e726eb36f2807d69514ea8, - limb1: 0xbd17ac1d4851f32eba8ed9c9, - limb2: 0x2b72d390a5ca89aa, + limb0: 0xc9cab65730547a0198f4024e, + limb1: 0x46e9a5359681ff4977256ee9, + limb2: 0x119e35a793ee82e3, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -357,49 +362,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf44c895d055ed13ed69ed560, - limb1: 0xa22276b8a4107b9178854879, - limb2: 0x188ecaef04ab4899, + limb0: 0x8cbc5719d231b36fef7cc7c8, + limb1: 0x9a27a92f131fe23d6c3d11a5, + limb2: 0x3f6621f4b4d68b, limb3: 0x0 }, u384 { - limb0: 0x71cfa9862d12d95200e8593a, - limb1: 0x2943b95cf80772c553baef02, - limb2: 0x191a18a7be3c369, + limb0: 0xa4db925e7100610700ad109d, + limb1: 0x6f73317bafce59a0ec61e1d5, + limb2: 0x1ef545260c876829, limb3: 0x0 }, u384 { - limb0: 0x11dd1eea658a3acbebd5385a, - limb1: 0x162f5708da61f95112625d7e, - limb2: 0x29a22655d96fe173, + limb0: 0xe275e8e96af07a4e7d5f0541, + limb1: 0x7199a438bd0623d2660cfea6, + limb2: 0xc699092ad69f273, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xa15544acfe216602a6069a6d, - limb1: 0x9d2da84ea285e6b6cc20d527, - limb2: 0x1808782eebf26e0c, + limb0: 0xe25e36fb3aef5a37fec264e2, + limb1: 0x4388eb2f321869de3570962d, + limb2: 0x1db78641c4ba3029, limb3: 0x0 }, u384 { - limb0: 0xd9d1dfa72c96694a8af9f16a, - limb1: 0xc6a678ead5f328d100a9b838, - limb2: 0x218fddcc2efc5cac, + limb0: 0xf4ee587854dce1edf25f09a3, + limb1: 0x1c6ca9ea4204a57ecdeee22b, + limb2: 0x4765283da99e880, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5897afbe136b50b32a2bdd3c, - limb1: 0xc729fa01b6ad1506cbe0bfe8, - limb2: 0x18244235ef0c04bc, + limb0: 0xa0ca1253be4fc8bd54eb76f6, + limb1: 0x1682f90fbb5d789f67258764, + limb2: 0x9e7d76b41936563, limb3: 0x0 }, u384 { - limb0: 0x38e726eb36f2807d69514ea8, - limb1: 0xbd17ac1d4851f32eba8ed9c9, - limb2: 0x2b72d390a5ca89aa, + limb0: 0xc9cab65730547a0198f4024e, + limb1: 0x46e9a5359681ff4977256ee9, + limb2: 0x119e35a793ee82e3, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -409,9 +414,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x5769d8dd482248eaa50c9f81, - limb1: 0xc4822560789312bd98fc16c8, - limb2: 0x19216fc7a8e781f3, + limb0: 0xc7bd23ca8caeb846e722be1a, + limb1: 0x5624a3d190ae30359207764c, + limb2: 0x23aede4b48ccf53a, limb3: 0x0 }, u384 { @@ -424,15 +429,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xb5964cdb8050ba19606903ef, - limb1: 0xe21dcf51cbcfebb44f188237, - limb2: 0x12f59eb69c4d968f, + limb0: 0x4f1c332c1ebf8287ab7da962, + limb1: 0x485e78278bde69416affc6ed, + limb2: 0x46b6a01d90922a6, limb3: 0x0 }, u384 { - limb0: 0x7d88e759110d9383883f4cc, - limb1: 0xa7a519aa81724fd2bdce7343, - limb2: 0x167fad3fb876fa30, + limb0: 0xd31f903c9f0b5575f1be670b, + limb1: 0xd49408835b0e800adca57548, + limb2: 0x1fc9db093e93453e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -440,49 +445,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x147b6082a931541c1c385716, - limb1: 0x9c4e2bac055cffae501d96a, - limb2: 0x8c509acdf75823b, + limb0: 0x92b318f44cfa3e5c28d6cdc0, + limb1: 0x224cf2f3f5c828c3d8c9da2e, + limb2: 0x4ab3abbf8685f28, limb3: 0x0 }, u384 { - limb0: 0xa20b4ecb319dbb233fde609, - limb1: 0x53e16a87e4145698aa77f98b, - limb2: 0x270cb1f436483808, + limb0: 0xc868a80b839eedcba501e2c1, + limb1: 0x2e19f381b85c79f10f4dcdf6, + limb2: 0x746d023cd1cf00f, limb3: 0x0 }, u384 { - limb0: 0x27df95f50228692bac801f30, - limb1: 0x675f050d46f23cf472a3b959, - limb2: 0x117acc43ea584140, + limb0: 0xe7f30db0a7d1e5ef2793b4d5, + limb1: 0xc0e7f6f74185948d0cdb0f91, + limb2: 0x2d2c68bc7a157a66, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xb8511c0544d1a23548be0e86, - limb1: 0xee09283ee1ee6abf55c81c15, - limb2: 0x87c8db0f3b72385, + limb0: 0xed5499845c3e87970278fc26, + limb1: 0xd91b6876a39b3bc440ff54c7, + limb2: 0xd423e058b1b67f2, limb3: 0x0 }, u384 { - limb0: 0xaf17e0d37711ff91d10ee11d, - limb1: 0x3e9f074902d5971aa1e9ef37, - limb2: 0x131ab94c48334e68, + limb0: 0x10ece628a101744afcbe37da, + limb1: 0xc56bd3d38faa27c2fe6ef549, + limb2: 0x2ef942a8da882f92, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xb5964cdb8050ba19606903ef, - limb1: 0xe21dcf51cbcfebb44f188237, - limb2: 0x12f59eb69c4d968f, + limb0: 0x4f1c332c1ebf8287ab7da962, + limb1: 0x485e78278bde69416affc6ed, + limb2: 0x46b6a01d90922a6, limb3: 0x0 }, u384 { - limb0: 0x7d88e759110d9383883f4cc, - limb1: 0xa7a519aa81724fd2bdce7343, - limb2: 0x167fad3fb876fa30, + limb0: 0xd31f903c9f0b5575f1be670b, + limb1: 0xd49408835b0e800adca57548, + limb2: 0x1fc9db093e93453e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -492,28 +497,28 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x103f6e0c9b40bccc4c38ff9c, - limb1: 0x2f6959ef50b4d06d15b0c5e9, - limb2: 0x16051b19bca4c5c9, + limb0: 0x9513a2829388c0f0fe91435a, + limb1: 0x7d3749c9dd6267bd011b0d29, + limb2: 0x8657711254a5879, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0x9d678c4a457ba42b83bb47da, - limb1: 0x841a8e510a3271702f848f49, - limb2: 0x119d3f0a34f4d64f, + limb0: 0xbe288338321519ae6c9211b6, + limb1: 0x6b3dddea938efb854c7dc447, + limb2: 0xfadcc4aede5c59, limb3: 0x0 }, u384 { - limb0: 0xde51d5c4051748c46aa7fe43, - limb1: 0x592b257fb869b74369346df7, - limb2: 0x180b71132bb35ea9, + limb0: 0x566422b41437cb27977c8e1, + limb1: 0x501dc085eec8cf76d1bc03c7, + limb2: 0x9eba93c56bb9c1a, limb3: 0x0 }, u384 { - limb0: 0x5bc4d7fecde150de9b7d4b35, - limb1: 0x6c13a54625426fa8aac14823, - limb2: 0x17515fbfaccff10c, + limb0: 0x7824805faf65222868f47513, + limb1: 0xb7d955c7c920104b57b53dda, + limb2: 0x784ae2baa3d9726, limb3: 0x0 } ], @@ -524,15 +529,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x62b212efea401895523ff7af, - limb1: 0xd9df3200f41ee850f682f12e, - limb2: 0xb72cba276217301, + limb0: 0x755dace3d3dca08b7fcf5f4, + limb1: 0x598723037007f5088d8435f7, + limb2: 0x213f3f0597429512, limb3: 0x0 }, y: u384 { - limb0: 0xd2a0f81725741a530e5c7c64, - limb1: 0x9bfd5787361f21e07938374f, - limb2: 0x1196dac35991f208, + limb0: 0x702c7623057f496cd3b67267, + limb1: 0xf4bfc4087f0a9d084e0d02f1, + limb2: 0x1094123564411ea0, limb3: 0x0 } } @@ -545,29 +550,29 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xcc90ea12de8aed8fd979732b, - limb1: 0x18bebc124611385797fc958e, - limb2: 0x1ef65de1010a817c, + limb0: 0xd85db6d7c70d9de3a4aa017d, + limb1: 0xed44de4d757e6294d230757a, + limb2: 0x1a18df63ad331bea, limb3: 0x0 }, y: u384 { - limb0: 0x35ad95b5e82e70a86efc52cd, - limb1: 0x57be9893521ae4a0fd28a4e8, - limb2: 0x1b62f58c6ef1fa8b, + limb0: 0xcf68339b1bc02cf142e3fcb8, + limb1: 0xb78903da23363e7f6b21045a, + limb2: 0xda94969d7630b5f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x3f5a2284656f2f004e781789, - limb1: 0xcfdff380ec0596b9d40d22eb, - limb2: 0x2f39ca4617031601, + limb0: 0xe517b4c3c6d4e9a1cffde0d8, + limb1: 0xb4709b7abc68a4e391d8b609, + limb2: 0xe7c925dee8cae1c, limb3: 0x0 }, y: u384 { - limb0: 0xb01666464bfb5383bfb093d0, - limb1: 0xd4fc090f1d7df43fdee5f05d, - limb2: 0xafffd2fcb1b22c2, + limb0: 0x7884c6913a9c767d78a9eca8, + limb1: 0x75e85b933ba117a70ca7796, + limb2: 0x9e35b2161c0fa58, limb3: 0x0 } }, @@ -575,10 +580,10 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x9bbd750d1e707c5230c1fb6a19086515, high: 0x135ac8d3dfa7c6ed32d1f81ba636425c + low: 0xb2584e6316bdb2be361e837a6c8a1117, high: 0x19bb6939d9779fe47702597fd392850a }, u256 { - low: 0x34ab18fd0a68e88e0ad4041504c14982, high: 0x142442f78ef066d44279b14dae55cdff + low: 0xc586cbbe67965e6ded6bcbe67c81e070, high: 0x1382973b870a31f661ae477f9ca252b1 }, ] .span(); @@ -586,335 +591,338 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x1, 0x1, -0x1, -0x1, - -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, -0x1, 0x0, - -0x1, - 0x1, 0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x0, 0x0, -0x1, 0x1, -0x1, - -0x1, - -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x0, 0x1, 0x0, 0x0, 0x1, - -0x1, + 0x1, 0x0, + 0x1, + 0x1, + 0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x0, + 0x1, -0x1, -0x1, 0x0, + 0x1, -0x1, 0x0, - 0x0, -0x1, - 0x0, -0x1, 0x0, - 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x1, 0x0, - 0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, + 0x0, -0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, + 0x1, 0x0, + -0x1, 0x0, 0x1, + 0x1, -0x1, -0x1, - 0x1, + -0x1, + 0x0, 0x1, -0x1, + -0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ - 0x1, - 0x1, - 0x0, -0x1, 0x0, - -0x1, 0x1, + 0x0, 0x1, -0x1, - -0x1, 0x1, 0x0, + 0x1, + 0x0, + 0x1, 0x0, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x0, -0x1, 0x1, -0x1, 0x0, -0x1, - 0x1, + -0x1, + -0x1, + 0x0, + 0x0, 0x0, + 0x1, + 0x1, -0x1, 0x1, 0x0, + 0x0, 0x1, 0x1, + 0x0, 0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x0, - -0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, -0x1, 0x1, -0x1, -0x1, - 0x0, + 0x1, -0x1, - 0x0, + 0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, - -0x1, 0x1, 0x0, - 0x0, -0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, + -0x1, + -0x1, -0x1, -0x1, 0x0, 0x1, 0x1, - -0x1, - 0x0, 0x1, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, 0x0, -0x1, - 0x1, - -0x1, -0x1, ] .span() ), ( array![ - 0x0, - 0x1, - -0x1, -0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, + 0x1, -0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, - -0x1, - -0x1, - 0x1, - 0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x1, - -0x1, - -0x1, 0x0, 0x0, + 0x1, + -0x1, + 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, - 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, 0x0, + -0x1, + 0x1, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, - -0x1, 0x1, 0x1, 0x1, + -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, 0x0, - 0x0, -0x1, - 0x1, - 0x0, -0x1, - 0x0, -0x1, -0x1, -0x1, - 0x1, - -0x1, - ] - .span(), - array![ -0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, - 0x0, + 0x1, + -0x1, 0x1, 0x0, + 0x0, -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, 0x1, -0x1, -0x1, + ] + .span(), + array![ + 0x0, + 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, - 0x0, 0x1, 0x0, -0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x1, - -0x1, 0x0, -0x1, -0x1, - 0x1, -0x1, -0x1, - 0x1, + 0x0, 0x0, 0x1, 0x1, - 0x1, + 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x0, 0x0, - 0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x0, -0x1, + 0x0, + 0x0, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x1, + 0x0, + -0x1, -0x1, 0x0, + 0x1, + -0x1, 0x0, + -0x1, 0x0, + -0x1, 0x1, 0x0, + -0x1, + 0x1, + 0x0, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, @@ -927,82 +935,85 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x656e1805beabcabcf398e1a5, - limb1: 0x3bb5d5e20921a39aabf84cf4, - limb2: 0x2b99a7f19537989e, + limb0: 0xdee31ae04765f2a05ed90263, + limb1: 0xf7d2b20d533efbb6c491d874, + limb2: 0x28ffa055abb2a6cb, limb3: 0x0 }, y: u384 { - limb0: 0x6b8d5115329a2ac26f4f96c2, - limb1: 0xd58a7745f6db31cb67a55472, - limb2: 0x2fe31953251dc9ef, + limb0: 0x32a7a98bb41b416d65c6389a, + limb1: 0x70249a3f8d0f98b3d07a60e4, + limb2: 0x524fdc5e7ea49d7, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x87631d075a24e567a4b35b14, - limb1: 0x58800126ca1768efbda3ffa1, - limb2: 0x80596b98fa431ac, + limb0: 0xd75ed6b0c765c919e624f126, + limb1: 0x19721be05b2db9081ed9d391, + limb2: 0x2fbf3305895570a5, limb3: 0x0 }, y: u384 { - limb0: 0x5793cf46497266aa6e088c16, - limb1: 0x431ff567f9bfdc54a1e7453, - limb2: 0x1a04c95f556b1030, + limb0: 0x8d42e7cf9dd8b4596614fce1, + limb1: 0x7c806468d77d349d156203fa, + limb2: 0x3058871928a38f8f, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xe12aa1cabba852a5070e8a1b, - limb1: 0x6bd5e1b4da458c9c9ca5209b, - limb2: 0x2c2bccca42776669, + limb0: 0x843ef82a2957a63b62058c5c, + limb1: 0x7c05bfeb74a6debc3fff157e, + limb2: 0x7df657d2b5d3369, limb3: 0x0 }, y: u384 { - limb0: 0x9ede6b7863a20e02936d2699, - limb1: 0x81c69facd8434d20f8dc8c89, - limb2: 0xfebc70c4d150fb7, + limb0: 0x5f1418251fcc7f63948e0a0a, + limb1: 0x5c14774d5dca2a8f9360fe34, + limb2: 0x19aa7bdf77675127, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x3023dd13e94e495b2ff28c34, - limb1: 0x5b68ace6fb7f254b9408f6e1, - limb2: 0x1843943370aeaf4c, + limb0: 0xb6ba374af4e8871d2fa18c5a, + limb1: 0x8d29195b969c26eb15013838, + limb2: 0x2d3424f233d3738f, limb3: 0x0 }, u384 { - limb0: 0x293f51f282e78b0bcfdc05fe, - limb1: 0x14c40097287899ba0e85cb84, - limb2: 0x1fd55910a00f4bba, + limb0: 0xfd5a8de2fe6011c5eeda3d13, + limb1: 0x62710bca3fed508e6801c58b, + limb2: 0x258e7057197777a6, limb3: 0x0 }, u384 { - limb0: 0x3cc90139cc16bc1445cb3ce1, limb1: 0x1bbbee7f, limb2: 0x0, limb3: 0x0 + limb0: 0x4365873a1d561fa7bc139db, + limb1: 0xb85045b68181585c9f27cf64, + limb2: 0x30644e72e131a029, + limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x77277b9049d336240765ba9c, - limb1: 0x97e383d75ac0d8b671b21241, - limb2: 0x14955f5cd948493b, + limb0: 0x46f0e21102c1d70a72972941, + limb1: 0x7e93b0b722e247834df2de81, + limb2: 0x1c75c3fa97306fdc, limb3: 0x0 }, u384 { - limb0: 0x2b226689c471209dd5a8e228, - limb1: 0x1343dc144f6823777f708a79, - limb2: 0x28883a294dbd76e5, + limb0: 0x62552a7bf8df81fe806988f8, + limb1: 0xd0368bada90eae365648259f, + limb2: 0x2f407474901fcb49, limb3: 0x0 }, u384 { - limb0: 0xc7fc3b0ab1bbbcf76dec8b7c, - limb1: 0x49c4bae494b966cae823a45, - limb2: 0x17631b3ff64fb061, + limb0: 0x348b0e9ea2f89e07dd7915d6, + limb1: 0xd7185f977ddcad8c0667d129, + limb2: 0xf338ace7af0cf7f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1010,66 +1021,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x4ea34dd11aad8b9ae956b777, - limb1: 0x85e1d0f3fd03d6d167410d60, - limb2: 0x17691cce61b33129, + limb0: 0x32334796ea7bfab9479c13cf, + limb1: 0x25e90b76517f319e0ca9d37b, + limb2: 0x16ddedab32cf4e1b, limb3: 0x0 }, u384 { - limb0: 0xc23889dff77ce39e4cc39ef6, - limb1: 0xd702ea4fd395467b3797294, - limb2: 0x3f5a2401b1275c9, + limb0: 0x87423c91730b750a2f997a1, + limb1: 0x2ba985c0c32956e5c66b20f7, + limb2: 0x2cc2a852ede25345, limb3: 0x0 }, u384 { - limb0: 0x7ad988ae6e41f4005e56eea5, - limb1: 0x393acebb51857f96e6c670f1, - limb2: 0x148ecd1bfa8433b7, + limb0: 0xc96fc32d9facb0c6412b0dce, + limb1: 0x406f95eee3c995231efc9ca1, + limb2: 0x1ffe38b857a41a49, limb3: 0x0 }, u384 { - limb0: 0x29255931559562035c3fad3d, - limb1: 0x64479c44c0e6220a4507dafc, - limb2: 0x54fbbeced4e098, + limb0: 0xa45d866890c63cddc773b135, + limb1: 0xe82cb939f9fd2873eed9885d, + limb2: 0x29a5757354f8aadc, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xfd04a823a15916553db4328d, - limb1: 0xf5a45cf8ec131c5bd94cc32, - limb2: 0xd5bcfa3aaa73b89, + limb0: 0x6c60dba5cc24f9087f487e7c, + limb1: 0xc36acc6ee7257e2c525730f2, + limb2: 0x24fcfd7ce45faf6b, limb3: 0x0 }, u384 { - limb0: 0xb0839e82d51249abd000abea, - limb1: 0xc92b08cfeb35b9ab4f4eca48, - limb2: 0x18d0119626d5245b, + limb0: 0x561bea59725d6dcdd042a05a, + limb1: 0x3179bf82959e7d3d59bbb, + limb2: 0x2cf8c077edfc218a, limb3: 0x0 }, u384 { - limb0: 0xef82e692d912aacf7148a52d, - limb1: 0x55849d545a616ae87405443f, - limb2: 0x15c5034d01bd70f9, + limb0: 0x9da12bdbe8e9da17986b4182, + limb1: 0x85491ec6799608a41337737b, + limb2: 0x2d9aa06b70d26e7f, limb3: 0x0 }, u384 { - limb0: 0x77277b9049d336240765ba9f, - limb1: 0x97e383d75ac0d8b671b21241, - limb2: 0x14955f5cd948493b, + limb0: 0x46f0e21102c1d70a72972944, + limb1: 0x7e93b0b722e247834df2de81, + limb2: 0x1c75c3fa97306fdc, limb3: 0x0 }, u384 { - limb0: 0x2b226689c471209dd5a8e228, - limb1: 0x1343dc144f6823777f708a79, - limb2: 0x28883a294dbd76e5, + limb0: 0x62552a7bf8df81fe806988f8, + limb1: 0xd0368bada90eae365648259f, + limb2: 0x2f407474901fcb49, limb3: 0x0 }, u384 { - limb0: 0xc7fc3b0ab1bbbcf76dec8b7c, - limb1: 0x49c4bae494b966cae823a45, - limb2: 0x17631b3ff64fb061, + limb0: 0x348b0e9ea2f89e07dd7915d6, + limb1: 0xd7185f977ddcad8c0667d129, + limb2: 0xf338ace7af0cf7f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1079,20 +1090,20 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x5202f0874785cb057db9f9a0, - limb1: 0x287f5e80843c2aaed353013d, - limb2: 0x2fdb4587441362f7, + limb0: 0xc51aab3049965642da2d81d0, + limb1: 0xc25886537f0e20df1b077357, + limb2: 0x202e85de815424ea, limb3: 0x0 }, u384 { - limb0: 0x431b3c0e8533c08ad821acf1, - limb1: 0x99657338d2108055b674a54b, - limb2: 0x2055fcf8c54445f8, + limb0: 0x62cd40fe2fcee436e4234819, + limb1: 0x6b3b157782cd63d89572d554, + limb2: 0x2a3209378ea5003f, limb3: 0x0 }, u384 { - limb0: 0xa0f35447520e77485ed9d8cf, - limb1: 0xb85045b68181585d7b374863, + limb0: 0xe106752fc6938dd7ad62f09c, + limb1: 0xb85045b68181585d7dc8e20e, limb2: 0x30644e72e131a029, limb3: 0x0 } @@ -1100,21 +1111,21 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x41e9c63a129b2b64a9b4cb87, - limb1: 0x1eb5937d24d1d7bfda80a51b, - limb2: 0x10d22c68dcd65c24, + limb0: 0x411b499a9c17f6fbf9dbf6b, + limb1: 0xf7f7a679eac7dadfeaf6e83f, + limb2: 0x11340a5b879ea19b, limb3: 0x0 }, u384 { - limb0: 0xc3b32d36ad8c8563c0b6fb7e, - limb1: 0x530b8f9cad46c7bb087958eb, - limb2: 0x2e83348f98782eee, + limb0: 0xc95af33094d9957985d52fda, + limb1: 0xabb3de99011767c168ed6b3d, + limb2: 0x2b7452d1007fc989, limb3: 0x0 }, u384 { - limb0: 0x3d956b7bda221635e45514c6, - limb1: 0x2f81dab306d478ba05551d07, - limb2: 0xa92de051ab17729, + limb0: 0x3c0f52ce22f8c78e562d2713, + limb1: 0xb578f5c475edf03aac1fd60c, + limb2: 0x873f81e9d4e05a6, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1122,66 +1133,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe90af9da818aed64596d9fdc, - limb1: 0x88e50626fce39481b00866fc, - limb2: 0xb383962b4e2cb88, + limb0: 0x1a3452d1fb5aa554addd22de, + limb1: 0x7bc53b876077006990f73ea1, + limb2: 0x61074515f8051ac, limb3: 0x0 }, u384 { - limb0: 0x51b197f34a0534bc580a7356, - limb1: 0x6d793bf15eec7f785f8ed8bb, - limb2: 0x1b07cc2c46d5f6a6, + limb0: 0xb74b0c303204fd6ca0eaf396, + limb1: 0x95ff440d50e365491d187bdb, + limb2: 0x2dcd0ec2be902618, limb3: 0x0 }, u384 { - limb0: 0xa6210a5aa5e1c469a00d508b, - limb1: 0x1c6d0c6b95fc5db737c57d1e, - limb2: 0xc4f3be5dcca4fff, + limb0: 0xbf0769af64966612c2d09379, + limb1: 0x3e271d96b7877080b79e2c08, + limb2: 0xdb56e5e45b3ce54, limb3: 0x0 }, u384 { - limb0: 0x3a40a78e09be3ae91f55ae8d, - limb1: 0xb567281e0189838129fc577d, - limb2: 0xbc4b6280d5d33ae, + limb0: 0xb49c55c34a35a7841e780cdc, + limb1: 0xa741dedfb7674845dbecb640, + limb2: 0xc8b2b3eca022d50, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x5d4b8820fbb0f61724a1654e, - limb1: 0xa3d074c0ecf42ee1f80084c0, - limb2: 0x21236c7b5517442, + limb0: 0xa3c3533fc123f238665c40fa, + limb1: 0x2f96adb73ed6384229634e2b, + limb2: 0x337d09fb5aa44aa, limb3: 0x0 }, u384 { - limb0: 0x7a35f289906477fd912af7ec, - limb1: 0x8882236904d1a675ea6935a0, - limb2: 0x2ac100c907054c77, + limb0: 0x8b2d4477464ba83ee0859500, + limb1: 0x927b105e004386890bc56c96, + limb2: 0x21945b8d3f1c1c49, limb3: 0x0 }, u384 { - limb0: 0xb8c042738e6642a1acff3e52, - limb1: 0x8e859019147d6a2e0fff5715, - limb2: 0x1fb89a0f5014657b, + limb0: 0xb42df86a68ea56ab02877539, + limb1: 0x206ae14d61c9d0b0045f8224, + limb2: 0x195be85bd7ea10f4, limb3: 0x0 }, u384 { - limb0: 0x41e9c63a129b2b64a9b4cb8a, - limb1: 0x1eb5937d24d1d7bfda80a51b, - limb2: 0x10d22c68dcd65c24, + limb0: 0x411b499a9c17f6fbf9dbf6e, + limb1: 0xf7f7a679eac7dadfeaf6e83f, + limb2: 0x11340a5b879ea19b, limb3: 0x0 }, u384 { - limb0: 0xc3b32d36ad8c8563c0b6fb7e, - limb1: 0x530b8f9cad46c7bb087958eb, - limb2: 0x2e83348f98782eee, + limb0: 0xc95af33094d9957985d52fda, + limb1: 0xabb3de99011767c168ed6b3d, + limb2: 0x2b7452d1007fc989, limb3: 0x0 }, u384 { - limb0: 0x3d956b7bda221635e45514c6, - limb1: 0x2f81dab306d478ba05551d07, - limb2: 0xa92de051ab17729, + limb0: 0x3c0f52ce22f8c78e562d2713, + limb1: 0xb578f5c475edf03aac1fd60c, + limb2: 0x873f81e9d4e05a6, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1191,9 +1202,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x53b7e7388371a2778032e754, - limb1: 0xcf2d1a6c7fbb58e36687e9a0, - limb2: 0x2930a11168f1a148, + limb0: 0xf774e7c566edf8e765c76b6c, + limb1: 0xb5e94a46ef24e10903aacd47, + limb2: 0x2f7d2bc889a1059a, limb3: 0x0 }, u384 { @@ -1206,15 +1217,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe54df8d7f3a74471aff8d307, - limb1: 0x1a354d1a7222c5d502aa8da8, - limb2: 0xfa23197dd3162af, + limb0: 0xcc03ff8fb2819834d2771dbf, + limb1: 0xc948eada5cd8f25cba3befaa, + limb2: 0x5a0f952b5a4dbb, limb3: 0x0 }, u384 { - limb0: 0x6855d6486273e0210538155f, - limb1: 0xac4aa8915ea5bb2ed4b9b4e5, - limb2: 0x2c973961f047a83d, + limb0: 0x7545c63f8783a8d868cf7d0c, + limb1: 0xdb28afa1332e18f6d029ec12, + limb2: 0x292a04630db09c44, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1222,49 +1233,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe355ffadea9d9bfd8c87d36f, - limb1: 0xa6040f20eb4723809ec573f5, - limb2: 0x92b87a2ae959a81, + limb0: 0xd5443acd6222a885733d2218, + limb1: 0x4bb9a5d08d57280c86e3f99b, + limb2: 0x276c5526bd465613, limb3: 0x0 }, u384 { - limb0: 0x687eeb1d8cd7f86c1f9a3254, - limb1: 0x9b8b1f6c22ef6f2dc68371e7, - limb2: 0x3491c6199f8dc6d, + limb0: 0xd5d37f4584e1e6b8c688fb6d, + limb1: 0x9c51fae4354cb8d439b1c9b4, + limb2: 0x253f63e75fc3e2c1, limb3: 0x0 }, u384 { - limb0: 0xe3f3732f169489bb9fc07767, - limb1: 0x9686889a721840f956c994e6, - limb2: 0x1920813ab6b4ed9, + limb0: 0x6ef27f1c9ea595887e8c0e30, + limb1: 0x8070896d1d1a379297cf352f, + limb2: 0x8bc10744b15e39f, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xafe9ea87daf5cd550fea7915, - limb1: 0x4e9fe74f5668517f07ffa8fa, - limb2: 0x2ee694c79794280d, + limb0: 0x640bfeaf1784c89e7765593d, + limb1: 0x5bdac08f168ad7162eb3cf00, + limb2: 0x10e2ebf820ee933, limb3: 0x0 }, u384 { - limb0: 0x681dedbeaf1a88355eae458f, - limb1: 0x943f6e4718ee80d14f2a498d, - limb2: 0x24fd0f400e73b865, + limb0: 0x8eedbda41e49e25b89747c96, + limb1: 0x20d9837696879a29417aef14, + limb2: 0x1ab5704366ae947b, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xe54df8d7f3a74471aff8d307, - limb1: 0x1a354d1a7222c5d502aa8da8, - limb2: 0xfa23197dd3162af, + limb0: 0xcc03ff8fb2819834d2771dbf, + limb1: 0xc948eada5cd8f25cba3befaa, + limb2: 0x5a0f952b5a4dbb, limb3: 0x0 }, u384 { - limb0: 0x6855d6486273e0210538155f, - limb1: 0xac4aa8915ea5bb2ed4b9b4e5, - limb2: 0x2c973961f047a83d, + limb0: 0x7545c63f8783a8d868cf7d0c, + limb1: 0xdb28afa1332e18f6d029ec12, + limb2: 0x292a04630db09c44, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1274,19 +1285,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x23edc9e1f189ee28b5c96aa2, - limb1: 0xf65270191fc126791fa52196, - limb2: 0x15f76aa4600a35a3, + limb0: 0x5cfd27b8694e337b600ba5c7, + limb1: 0xff2ad7f2588d8157f583fe68, + limb2: 0x10c47276f11b5364, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x671c9bef09d1e449c14b4e16, - limb1: 0x658539630e46fe6b1dbc555e, - limb2: 0x178b84086ff0e08d, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 0 @@ -1294,15 +1298,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xb4bcddaffa49b216b9f093ae, - limb1: 0x793975263614e1ae0a9ce48a, - limb2: 0xf89c89ad0c932fe, + limb0: 0x9a1d65fd07be5218ad7db68, + limb1: 0x8b1d8454599114eb21533193, + limb2: 0x5083ac7aa053f01, limb3: 0x0 }, y: u384 { - limb0: 0x9407363be83443581374b186, - limb1: 0x10bb37713f4fa13f3e62ae53, - limb2: 0x1a9dffe707cb05a6, + limb0: 0x131b142a49030d838672290c, + limb1: 0x6ea874e3ae69c445e52716c2, + limb2: 0xd0031ef72c245a2, limb3: 0x0 } } @@ -1315,43 +1319,43 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xbc4eda43dbd99e2947ee120c, - limb1: 0x28af48dee632abb38cf4d634, - limb2: 0x1bab8f652dbe048e, + limb0: 0xe19dbab8f16007a6f41c8c56, + limb1: 0x25fed5892a37991054a51e22, + limb2: 0x1d63a5bcd91f5c70, limb3: 0x0 }, y: u384 { - limb0: 0xa56603366a640c83c436fe75, - limb1: 0x20623c2c9361ccb63c95dd90, - limb2: 0x1a62c6a8ee17c05d, + limb0: 0xbebdd00d68b4b8c683652c13, + limb1: 0x446446596eb9cb77342d8dfb, + limb2: 0x2131c43d6d42b6b2, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1dd125cd7a0735cf15086cce, - limb1: 0x4b6259d0ba0d5112db4f7563, - limb2: 0x5b3567302bc900, + limb0: 0x6e367bd520f79c5113ceea39, + limb1: 0xca9c316214d0ac871ae173a7, + limb2: 0x1ccebe65d63301bb, limb3: 0x0 }, y: u384 { - limb0: 0x820452f12010af3f0fbc1ef2, - limb1: 0x39f4bb7f944328ae6c8df362, - limb2: 0x222aba35c40d6858, + limb0: 0xec8424455d4be386ff64e07e, + limb1: 0x62ab69bed7a568ab657b159d, + limb2: 0xc6c878c5e7bd95f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd148adbd01949e058515ef97, - limb1: 0x6237f22f04e6569429fa94fb, - limb2: 0x3018ecbbfd46472, + limb0: 0x9aa98a198d958dbcfdd69940, + limb1: 0x5d4ea8f9518684e772ffb19f, + limb2: 0x12f498d522ce834f, limb3: 0x0 }, y: u384 { - limb0: 0x99c11dcd9d69263e6a28ca0b, - limb1: 0x27f4caa6996f4d3b9622be09, - limb2: 0x2bb083f8e0000c5d, + limb0: 0xa26f181aa3e2d043feb9323f, + limb1: 0xf533e40e3a50c062d6d71f33, + limb2: 0x13a1ff751e9a0e8d, limb3: 0x0 } }, @@ -1359,13 +1363,13 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x4505f4f60a8c46c709215f4f9edb95f2, high: 0x2557439dfb5eb8662640211e29f2c3c7 + low: 0xcd8306bdc0b1f20bdaca1b1cb970e24b, high: 0xe312fafbfb8d29346ec2e0b10827d57 }, u256 { - low: 0xfd42f697651116565c6460364a1eb1b7, high: 0x75a767f4b1cb8bd2130260c8c69778f + low: 0xe7f7ce72b2f52b4dba76196ebf49e795, high: 0x3054c84903d4ddfe7ddd692b27bbd243 }, u256 { - low: 0x4d7bd307122411e6ba8982dd85e69ea9, high: 0x132682b85419eefcd5e73e3f673617d9 + low: 0xeb3e1e5eeec0d76505a08ac8fe610c93, high: 0x2e445878005f8d1908d4fe99c518432b }, ] .span(); @@ -1373,199 +1377,186 @@ mod msm_tests { array![ ( array![ - -0x1, + 0x0, + 0x0, 0x1, + 0x0, -0x1, -0x1, 0x0, - -0x1, - 0x1, - 0x1, 0x1, - 0x0, -0x1, - 0x1, - 0x0, - 0x0, + -0x1, 0x0, -0x1, - 0x1, -0x1, -0x1, 0x0, - 0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, 0x0, + 0x0, -0x1, 0x0, 0x1, 0x0, + 0x1, -0x1, 0x0, + -0x1, + 0x1, + 0x1, 0x1, 0x1, 0x0, 0x0, + -0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x1, - -0x1, 0x0, -0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, - 0x0, - 0x1, -0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x1, - -0x1, + 0x1, 0x1, -0x1, -0x1, - 0x1, + 0x0, 0x1, 0x0, 0x0, -0x1, -0x1, -0x1, - 0x0, - -0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x1, 0x0, + -0x1, + 0x0, 0x1, + 0x0, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, ] .span(), array![ + 0x1, 0x0, -0x1, -0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, + 0x0, -0x1, -0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x0, - 0x1, - 0x1, 0x0, - 0x1, + 0x0, + 0x0, -0x1, -0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x0, 0x1, - 0x1, - 0x0, - 0x0, - -0x1, 0x0, 0x1, - 0x0, 0x1, - 0x0, - -0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, -0x1, -0x1, 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, 0x1, + 0x0, + 0x0, -0x1, + 0x0, 0x1, -0x1, - 0x1, -0x1, 0x1, 0x1, 0x1, - 0x1, - 0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x1, - 0x1, + 0x0, -0x1, -0x1, 0x1, + -0x1, 0x1, + 0x0, + 0x0, + -0x1, + 0x0, + 0x0, -0x1, + 0x0, -0x1, 0x0, 0x0, 0x0, -0x1, + 0x1, + 0x0, + 0x1, ] .span() ), ( array![ - -0x1, - -0x1, - 0x1, 0x0, - 0x1, -0x1, - -0x1, - -0x1, - 0x1, 0x1, - 0x1, - -0x1, - -0x1, 0x0, 0x0, - -0x1, 0x1, - -0x1, 0x0, 0x1, 0x0, - 0x0, - -0x1, 0x1, + -0x1, 0x1, 0x0, 0x1, @@ -1573,164 +1564,177 @@ mod msm_tests { -0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, - 0x0, -0x1, - 0x0, - 0x0, + -0x1, 0x0, -0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x1, + 0x0, 0x1, + 0x0, -0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x1, + -0x1, + 0x0, 0x1, + -0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x0, + 0x0, + 0x1, + 0x0, + 0x0, -0x1, - -0x1, + 0x0, 0x1, 0x1, -0x1, - -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, + 0x0, 0x0, - -0x1, 0x1, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, -0x1, -0x1, ] .span(), array![ + 0x1, 0x1, -0x1, - -0x1, - 0x0, 0x1, 0x1, + -0x1, + 0x1, 0x1, -0x1, + 0x1, -0x1, + 0x0, 0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, -0x1, + -0x1, 0x1, + -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x1, + 0x1, -0x1, 0x0, - 0x0, + 0x1, + -0x1, + 0x1, + 0x1, + -0x1, -0x1, -0x1, + 0x0, 0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, + 0x0, -0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x1, + 0x0, -0x1, - 0x1, - 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x1, - 0x1, -0x1, - 0x1, + -0x1, + -0x1, 0x0, 0x1, 0x0, + -0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, - 0x0, 0x1, 0x1, - 0x0, + -0x1, 0x1, - 0x0, 0x1, + -0x1, 0x0, 0x0, 0x1, - 0x0, -0x1, - 0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x1, + -0x1, ] .span() ), ( array![ - 0x1, -0x1, 0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x0, + 0x1, 0x0, -0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, -0x1, -0x1, - 0x0, 0x1, - 0x0, + 0x1, -0x1, -0x1, 0x1, @@ -1738,122 +1742,121 @@ mod msm_tests { 0x0, 0x1, 0x0, - 0x0, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, - -0x1, -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x0, 0x0, - 0x1, 0x0, - 0x0, - -0x1, -0x1, -0x1, + 0x0, + 0x1, -0x1, -0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, -0x1, - 0x0, - 0x1, - 0x0, - 0x0, 0x1, -0x1, -0x1, -0x1, + -0x1, 0x0, 0x1, 0x1, - ] - .span(), - array![ 0x1, + -0x1, 0x0, 0x1, 0x0, 0x0, 0x1, - -0x1, 0x1, - 0x0, + -0x1, 0x0, -0x1, -0x1, 0x0, + -0x1, + 0x0, 0x0, 0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, + ] + .span(), + array![ + -0x1, 0x1, + -0x1, 0x1, -0x1, 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x0, 0x1, 0x1, 0x1, + 0x1, -0x1, 0x0, + 0x1, 0x0, + 0x1, 0x0, + -0x1, 0x0, 0x0, -0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, - -0x1, - -0x1, - -0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x0, + 0x0, + 0x0, -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, -0x1, @@ -1861,19 +1864,22 @@ mod msm_tests { -0x1, 0x0, 0x1, - -0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, + -0x1, + 0x1, 0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, + 0x0, + 0x1, + 0x1, + 0x1, 0x1, - -0x1, -0x1, ] .span() @@ -1884,97 +1890,97 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xe71adff334d60ca8a733af2d, - limb1: 0xdf2ac10db5c3a51b76597ca8, - limb2: 0x2a022073733e2703, + limb0: 0x1c4289d743fa0b131b300dde, + limb1: 0xa82900da8916aa2564227a02, + limb2: 0xfc4a3b4ca1ebef5, limb3: 0x0 }, y: u384 { - limb0: 0x8d1763789c25fabb0a1b2a32, - limb1: 0x96e729837aefdcf628bb48d8, - limb2: 0x9a5734a1d91176a, + limb0: 0x981a13629df76fefd8675ec8, + limb1: 0x2473360f9c0a03528ec8c193, + limb2: 0x90af9c291b03841, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x7f698e3b06ba2d82cec12ce4, - limb1: 0x2eb14a92707429d3ed4b410, - limb2: 0xa4b744ea8e1de25, + limb0: 0x907b20b5ee182ef6f3694f32, + limb1: 0x6940c4d65424f3fdf10537ff, + limb2: 0x3724f07d377043d, limb3: 0x0 }, y: u384 { - limb0: 0xa8347d8e7f99baa69b7eac31, - limb1: 0xc20be737cb0e293d55aa48a8, - limb2: 0xaeebd9769c615de, + limb0: 0x7adf3ca689a3d85196d03808, + limb1: 0x8dd7834df84e9241bed5236b, + limb2: 0x5d91b4fabf88c66, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x9eff8b6fdd6cd1334e79fbbd, - limb1: 0x1e486349a8270ca498163d3c, - limb2: 0x2abf3b5b343e10fc, + limb0: 0x5386e7e852652ad16c5ae49e, + limb1: 0xfcf0ad965ba44cae5e994081, + limb2: 0x5a46dc09b048a1, limb3: 0x0 }, y: u384 { - limb0: 0xf82081ea970cb17504bbbd54, - limb1: 0x331e9110c38d734656f44dba, - limb2: 0x1571491248fae5cc, + limb0: 0x6cccc8d74406286708b7e721, + limb1: 0x73b568d8d8112b6fe7d305ea, + limb2: 0x159ff0767b279d25, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x6f6001c7d61a326558c76cfa, - limb1: 0x5fc394ddc7bb33c715b7ea51, - limb2: 0x13e69dac88b5f756, + limb0: 0x61aecb3e5bf966c78056bd86, + limb1: 0x8c6a5d4a6f9d167029326b45, + limb2: 0x1a4a4980eb73d4dd, limb3: 0x0 }, u384 { - limb0: 0x24ec0c78bbae4beaa91845ad, - limb1: 0xf2034b92cfa02c006119f3d, - limb2: 0x24f52ab971bcc935, + limb0: 0xb0fe806603d6c35371d96d1c, + limb1: 0x4f01953308f31d298eecbd12, + limb2: 0x1fd5979a88619bcb, limb3: 0x0 }, u384 { - limb0: 0xc748c4badfffc35613870fa, - limb1: 0x5284a120960a2ec80b516a08, - limb2: 0x1eb19a7da38c69d9, + limb0: 0x5d8f826b5beacefe7c809298, + limb1: 0x7d099169112fb554a3387a12, + limb2: 0x1c4dfb3d91114131, limb3: 0x0 }, u384 { - limb0: 0xb8e1e2eaabf6991276bcc8d1, - limb1: 0xdc2822db40c0ac2e95a1815e, - limb2: 0x183227397098d014, + limb0: 0xbf7eb8cd5862bebadd5b0fb, + limb1: 0xb85045b68181585c587ce8ff, + limb2: 0x30644e72e131a029, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x21ffd2f0e67a2d71d5d427cb, - limb1: 0x830c44c969efc3d3ca44553f, - limb2: 0x1ec9dfa3e452d2bb, + limb0: 0xc8656c02bef260800178764c, + limb1: 0xc7785eb45e086938282f6c26, + limb2: 0x17d4b09c89faee7b, limb3: 0x0 }, u384 { - limb0: 0x9609aa938c232a4e31e9932a, - limb1: 0x8b48b6103422c8934d4b2303, - limb2: 0x2f51ece998360403, + limb0: 0x1bf6dd57ecdf56c01fe8fb63, + limb1: 0x7cb8dc3f449aeef4d7093c8c, + limb2: 0x2a55bd032059ad8f, limb3: 0x0 }, u384 { - limb0: 0x25c04544a3f589e081068c62, - limb1: 0xb9bfd6cde256052f6b23a185, - limb2: 0x25f978792b8e3f16, + limb0: 0xc5839b4fb993980bfe7a7f39, + limb1: 0xdaea7c39603eefea0e95285c, + limb2: 0xf1a028d85de9946, limb3: 0x0 }, u384 { - limb0: 0x3e600758ebf5998727b9dcf0, - limb1: 0xbb2c3580a818b845266a77e6, - limb2: 0x17be28da3166e74e, + limb0: 0xca234a9b9459db659007dce1, + limb1: 0x7a8ddaade95d3c16e85a17b6, + limb2: 0x3dcfc3926239fe2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -1982,78 +1988,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x8fbd5fa0fb1331431f6a2c70, - limb1: 0xb796200fde53aa1faf8fdeb1, - limb2: 0x2e8e72d6c70b8207, + limb0: 0x301c5c9b2a51d45223fd6419, + limb1: 0x332509e377e91d5914289b8, + limb2: 0x141e2642493d9cd1, limb3: 0x0 }, u384 { - limb0: 0xd56d62e3ffcc72e48ba39968, - limb1: 0x4b3e9a7a53416b7bbdabadfb, - limb2: 0x216f7014c06a8fae, + limb0: 0xa604fbead88848f5a00b25d0, + limb1: 0x28103cfaa94342dad13e6613, + limb2: 0x1339cdb56a44c359, limb3: 0x0 }, u384 { - limb0: 0xe186e30f3d54dcc19f6049cf, - limb1: 0xf5a5822c93470281a5d3c6d8, - limb2: 0x1396abc8f3bde5d2, + limb0: 0xbe89ac7aedb3af06ec928a9f, + limb1: 0xeb2e3125dbf1f5d5a2c80bd3, + limb2: 0x29d4126d236458ca, limb3: 0x0 }, u384 { - limb0: 0x611f2b4bc9b7ec5760218fc8, - limb1: 0xaa94e6b80d16889a00d0fd72, - limb2: 0x28db0a89a78ff4f3, + limb0: 0x4635085b2f03e23b95a02764, + limb1: 0xcb9832c8c814784d8fee9510, + limb2: 0xf51ea6240411530, limb3: 0x0 }, u384 { - limb0: 0xf855d48d72cdf3b6ed42ebeb, - limb1: 0x98db09bf46facd4717de2831, - limb2: 0x1f5591ddcbef9420, + limb0: 0x8eb39b1b5e038982327d61d1, + limb1: 0xdef6c45381dac1ab625f682, + limb2: 0x160c725a45b54841, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xfd8dae45774dfc3ea8ff7a1a, - limb1: 0xd0d488a5bc4df31dc74b952b, - limb2: 0x2bf95078cbc6d808, + limb0: 0xf0be797b00b695692bec659d, + limb1: 0x9e18d6669897e34ae10cd9e2, + limb2: 0x1719c362bcbf2b49, limb3: 0x0 }, u384 { - limb0: 0xf1396aa02c2866bce4c2bef0, - limb1: 0x313996c39965a8feb8de93e7, - limb2: 0x2d2d29d7063ecbb7, + limb0: 0x830102ed4e5cec12aec0f79b, + limb1: 0x58a0950cace1c235618e081, + limb2: 0x1e389a239ea9c85b, limb3: 0x0 }, u384 { - limb0: 0xa05d3ab3739f8573d219aa98, - limb1: 0xbc9ef8fca3ff5ed312680f6c, - limb2: 0x1123cc85c0477cf0, + limb0: 0x508ad1ef2cbac823fb6f7dab, + limb1: 0x90bf74ac20bccfbe2bbf7916, + limb2: 0x2d4e07a8919bcbd4, limb3: 0x0 }, u384 { - limb0: 0xc3c53e13219e1d99c07c40d, - limb1: 0x43f059de5f373be80e80e7cf, - limb2: 0x53bbd4cb6244854, + limb0: 0x26cf4bd57bfff2b0b1900cef, + limb1: 0x3721eebe1a201d7ce13db34b, + limb2: 0x236ba547fc65ce23, limb3: 0x0 }, u384 { - limb0: 0x9609aa938c232a4e31e9932d, - limb1: 0x8b48b6103422c8934d4b2303, - limb2: 0x2f51ece998360403, + limb0: 0x1bf6dd57ecdf56c01fe8fb66, + limb1: 0x7cb8dc3f449aeef4d7093c8c, + limb2: 0x2a55bd032059ad8f, limb3: 0x0 }, u384 { - limb0: 0x25c04544a3f589e081068c62, - limb1: 0xb9bfd6cde256052f6b23a185, - limb2: 0x25f978792b8e3f16, + limb0: 0xc5839b4fb993980bfe7a7f39, + limb1: 0xdaea7c39603eefea0e95285c, + limb2: 0xf1a028d85de9946, limb3: 0x0 }, u384 { - limb0: 0x3e600758ebf5998727b9dcf0, - limb1: 0xbb2c3580a818b845266a77e6, - limb2: 0x17be28da3166e74e, + limb0: 0xca234a9b9459db659007dce1, + limb1: 0x7a8ddaade95d3c16e85a17b6, + limb2: 0x3dcfc3926239fe2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -2063,26 +2069,26 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xce2d1e278e7182b79a893412, - limb1: 0x5c56a5da336b99aa7b5d9f3a, - limb2: 0x254f03e114aa98bc, + limb0: 0x3782c67bae73c8cc9855263b, + limb1: 0x1f6d7a04426b78ad9fa3702e, + limb2: 0x165d33fe6e359094, limb3: 0x0 }, u384 { - limb0: 0xd82c5911620a05f9ce6f5e52, - limb1: 0xe8eb374f5d5e23e08fe27988, - limb2: 0x1c13008a1c4ac3f, + limb0: 0xac2291714459854a7717829b, + limb1: 0xbfcd7276fce09b0c499b6067, + limb2: 0xe8faec9790d773f, limb3: 0x0 }, u384 { - limb0: 0x1c3d1c00efe147010e9a5252, - limb1: 0x6978ee957b01a654cd2cd78a, - limb2: 0x30142854509e8026, + limb0: 0x9af8b391d51947bb7841388c, + limb1: 0xa7ced1711bea89b877d33fde, + limb2: 0x24183e5fcbce368f, limb3: 0x0 }, u384 { - limb0: 0x2764c9d2be16b655b42681d0, - limb1: 0xb85045b68181585d7b9db5f9, + limb0: 0x26fb5ad4a6e3b369cf8dcb09, + limb1: 0xb85045b68181585d845710fb, limb2: 0x30644e72e131a029, limb3: 0x0 } @@ -2090,27 +2096,27 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x9178272a95ad7eb41e46eefb, - limb1: 0xc761a2320e5b576c68738e4c, - limb2: 0x28c73cee56a16aac, + limb0: 0x3117d045c6189b0fb89cbe48, + limb1: 0xb5c1c9677074fecbf98c8a52, + limb2: 0x1ba2cf45b65057b2, limb3: 0x0 }, u384 { - limb0: 0x4728e9ef652d9c8167d8559d, - limb1: 0x58b620fdd49974030ad0d1c1, - limb2: 0xbb0250115323df5, + limb0: 0x1c0ae78bb6ae41a01bf5a29e, + limb1: 0x3312fa94ab31e55a6ede29da, + limb2: 0x2979f59f2c13e6d6, limb3: 0x0 }, u384 { - limb0: 0xee440c7e6effa4e1674352fe, - limb1: 0x384ddf2f25c2c3d4379b8b9b, - limb2: 0x36acd07cd78a2a9, + limb0: 0x9eced828a9b8134e998dc2bc, + limb1: 0x19b3d12ad0d6a10440eee462, + limb2: 0x26eaadb374490de3, limb3: 0x0 }, u384 { - limb0: 0x3d9f8e83ddf0ec9627af61f2, - limb1: 0xdf1b9c2eb553c265c66dd5ed, - limb2: 0x710868c1a919003, + limb0: 0x55eab3bcea3bb781b7ce9b8d, + limb1: 0xb97616b21e4ef23e5b7759b9, + limb2: 0x102f50e61ccb5a9a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -2118,78 +2124,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xc7180e9b88953ff8af5c99b7, - limb1: 0xe1da2075d72947d1c9e862ac, - limb2: 0x69168b47d58a506, + limb0: 0x33751bc3bc1b34d5fc9afbfa, + limb1: 0xe3d61b20d2c8eb43977e307e, + limb2: 0x1dce67ad7fe9875f, limb3: 0x0 }, u384 { - limb0: 0x16c25746f213d5978306898, - limb1: 0xc81a17befb267658ad10a699, - limb2: 0x2e3b16e7ac70d9c3, + limb0: 0xbbb85f10b38f0d40958ec501, + limb1: 0xb272f633f31e99437a7d302e, + limb2: 0x12770e3bb2dfd350, limb3: 0x0 }, u384 { - limb0: 0x23d34c450f997d2ef8612690, - limb1: 0x99c3ddc5ec83cdb3de857436, - limb2: 0x27b8743ba3b0afdf, + limb0: 0x390871c06b22df512a951fd7, + limb1: 0x5eda5277032125a033a0c347, + limb2: 0x22fe60e22bf2cee, limb3: 0x0 }, u384 { - limb0: 0x77b06bb92efda41de47c8d00, - limb1: 0x9455bb0ec90a174c5507d79f, - limb2: 0xbc8875cfed325f3, + limb0: 0x52fe5f1e0965990b9094f653, + limb1: 0x8a39ceef4afbb33d096ab71, + limb2: 0x1da2cc4662c7af78, limb3: 0x0 }, u384 { - limb0: 0x954f10fd935474e344eabd5b, - limb1: 0x3fb0a09fa6ca805281d1751a, - limb2: 0xbf94a2f480f0d22, + limb0: 0xe332ee502c93b258c2d1f3a9, + limb1: 0x6fd4f9db5495f9e67f079704, + limb2: 0x3cd639389179b94, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xe384e06548c763eea9dad263, - limb1: 0xe5845b29280f558a0a57d5c2, - limb2: 0x198d19e54180ffb2, + limb0: 0x2ad5a6441629451851593d91, + limb1: 0x68f5167fcfdda40655243465, + limb2: 0x22841f5e41bf66ee, limb3: 0x0 }, u384 { - limb0: 0xd57abdce2f88d584378900d7, - limb1: 0xa2262f97dcc5c0920727543, - limb2: 0x23106f033f96b9e0, + limb0: 0x833d2188abc9acb2a2e6ed4c, + limb1: 0x28986450fe92ff541d97a86b, + limb2: 0x1ba543f7c1d8742f, limb3: 0x0 }, u384 { - limb0: 0xcacc257b4cfeeea435c9f8fa, - limb1: 0xa8e99d8d71484b7ca6d2a2d3, - limb2: 0xa4067176869e7fb, + limb0: 0xb88f35f84e721be1baf4da6, + limb1: 0xdc7ae8136f81325193c9d805, + limb2: 0x13f76c349a77e955, limb3: 0x0 }, u384 { - limb0: 0xe1e50828f35fb85fbcd8178a, - limb1: 0xac643107acd54640243ba582, - limb2: 0xd94821fc5247a8e, + limb0: 0xca6620ef48ab357e078b93a8, + limb1: 0x29d3c7c749e07d2974712cec, + limb2: 0x1bcc73852b80c759, limb3: 0x0 }, u384 { - limb0: 0x4728e9ef652d9c8167d855a0, - limb1: 0x58b620fdd49974030ad0d1c1, - limb2: 0xbb0250115323df5, + limb0: 0x1c0ae78bb6ae41a01bf5a2a1, + limb1: 0x3312fa94ab31e55a6ede29da, + limb2: 0x2979f59f2c13e6d6, limb3: 0x0 }, u384 { - limb0: 0xee440c7e6effa4e1674352fe, - limb1: 0x384ddf2f25c2c3d4379b8b9b, - limb2: 0x36acd07cd78a2a9, + limb0: 0x9eced828a9b8134e998dc2bc, + limb1: 0x19b3d12ad0d6a10440eee462, + limb2: 0x26eaadb374490de3, limb3: 0x0 }, u384 { - limb0: 0x3d9f8e83ddf0ec9627af61f2, - limb1: 0xdf1b9c2eb553c265c66dd5ed, - limb2: 0x710868c1a919003, + limb0: 0x55eab3bcea3bb781b7ce9b8d, + limb1: 0xb97616b21e4ef23e5b7759b9, + limb2: 0x102f50e61ccb5a9a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -2199,9 +2205,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x9871ac12cd2aa272e878c8bf, - limb1: 0x23836d08b11671028818df8a, - limb2: 0x25bc086add3d7a39, + limb0: 0x57318716e1ccf8d709ff6432, + limb1: 0x26f018ea679092009450a9f3, + limb2: 0x22aed0b1d27adb9b, limb3: 0x0 }, u384 { @@ -2214,15 +2220,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x1bcc1c555787539cda341a1e, - limb1: 0x6923f9abdbce3b65d8776bb4, - limb2: 0x2c181c11714402cd, + limb0: 0xe6b5239554a96d50a86c91e1, + limb1: 0xbf476c9876e44bebe618bb57, + limb2: 0x189c7bc9b42c0032, limb3: 0x0 }, u384 { - limb0: 0xb27a7b6f941a197793bed1ed, - limb1: 0x4f6d137a33d461795817e3d5, - limb2: 0x2bbded3be5435132, + limb0: 0x846fc1eefba3324e78b8c977, + limb1: 0x521ed349d1b817b147e2f210, + limb2: 0x2c97b88f040a534a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -2230,49 +2236,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xc65d24e99450999487fa0731, - limb1: 0x3b147f68e628a593dd1113c4, - limb2: 0x12cee254daeaf1f0, + limb0: 0x377c398c311e68455eaa609, + limb1: 0x8722a3922cd43a64b01a7782, + limb2: 0xafce0ae40846516, limb3: 0x0 }, u384 { - limb0: 0xbb7028f19901d8773f0105b1, - limb1: 0xbb078cf103ec476cb4c8c629, - limb2: 0xb3acba3556b8a27, + limb0: 0xebd0e8093839c9ebebee1c4e, + limb1: 0xecafc6443de5e7b2e469461a, + limb2: 0x2f40dcf081ad0c1e, limb3: 0x0 }, u384 { - limb0: 0x9eb0009ed363d6c97d4283d, - limb1: 0x132b5d3ad9be9cab7127d834, - limb2: 0x66dabf5a371e96c, + limb0: 0x83bdfb2e98f2ebffc099a99b, + limb1: 0x3083939910b06cb2fa1ef4e3, + limb2: 0x19a0e83bc2814eed, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x8280bfe58e54e2a8dda253cc, - limb1: 0xcacb6196906801765a636df9, - limb2: 0x237fb74e9168c814, + limb0: 0x4bada032c1dbbbdb20c8b85c, + limb1: 0x85860012e32b8b661ac8c776, + limb2: 0x197124ea3b52606e, limb3: 0x0 }, u384 { - limb0: 0x468bdd34440d34390a427b39, - limb1: 0x7da6af01987a73b0d944d65e, - limb2: 0x22712acded66b343, + limb0: 0xbc6bb0b27aa87ebdb93061d7, + limb1: 0x85bbee7072259658a8a6010e, + limb2: 0x24fe8cc749bbb98b, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x1bcc1c555787539cda341a1e, - limb1: 0x6923f9abdbce3b65d8776bb4, - limb2: 0x2c181c11714402cd, + limb0: 0xe6b5239554a96d50a86c91e1, + limb1: 0xbf476c9876e44bebe618bb57, + limb2: 0x189c7bc9b42c0032, limb3: 0x0 }, u384 { - limb0: 0xb27a7b6f941a197793bed1ed, - limb1: 0x4f6d137a33d461795817e3d5, - limb2: 0x2bbded3be5435132, + limb0: 0x846fc1eefba3324e78b8c977, + limb1: 0x521ed349d1b817b147e2f210, + limb2: 0x2c97b88f040a534a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -2282,9 +2288,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x1d3ba6f064f5b5eb3688199b, - limb1: 0xd34a5bcae57c990a803710fc, - limb2: 0x1dd2ccc7a9466a, + limb0: 0xe8be55391e8e6f8bde0f93d5, + limb1: 0xd6c08f868cfef378fd8ec5f1, + limb2: 0x4005f51ebca622, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -2295,15 +2301,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x7eb1be319afef4fb400961c9, - limb1: 0x5e50b4fd851c223a7324bf10, - limb2: 0x152e7fc479743c28, + limb0: 0x442fa07eb22c9e5e1b89e6d3, + limb1: 0x64feeef1c9f0b16402b0bfc7, + limb2: 0xd0a4c7093f0bab4, limb3: 0x0 }, y: u384 { - limb0: 0x5959c07a73ed4fdf55f4d5d6, - limb1: 0x6cf5b7bc3b1c6663b42224c9, - limb2: 0x39db1e8fa081f77, + limb0: 0x4894891e788affd14e187fed, + limb1: 0x7f1cf0742ab813bae97d1756, + limb2: 0x2c76fb972bd18c9c, limb3: 0x0 } } @@ -2316,57 +2322,57 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xfe57c4878512fa0ba7ae7e0d, - limb1: 0xeac62f79f4d301623e7e107e, - limb2: 0x678fde79b727367, + limb0: 0x5b2b7053b58f8e0dcd23b6d8, + limb1: 0xdb7786bc82c02f3192d56691, + limb2: 0x24272883c90b9e97, limb3: 0x0 }, y: u384 { - limb0: 0x348964894b44532faf83816b, - limb1: 0x5fe99bf354db37d636cbb916, - limb2: 0x1aa9add1f1d3ff9e, + limb0: 0x60e6d482d35f3ae3a789d8aa, + limb1: 0xdf7ca22316d37b3a606bcf63, + limb2: 0x26d6a4869eb6d3d2, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1fc0274c7fb32f4bab3d1c33, - limb1: 0xa7a30501097cfbc0ee88dcdc, - limb2: 0x22474b436f313bad, + limb0: 0x3c9c33dbdd31cc9a47e3492e, + limb1: 0xb9398edfc6591bc474162615, + limb2: 0x24d3f829efdc4185, limb3: 0x0 }, y: u384 { - limb0: 0x88630954f8361ad5f4adc11f, - limb1: 0xdaeb7aafb6f7741a69d6e25f, - limb2: 0x2e98834db883e057, + limb0: 0xa69273b553d3e19dff473e56, + limb1: 0xd133afcda686864bbee6c178, + limb2: 0x227e370636d6f2f9, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x12f18b13c59e6ad417ebd645, - limb1: 0x650a41fa7ba6adbed5fd894, - limb2: 0x603eecccdb9ace4, + limb0: 0x520ffd73c1fb944cbb81521f, + limb1: 0x84631aa7d400349a7889c1a0, + limb2: 0x184bd633f84474f1, limb3: 0x0 }, y: u384 { - limb0: 0x79000dc201007acdf5da0923, - limb1: 0xf2df6f18768a80289f0797fc, - limb2: 0xef06a15f9b33fed, + limb0: 0x936fa61cc47482f53d4e8c36, + limb1: 0x2fcf485b0f7effe8a5a39f61, + limb2: 0x172f8af809893f51, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x10fa63359bfaebd3fb80130, - limb1: 0x561f5b764089da60495b923d, - limb2: 0x8f49575b1d0b457, + limb0: 0xde35ad5b42fd9774868ad0e9, + limb1: 0x81a70010c4a772288206f13f, + limb2: 0x1c8e9d886b66b8ee, limb3: 0x0 }, y: u384 { - limb0: 0x445f478bf3d0a5a9802bea55, - limb1: 0x937390649e3d5c19ec0c34b8, - limb2: 0x1887b5836ce81842, + limb0: 0x2ddd78fb47502232f06a60a9, + limb1: 0x7548e5ae38e78fc0d212c928, + limb2: 0x40f3d905aff96f2, limb3: 0x0 } }, @@ -2374,16 +2380,16 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x628308690fa7ee0538974df5bff773ce, high: 0x239d47ad64d09913191b8adf0202861c + low: 0xe5e15939c0afb853035ee2aedbc8065d, high: 0x11d93acaef898a7bfddea87843b8687e }, u256 { - low: 0xeb8f205672d3cc5d4a31b24384dd6da6, high: 0x2db8d57d95bb440dc9cd4af97d161f29 + low: 0x1651b220a688dcd83a36e7d7d2d4bec0, high: 0xf9ea2d2de3e2e33a161c74634189aca }, u256 { - low: 0x2aa50f4ec6f0093395d1805142cb6d1d, high: 0x75c5cf95bc7fdeb31234efe6e648043 + low: 0x6985050192b7605fde1e6e692bf32369, high: 0x1aa66b1a629448a1372e982543117530 }, u256 { - low: 0xda54f267dd138266d26d53961058fe8c, high: 0x21a6f6f4e72bb5b707120911b3b68b57 + low: 0x2da9b054e40598fe04fd3976de033fb5, high: 0x1dff4517743b159fe1399c697112811 }, ] .span(); @@ -2391,64 +2397,50 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x0, - 0x1, - 0x0, - 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x1, -0x1, -0x1, 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, 0x0, + -0x1, 0x1, 0x0, 0x1, -0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x0, 0x0, 0x1, - -0x1, - 0x0, + 0x1, 0x1, 0x0, -0x1, - -0x1, - 0x1, 0x1, + 0x0, -0x1, - 0x1, 0x0, 0x1, -0x1, -0x1, 0x0, 0x0, + 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x1, + 0x0, + -0x1, -0x1, 0x1, + 0x0, + -0x1, 0x1, + -0x1, 0x1, 0x1, 0x1, @@ -2457,122 +2449,142 @@ mod msm_tests { -0x1, 0x1, 0x0, - 0x0, 0x1, - -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x1, 0x1, + -0x1, 0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, + -0x1, 0x1, - ] - .span(), - array![ - 0x1, + 0x0, 0x1, 0x0, -0x1, -0x1, - -0x1, - 0x1, - 0x0, 0x1, + -0x1, 0x0, 0x0, 0x1, -0x1, - 0x0, - 0x1, - 0x1, + -0x1, 0x1, 0x1, 0x0, + -0x1, + -0x1, + ] + .span(), + array![ + -0x1, 0x1, 0x0, 0x1, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, 0x0, 0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, + 0x0, + 0x1, + 0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, 0x0, -0x1, + -0x1, 0x0, -0x1, + 0x0, -0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, + -0x1, + 0x1, 0x0, + 0x1, 0x0, - 0x0, + 0x1, -0x1, + 0x1, + 0x0, + 0x1, 0x0, -0x1, -0x1, - 0x0, + -0x1, 0x0, -0x1, 0x0, + -0x1, 0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, - 0x0, - -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, - -0x1, - -0x1, 0x0, - -0x1, 0x0, 0x0, + 0x0, + 0x0, + 0x1, -0x1, + 0x1, ] .span() ), ( array![ - -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + -0x1, + -0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x1, + -0x1, + 0x1, + 0x0, 0x1, 0x1, -0x1, @@ -2581,290 +2593,294 @@ mod msm_tests { 0x1, -0x1, 0x0, - 0x0, -0x1, 0x0, - -0x1, - -0x1, - -0x1, - 0x0, - 0x1, 0x1, 0x1, 0x0, - 0x1, + 0x0, -0x1, 0x1, -0x1, + 0x1, + 0x0, -0x1, - -0x1, 0x1, 0x1, + 0x1, + 0x0, -0x1, + 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x1, + -0x1, + 0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, - -0x1, + 0x0, + 0x1, + 0x0, -0x1, -0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, 0x1, 0x1, -0x1, - 0x1, - 0x0, -0x1, + ] + .span(), + array![ + 0x1, -0x1, 0x1, 0x1, 0x0, + -0x1, 0x1, 0x0, -0x1, - -0x1, - ] - .span(), - array![ - 0x0, - 0x0, 0x0, 0x0, 0x1, - -0x1, - -0x1, 0x1, - -0x1, + 0x1, 0x0, 0x1, - -0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, -0x1, - 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x1, -0x1, 0x1, - 0x0, - 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x1, - -0x1, + 0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, + 0x0, 0x1, 0x0, + 0x1, + 0x1, + 0x1, + -0x1, + -0x1, -0x1, 0x1, + 0x0, -0x1, 0x0, -0x1, - 0x1, 0x0, 0x1, -0x1, 0x0, -0x1, -0x1, - 0x1, - 0x1, 0x0, 0x0, -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x0, - -0x1, -0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, -0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, - 0x1, - 0x0, -0x1, 0x0, - 0x1, - 0x1, -0x1, + -0x1, + -0x1, + 0x1, ] .span() ), ( array![ - -0x1, 0x1, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, + 0x0, 0x1, + 0x0, -0x1, - 0x1, + 0x0, 0x0, 0x1, -0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, 0x1, + -0x1, 0x0, 0x0, - 0x1, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, + 0x0, + -0x1, + 0x1, + -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, - 0x1, - 0x0, + -0x1, 0x0, 0x0, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x1, -0x1, 0x1, 0x1, 0x1, + 0x0, 0x1, 0x0, 0x1, 0x1, -0x1, -0x1, - 0x1, + -0x1, -0x1, -0x1, 0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, - 0x0, + 0x1, + 0x1, -0x1, 0x0, -0x1, - -0x1, - -0x1, 0x1, 0x0, - -0x1, - 0x1, - 0x1, 0x0, 0x1, - -0x1, - 0x0, - -0x1, ] .span(), array![ -0x1, - 0x1, 0x0, - -0x1, 0x0, + 0x1, -0x1, - -0x1, + 0x0, 0x1, + 0x0, 0x1, + 0x0, + -0x1, -0x1, 0x0, 0x0, 0x0, 0x1, + 0x1, + 0x0, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, 0x0, 0x1, 0x0, 0x1, + 0x0, 0x1, - -0x1, + 0x0, + 0x0, -0x1, 0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, + 0x1, 0x0, 0x0, - -0x1, - 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x1, -0x1, 0x1, + 0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, -0x1, - -0x1, - -0x1, 0x0, 0x1, - 0x1, - -0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x0, @@ -2872,196 +2888,180 @@ mod msm_tests { 0x1, 0x1, 0x1, - 0x0, - -0x1, -0x1, - -0x1, - -0x1, - -0x1, - 0x1, 0x0, 0x1, 0x1, - 0x1, - 0x0, - -0x1, - -0x1, -0x1, + 0x1, 0x0, -0x1, -0x1, - 0x1, - 0x1, ] .span() ), ( array![ + 0x1, + 0x1, + 0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x0, - -0x1, 0x1, 0x0, + 0x0, + -0x1, -0x1, 0x1, 0x0, 0x0, 0x1, + -0x1, + 0x0, 0x1, 0x1, - -0x1, 0x1, 0x1, - 0x0, - 0x0, - -0x1, 0x1, - 0x0, -0x1, 0x0, - -0x1, 0x0, 0x1, - -0x1, 0x1, + 0x0, 0x1, -0x1, - 0x1, 0x0, 0x0, + -0x1, + 0x0, 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x0, - 0x1, -0x1, -0x1, 0x0, - 0x1, + 0x0, -0x1, 0x1, 0x1, - 0x1, -0x1, - 0x0, 0x1, -0x1, - -0x1, 0x1, -0x1, + -0x1, 0x1, 0x0, -0x1, -0x1, - 0x1, - 0x0, - 0x1, - 0x1, 0x0, 0x0, - 0x1, -0x1, - -0x1, - 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, -0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x0, - 0x0, - -0x1, + 0x1, -0x1, ] .span(), array![ + -0x1, + 0x0, + 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, - -0x1, 0x1, -0x1, -0x1, -0x1, 0x1, 0x1, - 0x0, - -0x1, - 0x1, - 0x1, 0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x0, 0x0, 0x1, + 0x0, + 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x1, 0x0, 0x1, - 0x1, 0x0, 0x0, - -0x1, - 0x1, - 0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x0, - 0x1, 0x0, - -0x1, + 0x0, 0x1, -0x1, - -0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x0, 0x1, -0x1, + 0x0, + 0x0, + -0x1, -0x1, + 0x1, 0x0, + 0x1, 0x0, 0x0, 0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x1, 0x0, 0x1, + 0x0, -0x1, 0x1, - 0x1, + 0x0, 0x1, 0x0, -0x1, + 0x0, + -0x1, + 0x1, ] .span() ), @@ -3071,75 +3071,75 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xb54bb6f7951b494128f9c463, - limb1: 0x39594ded1532be543661cbb7, - limb2: 0xc1270bbcad360fb, + limb0: 0x95e44c97f724478df9804239, + limb1: 0x814d6a23445142a3f4c502d7, + limb2: 0x294575b42e9aac00, limb3: 0x0 }, y: u384 { - limb0: 0xe66473034281e4deb3388660, - limb1: 0x405e9dafaff7192b43dd733c, - limb2: 0x2d09b5ade319541a, + limb0: 0xa779719772334efdfdeead00, + limb1: 0x2f57e17797225193117f9738, + limb2: 0x13e22af22a27f8a4, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xb8c0fb473b36d2d428ec807a, - limb1: 0xc1f8f5f07bb1f630d1f9ae01, - limb2: 0x1b2ee7f30822b07f, + limb0: 0x6ade050e606200403ccfec25, + limb1: 0xe1a3de7f0f230639cc423dae, + limb2: 0x1c3ab1d2d84eebff, limb3: 0x0 }, y: u384 { - limb0: 0x631cc30fba31de11cd00889, - limb1: 0xe88e762b6ded20aba4897eb8, - limb2: 0x2cb3844f1afe9475, + limb0: 0x4ed6f8f6b3c5fba8919de5e2, + limb1: 0x66ecc7bda36ae0b2f1cf5cb3, + limb2: 0xdb82bb100a9b98c, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xd2f5dda65b9c7ef7875a984e, - limb1: 0x1e6d6b2dadbdbfb2249c7af5, - limb2: 0x361e126137e3b8e, + limb0: 0xccaea480807332c9b160112d, + limb1: 0xaac8d161953675e5feb1ce8f, + limb2: 0xac54ef0970c0026, limb3: 0x0 }, y: u384 { - limb0: 0xa135d8c392b2841f65892ec0, - limb1: 0xc8fe88432782dd851ccdf2b4, - limb2: 0xad47aef72bc8070, + limb0: 0x381f6716aaf9b75e6d30c3c7, + limb1: 0x379ba6e4cb70ffb083d41bc, + limb2: 0xb2e8e3b50a3da8f, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x8039f4470cfc3422b863ecc6, - limb1: 0x5e181a720c505389f4e4aeac, - limb2: 0x247a4d315de1402a, + limb0: 0xb1fe12c0ace9ed8a53d36c51, + limb1: 0x2c81b742a10d3aa9af07d0f4, + limb2: 0x27e3c478a8ab9ac7, limb3: 0x0 }, u384 { - limb0: 0x7531521d583ad63872dd3f72, - limb1: 0x803079f252c35d9c5cb0a9f8, - limb2: 0x2b73a98790278b66, + limb0: 0x90dfda5ecb865e06ec600f26, + limb1: 0xb7b2640deeedac4d602b70e1, + limb2: 0xd9f9f8765c91b1a, limb3: 0x0 }, u384 { - limb0: 0xd7f24ea7fc7d7d2410b4b1b9, - limb1: 0x3f369ef559286848e5ec0870, - limb2: 0x1698a8f9e95b5e31, + limb0: 0x37d5a7bd7c54ce1d8431f433, + limb1: 0x6423641dff344fcab6b60b1, + limb2: 0x282fadab9576bc0b, limb3: 0x0 }, u384 { - limb0: 0x6ae5e9ff23d812bc79f1ace9, - limb1: 0xb1818fdf315dfbf0aa6931c5, - limb2: 0x2900e34d8e5709ca, + limb0: 0xdbeed8994863fc6f47bf8d4a, + limb1: 0x85714a3a7a58e334131aacc0, + limb2: 0x1c1b23ceebf78784, limb3: 0x0 }, u384 { - limb0: 0xd908af92b29c82b3a1f059b8, - limb1: 0xb85045b68181585ce777b50c, + limb0: 0x5974159a6738944800e45bef, + limb1: 0xb85045b68181585d46be8287, limb2: 0x30644e72e131a029, limb3: 0x0 } @@ -3147,33 +3147,33 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xf7a8cd40e326964476e9a8e7, - limb1: 0x168c107f33b957b2b8f7bc6a, - limb2: 0x1443b43b65b33f3b, + limb0: 0x7481d0c937d7bf24e6e248e2, + limb1: 0x9f4141d5028be1e3994cd12e, + limb2: 0x70103b0855a32b3, limb3: 0x0 }, u384 { - limb0: 0xcb872f12b695fca74de15987, - limb1: 0xbbcfbba666848e2574ea1a71, - limb2: 0x7367a6027cb3858, + limb0: 0x854e7246819344eb37e16409, + limb1: 0xf91cb58d0399869bc0254435, + limb2: 0x1063c6c2f6be3a91, limb3: 0x0 }, u384 { - limb0: 0xffcad8e89bdaf303fdffb126, - limb1: 0x369797b70ca617c67361c4e0, - limb2: 0x356d3531418fd27, + limb0: 0x5c07faa7d218f381f37494f, + limb1: 0xb1ee3d481f66b923bebc3310, + limb2: 0x23327b5e7026b65f, limb3: 0x0 }, u384 { - limb0: 0x4eade82001d19782972fce51, - limb1: 0xbb2994ffcd3d78e0d4a5bfa0, - limb2: 0x298c955cd914ce3c, + limb0: 0x424e47f92abd8aeb76ab4fc6, + limb1: 0x733024af5f7dc537313ee451, + limb2: 0x205f9d5eb1da6b6a, limb3: 0x0 }, u384 { - limb0: 0xe97ec107bf018c03dd70c476, - limb1: 0x486e096f073bb00794deb13e, - limb2: 0x1cfd5ebc6d61cf07, + limb0: 0x43d58e9e61a3626411608fd5, + limb1: 0xc5387c61dff32d1967c467e7, + limb2: 0x1a762fad3998c6a8, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3181,90 +3181,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xb0c3eb7679dc7229f7c7c738, - limb1: 0xb9f8062d1dbb76e211cd81c2, - limb2: 0x1ca38dc32c59f4b1, + limb0: 0x27e868b0e72dd17b93ef40d2, + limb1: 0x28f8fcb51fa76ab167244890, + limb2: 0x21ab7ed70f933cc, limb3: 0x0 }, u384 { - limb0: 0x135a4df3f10a12707d89e1d7, - limb1: 0x17d10d666f81cf87d8707f8e, - limb2: 0x2ed9c4c2e880b320, + limb0: 0x1c552796c04225f3653ae0bc, + limb1: 0x59a4384774f488f3278b83e6, + limb2: 0x214745a33fbb45e4, limb3: 0x0 }, u384 { - limb0: 0x7ebe74d8bbba01ad80496f49, - limb1: 0x29111b731698191e4190677b, - limb2: 0x1eee99aed5ee67f6, + limb0: 0x7ee14b91ee772e7ef1e18173, + limb1: 0x56eb0d4769d4f31bdb1c396b, + limb2: 0x2c5508da317ce1ce, limb3: 0x0 }, u384 { - limb0: 0x16694c1dec221be7848f4cc7, - limb1: 0x5e9680739d953c09a3f149c0, - limb2: 0x19678377310d1e9b, + limb0: 0x222dd72e0183d8b2d31e11ac, + limb1: 0x493636fa59a8d5a3baccae90, + limb2: 0x2c3ba04a87107b9a, limb3: 0x0 }, u384 { - limb0: 0xc0c74c46cfe75c6383ddacd3, - limb1: 0xda69f863158b93c13e720bbf, - limb2: 0x192c7a9a8b67e6cc, + limb0: 0xef716396e6ec6eed508a735c, + limb1: 0xce9c9d0aa0b5e323bdcc33bf, + limb2: 0x2c44754e25d61542, limb3: 0x0 }, u384 { - limb0: 0x8faecceae81e60c08e489844, - limb1: 0xcdca477f377538a3894bfa11, - limb2: 0x28c5df4454ea0e30, + limb0: 0x9d3b6d4ffde1a58120e11a1, + limb1: 0xcd495ca759d5167b98c8318c, + limb2: 0x69bd6a87b636da5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7e889d356d5336b68c3ffd6e, - limb1: 0x8b53ebc719aaaeba9365caaf, - limb2: 0xc66ce3f4fe81d87, + limb0: 0x5d85725ba7873d6eb4a6daa6, + limb1: 0xddc3c57f07a3a5aacbe6738b, + limb2: 0x15030b11900e981a, limb3: 0x0 }, u384 { - limb0: 0x62958d3823c1f5f5e9a40c95, - limb1: 0x336f32f3338daa705ebe4f55, - limb2: 0x15a36f207761a90a, + limb0: 0x27798c46489942aacf272ed4, + limb1: 0x3305daf0894b3b75a8ee620f, + limb2: 0xc705d603090f8c, limb3: 0x0 }, u384 { - limb0: 0xff608ab9d390d90bf9ff1372, - limb1: 0xa3c6c72525f247535a254ea2, - limb2: 0xa0479f93c4af775, + limb0: 0x405de9e4ff23957aacabe15f, + limb1: 0xa52a2c6b5b317ab00d31c40d, + limb2: 0x8ced5358e10e2cb, limb3: 0x0 }, u384 { - limb0: 0x12cef086705a449e8b7f194c, - limb1: 0xd7684411986f119a07e62629, - limb2: 0x3020d76c2e8e699d, + limb0: 0x6a89139a3fcf47b999ea3da6, + limb1: 0x883124761e0280cdfe06a8ff, + limb2: 0x7573ee6d886349f, limb3: 0x0 }, u384 { - limb0: 0x1f91a79cb77a149c0db6a9a2, - limb1: 0xdcc9923cfab645de9c04c39d, - limb2: 0x2dca48228ebf0544, + limb0: 0xe85d53946a5ce00093861641, + limb1: 0x9075e4fc21f1b58a5ff11159, + limb2: 0x2f620757c256ee62, limb3: 0x0 }, u384 { - limb0: 0xffcad8e89bdaf303fdffb129, - limb1: 0x369797b70ca617c67361c4e0, - limb2: 0x356d3531418fd27, + limb0: 0x5c07faa7d218f381f374952, + limb1: 0xb1ee3d481f66b923bebc3310, + limb2: 0x23327b5e7026b65f, limb3: 0x0 }, u384 { - limb0: 0x4eade82001d19782972fce51, - limb1: 0xbb2994ffcd3d78e0d4a5bfa0, - limb2: 0x298c955cd914ce3c, + limb0: 0x424e47f92abd8aeb76ab4fc6, + limb1: 0x733024af5f7dc537313ee451, + limb2: 0x205f9d5eb1da6b6a, limb3: 0x0 }, u384 { - limb0: 0xe97ec107bf018c03dd70c476, - limb1: 0x486e096f073bb00794deb13e, - limb2: 0x1cfd5ebc6d61cf07, + limb0: 0x43d58e9e61a3626411608fd5, + limb1: 0xc5387c61dff32d1967c467e7, + limb2: 0x1a762fad3998c6a8, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3274,32 +3274,32 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x1fe62a6068ed15c296366c89, - limb1: 0xd3579a4d61e355f16c05fa42, - limb2: 0x2520db2c524d1232, + limb0: 0xe1216aaa4db9fc7abe8d89d2, + limb1: 0x6794c79d482ccef873c76d8c, + limb2: 0x23ede37f6b8ae7ae, limb3: 0x0 }, u384 { - limb0: 0x46696c7468b470e494415bd3, - limb1: 0x9ac9f685091239657d6f45ab, - limb2: 0x1af356e779a5fbb4, + limb0: 0x3f6acf1f252351f43ca433ce, + limb1: 0x8e5bbb415be8923fef3a579e, + limb2: 0xdf544af908f1a96, limb3: 0x0 }, u384 { - limb0: 0x2a80866729955dab355dbcf3, - limb1: 0x5fbd555286a58a54152227a8, - limb2: 0x1be5a3c9d682dfba, + limb0: 0x8d0debd9c07c67eb417a8e3b, + limb1: 0xc4e7fb632bc40b8a56e8895e, + limb2: 0x22e4ab03ba062e79, limb3: 0x0 }, u384 { - limb0: 0x30cf94b7da629a78477714f3, - limb1: 0x1245b563d6a58ed9eca09c2d, - limb2: 0x137542fafa69eacc, + limb0: 0xdd593f367bb24dbbb30f899f, + limb1: 0xcc4d8198d93b2972f6983679, + limb2: 0x28e698116b0d27c4, limb3: 0x0 }, u384 { - limb0: 0x8783a49f71ab901e95f915e4, - limb1: 0xb85045b68181585d67859a84, + limb0: 0x63c5026757ccee46cc1c2c8, + limb1: 0xb85045b68181585d9572c37f, limb2: 0x30644e72e131a029, limb3: 0x0 } @@ -3307,33 +3307,33 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x5afaf54207b1dcace0bb4396, - limb1: 0x7ca4583097c32ee867c3b191, - limb2: 0xe1494474085f38f, + limb0: 0xe956148bcbc1acb30fdfcfd6, + limb1: 0x7e2b9ea46738674a6a456344, + limb2: 0xd3b9db1ccbcceb1, limb3: 0x0 }, u384 { - limb0: 0x5eb2e1b87fa40f9d2a128c99, - limb1: 0x1574d87f28456da95d578b58, - limb2: 0xb7c51ea66762a9b, + limb0: 0x31a18e77c0ccf7fae43ff10, + limb1: 0xf9f0c8a371ec837162186e34, + limb2: 0x11a281f78d969318, limb3: 0x0 }, u384 { - limb0: 0xad6f14a7fba9b431777dc64b, - limb1: 0xa6cb7a1c355373035c485573, - limb2: 0x11f682c094b27514, + limb0: 0x23d6e36bc77c25df27eef53f, + limb1: 0x17925dbf53ded8344fae671e, + limb2: 0x154132f56112174a, limb3: 0x0 }, u384 { - limb0: 0x3adbee4d5933182b61958fb, - limb1: 0x4f637e6a58d6f0b67efcd9a4, - limb2: 0x1d91df8d5cb702f, + limb0: 0xec9e976d5c37b4616e213f6e, + limb1: 0x97d8a281a1a4e3538880914c, + limb2: 0x9770f1a8783bc98, limb3: 0x0 }, u384 { - limb0: 0xe6097cb818e60270dd7e085f, - limb1: 0xbfce616ba0bc782af946cef4, - limb2: 0xde0e78530127f82, + limb0: 0x6edbd627f865a9b1ce10e5e9, + limb1: 0x64e208061521698390472d10, + limb2: 0x2780f38e8fe486a9, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3341,90 +3341,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xbba707c9265e2eb2496fb0e7, - limb1: 0xb29933f6203b66c2a477a2e4, - limb2: 0x8ccd6dab406dc88, + limb0: 0x89540801a6c89fcece6d2f35, + limb1: 0x16df72c2978a74acb2b9c0e4, + limb2: 0x218a8e3038dc30dd, limb3: 0x0 }, u384 { - limb0: 0xb8cc3121495158093fe88448, - limb1: 0xc4715444249ea74712dbd1ac, - limb2: 0x142f55c2ba31a023, + limb0: 0x4282c1cc863a8f4c9850bbfc, + limb1: 0x2c18d34973915b7baae6fb21, + limb2: 0xa68eae2c728534f, limb3: 0x0 }, u384 { - limb0: 0xdeb49bc627ebf335d7c7f304, - limb1: 0xcde14557260c3a584b4340fe, - limb2: 0x7575bcd5e70140, + limb0: 0x94f520a7d9a554cd960c5f31, + limb1: 0x6dd6ded0181c15b8c7dc0a44, + limb2: 0x11ab628b8fbf0a2e, limb3: 0x0 }, u384 { - limb0: 0x48434dc46d5230c6a9f16441, - limb1: 0x49fc6a42b6bfa6930cca74db, - limb2: 0x186f0f4c1ee7458b, + limb0: 0x17017de18c7b80e9e0da12cf, + limb1: 0xe760b8c5c6d601255d3d2b8, + limb2: 0x102bded5bd8d0c60, limb3: 0x0 }, u384 { - limb0: 0xf506c3ccce5dfa7873d7db79, - limb1: 0xfe5edddc62d5bb507462679c, - limb2: 0x168bfb4d2fdce2de, + limb0: 0x17d5b4718ff3752a1f0a100e, + limb1: 0x534a099deb91d20c2714c08f, + limb2: 0x1564877ff104705, limb3: 0x0 }, u384 { - limb0: 0xdd0d957d14ab4d2cf5fe537c, - limb1: 0xb8e22518149899c44d0f404f, - limb2: 0x2d7a214b81c2417, + limb0: 0xcffe0dd3eda05b5683ad9e8c, + limb1: 0x469b6fd73cd1dbea29c84e59, + limb2: 0x18cba02aa34398e5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x10f0dfc617159606a231cac2, - limb1: 0x75ed0891c7498cb9374b14b4, - limb2: 0x2a3dbcd5c191daae, + limb0: 0xbc023da3634506192f9f6f82, + limb1: 0x7a82dbed35a935df3ed029ce, + limb2: 0x27b2d91566366c14, limb3: 0x0 }, u384 { - limb0: 0x1c18a5297eec2ed77e37a5cb, - limb1: 0x405e897d78d048fc1806a209, - limb2: 0x2274f5bf33627fd1, + limb0: 0xa0dc80293805e268324effe9, + limb1: 0x35821433d44431f68ec7e00a, + limb2: 0x4833773c7921921, limb3: 0x0 }, u384 { - limb0: 0x9fdb736ab6dc907d8dfc559a, - limb1: 0x3c12289e1e7900ac7d5795c9, - limb2: 0x57f39cedce5bf14, + limb0: 0x312dfb61a53e5869f4fe276, + limb1: 0x8e66d3877a1b303f5789cac9, + limb2: 0xf5f4a6d4204a5b4, limb3: 0x0 }, u384 { - limb0: 0x660431f0886b713503074e87, - limb1: 0x6aced36fa248010be4ba3e7d, - limb2: 0x139fee31c1e8441d, + limb0: 0xaf31dad3e068c9d75a438e20, + limb1: 0x45b586294c27114503c7172b, + limb2: 0x29a0cb016348047b, limb3: 0x0 }, u384 { - limb0: 0xa85d8d538e358ad8ea0fa86f, - limb1: 0x9c8fb70b88f97dccb1aa8da5, - limb2: 0x4baba07157c08f9, + limb0: 0x7eca0644ecfcb467677cb63d, + limb1: 0xb7f65548ae4e0f40e3eb2042, + limb2: 0x275cbfbd7ae0e6c1, limb3: 0x0 }, u384 { - limb0: 0xad6f14a7fba9b431777dc64e, - limb1: 0xa6cb7a1c355373035c485573, - limb2: 0x11f682c094b27514, + limb0: 0x23d6e36bc77c25df27eef542, + limb1: 0x17925dbf53ded8344fae671e, + limb2: 0x154132f56112174a, limb3: 0x0 }, u384 { - limb0: 0x3adbee4d5933182b61958fb, - limb1: 0x4f637e6a58d6f0b67efcd9a4, - limb2: 0x1d91df8d5cb702f, + limb0: 0xec9e976d5c37b4616e213f6e, + limb1: 0x97d8a281a1a4e3538880914c, + limb2: 0x9770f1a8783bc98, limb3: 0x0 }, u384 { - limb0: 0xe6097cb818e60270dd7e085f, - limb1: 0xbfce616ba0bc782af946cef4, - limb2: 0xde0e78530127f82, + limb0: 0x6edbd627f865a9b1ce10e5e9, + limb1: 0x64e208061521698390472d10, + limb2: 0x2780f38e8fe486a9, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3434,9 +3434,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x34a6c6084af4114ceff89b10, - limb1: 0x10f68e40ee426cc949e59661, - limb2: 0xc4c8803c30c362, + limb0: 0xbbc723f4bf5032b5a72053c1, + limb1: 0x82079573671164039d0997bb, + limb2: 0x200b1129a43fa07a, limb3: 0x0 }, u384 { @@ -3449,15 +3449,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xcb8aecaec558ab7c6f5f1e3b, - limb1: 0x1ee98562821aad5999418020, - limb2: 0x2e81b007b6315629, + limb0: 0x221b9d71a25a2d184455ebf, + limb1: 0x5a44e160af281140cb74af70, + limb2: 0x1503a6c1bb1fedbf, limb3: 0x0 }, u384 { - limb0: 0xdcbaf19fa54d3a4b2835e47f, - limb1: 0xd7e9e4985811a27aa0eb4199, - limb2: 0x11d38559c590b41b, + limb0: 0x30e520fe5b4b590cea4cfff5, + limb1: 0x2be395d5dd27dc3dcc8d5e53, + limb2: 0x9644daf71d6b403, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3465,49 +3465,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xaf934b50e3f8fe635532277d, - limb1: 0x5cd9b134f7b53743ccb8cd35, - limb2: 0x22103378d9160774, + limb0: 0x68c5cfccb6a5dbd20149f0d1, + limb1: 0xfec0c6f8a3b60b157e102150, + limb2: 0x1662e769787d76fd, limb3: 0x0 }, u384 { - limb0: 0xe92f4d7be3e21bc272ba265e, - limb1: 0x73fe6d4b0b2ebb505c21cdfb, - limb2: 0x471ab518c30fd96, + limb0: 0x8867297ebd58dfdcd18fea3c, + limb1: 0xac4cf8ebf733ad5f9543468e, + limb2: 0x1ebdf98a811bd572, limb3: 0x0 }, u384 { - limb0: 0x6d2e7398fda99ad18d7610b3, - limb1: 0xadfdca4ec577e3264b211b47, - limb2: 0x23445a7e69248593, + limb0: 0x7aead0e7b4f062154c8f74bd, + limb1: 0x7906606599ebb98c1c3d648a, + limb2: 0xff28367dfa64824, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x91bd30f1d7c8ea479d236023, - limb1: 0xec1c04ba834d57519cc1ab3f, - limb2: 0x2abc73316030c227, + limb0: 0x9df362f812505c5db4531ef6, + limb1: 0x567e5e6b8bf6db64cadca3be, + limb2: 0xea6a5d2502e2914, limb3: 0x0 }, u384 { - limb0: 0x2dbf0a51b3c722caa024b036, - limb1: 0xcf6d681286b38f124b405a3c, - limb2: 0x516419a6f807c29, + limb0: 0x92af62fb11e20b26bee6ffdf, + limb1: 0x83aac181977794b965a81af9, + limb2: 0x1c2ce90e55841c09, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xcb8aecaec558ab7c6f5f1e3b, - limb1: 0x1ee98562821aad5999418020, - limb2: 0x2e81b007b6315629, + limb0: 0x221b9d71a25a2d184455ebf, + limb1: 0x5a44e160af281140cb74af70, + limb2: 0x1503a6c1bb1fedbf, limb3: 0x0 }, u384 { - limb0: 0xdcbaf19fa54d3a4b2835e47f, - limb1: 0xd7e9e4985811a27aa0eb4199, - limb2: 0x11d38559c590b41b, + limb0: 0x30e520fe5b4b590cea4cfff5, + limb1: 0x2be395d5dd27dc3dcc8d5e53, + limb2: 0x9644daf71d6b403, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -3517,19 +3517,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xe3b1673c469b8a962d204ced, - limb1: 0x8b35b06dbe2e4092f4238256, - limb2: 0x45fff8ed716c360, + limb0: 0x9a49da12d9467df5593a5cf1, + limb1: 0x311a81850ce6e7cb8ac36896, + limb2: 0x13291e26321d140e, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x3466bbae90d2020449b7e4de, - limb1: 0x8d5ef23f1140818ac665dc0, - limb2: 0x3e2425875095f02, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 0 @@ -3537,15 +3530,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x1edaf8eaf92715edcbd18c96, - limb1: 0xf1b27c1992ef34ed23e073df, - limb2: 0x422a94a6701b1eb, + limb0: 0x9112e95627d0949ed60fc286, + limb1: 0xe1608165724cc31f65427057, + limb2: 0x2d5f4ba43944bf8a, limb3: 0x0 }, y: u384 { - limb0: 0xe32ea4969509a9cbdf7f123f, - limb1: 0x8dc16eaa05023d4d3002ac3d, - limb2: 0x116cbb266c71538, + limb0: 0x1cb314ec28220c0cf60fff59, + limb1: 0xe1e8d614fe841575019be8b, + limb2: 0x83c330b4f4a9f3b, limb3: 0x0 } } @@ -3558,71 +3551,71 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x7166a57040bbdcd76ae7dde5, - limb1: 0x72baf51720559e7e019345ac, - limb2: 0x11becc4c78f3d2a7, + limb0: 0xcfbe5d41c99a216df89ce656, + limb1: 0x88dd903ed65947443a07201c, + limb2: 0x296feaf94a70c670, limb3: 0x0 }, y: u384 { - limb0: 0x30bb074b7daaed0ed281b157, - limb1: 0x4aa1d4aaf02154155e93f113, - limb2: 0x257d1cf36057c3d0, + limb0: 0x23c2923c6e37582ea47f3984, + limb1: 0x97da62987153b67f78532ec9, + limb2: 0x2ad57e1e2dfbc396, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x4153e37278324c2c446699a2, - limb1: 0x8aa2ecec758c70128eae6f9a, - limb2: 0x1353ffa5f70f41ea, + limb0: 0x936ec5154ef749684fe24814, + limb1: 0x408af2d5a5c029ea6acfd7b9, + limb2: 0x159b1ad2d66a9b93, limb3: 0x0 }, y: u384 { - limb0: 0x36e80271925cdcbbfdd2d67, - limb1: 0x69d9e496bc750288e1a65f4b, - limb2: 0x29a977da6f99c33, + limb0: 0x7923e1c483dd28fa10a6d244, + limb1: 0xb61e016911e685f5fac8b34d, + limb2: 0xa896c54c4c097e7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xc97dfb3e55b5ee5d730e97a8, - limb1: 0x42545463641414f62f01f3dc, - limb2: 0x14c2bba791d8f05c, + limb0: 0x5c033dcaa168bb3183149e92, + limb1: 0xd23300c8307b739bc8453645, + limb2: 0x847d6bea8cea839, limb3: 0x0 }, y: u384 { - limb0: 0x8f6cfac1e5a092eef6e65b5d, - limb1: 0x5e7e67d2e2196e9a75cfa84e, - limb2: 0x2772bd1c5de4c257, + limb0: 0x5bcb40f3a926de3bea4d3510, + limb1: 0xe28d7717d05c87c564cf3cbc, + limb2: 0x13a159dbd1c1328, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xaa87ac3a4e3226938b1b118d, - limb1: 0xf5c38cbf13bad29eee48016a, - limb2: 0x68981dffa5f191c, + limb0: 0x6265206148c148ee5e2bde25, + limb1: 0xec3eb4b42f9fd2b101b5dd31, + limb2: 0x10cc0c0d11b2defe, limb3: 0x0 }, y: u384 { - limb0: 0x9b78b00ff95a5e7c86aa3775, - limb1: 0xecc953e1075f9f7553a0f579, - limb2: 0x1c87e428d0b9cdca, + limb0: 0xcf2d6be103e6922bdc0e014d, + limb1: 0x99b644917953b6d8a13339be, + limb2: 0x12855297e9c4cbed, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb2459c0c144a6ec7d9fc37dc, - limb1: 0xa113d8f0220762b71b9e111f, - limb2: 0x11b6ebfe91adfda6, + limb0: 0xda4f939f82d5de69b0fbd641, + limb1: 0x1cb72600bc3eabb7f8f3f6cf, + limb2: 0x202dbfd87b97bd93, limb3: 0x0 }, y: u384 { - limb0: 0xe1e6f92328253a83ae07c575, - limb1: 0x7aa55e64405c1270674cb83a, - limb2: 0xf41a7713c13eeb7, + limb0: 0xf897e1500772f0062bccfe9c, + limb1: 0x1eab469163efd95c2ab9d810, + limb2: 0x2e72422d124f7a68, limb3: 0x0 } }, @@ -3630,19 +3623,19 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x8af5890333b5b3cedfec4623ab899605, high: 0x9f004f38018399ee6a8e2f9c19ed34 + low: 0xab0141db7d3e8fff5fab498e3b797f21, high: 0x25a17e9257e80c867382749ff2813a12 }, u256 { - low: 0xbf3df0bbf66ac168b4a1ca795718ada2, high: 0x1498c76ed17034ce51797350e6256403 + low: 0x5be90fa349a921cc295b930b191c8ab8, high: 0x2e67be2a9b4ef85a9b0af0c14a976b2a }, u256 { - low: 0xdfde228125fb5f3d866d7002091472ad, high: 0x9fa5a78c8bf23fb9a431f7a41c30359 + low: 0xe00509a342891983c501318f321184d8, high: 0x2d3d326e8038ea8ba336e54a5809da35 }, u256 { - low: 0x4b5ca436953c178e61067a8cd7a3283c, high: 0x1e1b8c3bce9b2e70b4d4dfccb7d779cc + low: 0xf4ee3102d39a23abd3f766504a0e9ef7, high: 0x81a7a0da29866100f86b6985d3e9f26 }, u256 { - low: 0x843b2a7d15ab2c21ccc93ff710fce97d, high: 0x43f27bb0a1727f7ea5f24b6de6fec4b + low: 0x8873b0fcd1969e1111a8d994d5f626b4, high: 0x2d7532bf31f6a5d222dc132a420ac8dd }, ] .span(); @@ -3650,320 +3643,327 @@ mod msm_tests { array![ ( array![ - 0x1, -0x1, 0x0, - 0x1, - 0x0, - 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x1, -0x1, 0x0, - -0x1, 0x0, - 0x1, - -0x1, - -0x1, 0x0, - -0x1, + 0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, 0x1, + 0x1, + 0x0, -0x1, + 0x0, + 0x0, 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x1, - -0x1, + 0x0, 0x0, -0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x0, -0x1, -0x1, 0x0, - 0x1, 0x0, - 0x1, -0x1, - 0x0, 0x1, 0x0, - 0x1, -0x1, 0x0, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, + 0x0, 0x1, 0x0, + 0x0, 0x1, - -0x1, 0x1, -0x1, 0x0, + 0x0, -0x1, + 0x0, + 0x1, -0x1, -0x1, 0x0, - 0x0, + 0x1, + 0x1, 0x0, -0x1, + 0x1, -0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x1, ] .span(), array![ - 0x1, - 0x1, - -0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, + 0x1, 0x0, -0x1, 0x0, + 0x1, -0x1, + 0x1, 0x0, - 0x0, - -0x1, - -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, 0x0, -0x1, - 0x1, - 0x0, - -0x1, -0x1, + 0x0, 0x1, -0x1, - -0x1, - 0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, 0x0, - 0x0, -0x1, + -0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, + 0x0, 0x1, 0x0, 0x1, + 0x1, + -0x1, + 0x0, -0x1, + 0x0, 0x1, 0x1, + 0x0, + -0x1, + 0x1, + 0x0, + -0x1, -0x1, 0x0, -0x1, -0x1, -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, + 0x0, 0x1, - -0x1, 0x0, 0x1, 0x1, + -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x0, -0x1, - 0x1, - 0x1, 0x0, 0x1, 0x1, + -0x1, + 0x0, + 0x0, 0x0, - 0x1, -0x1, ] .span() ), ( array![ + -0x1, -0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, - -0x1, + 0x1, 0x1, 0x0, - -0x1, - 0x0, - -0x1, 0x0, - 0x1, -0x1, 0x1, 0x0, 0x1, -0x1, - -0x1, - 0x1, 0x0, + -0x1, 0x1, 0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x1, 0x1, -0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, -0x1, - -0x1, - 0x1, + 0x0, 0x0, -0x1, 0x1, - 0x1, -0x1, - 0x1, 0x0, 0x1, 0x0, - 0x0, - -0x1, - 0x0, -0x1, - 0x0, - 0x1, 0x1, + -0x1, 0x1, + -0x1, + 0x0, 0x0, -0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, 0x0, + -0x1, 0x1, 0x0, + -0x1, + 0x0, 0x1, 0x0, 0x0, -0x1, - 0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x0, 0x1, -0x1, - -0x1, + 0x1, + 0x1, + 0x1, ] .span(), array![ - 0x0, - 0x0, 0x1, -0x1, 0x0, - -0x1, 0x0, - 0x1, + -0x1, 0x0, 0x1, 0x1, + -0x1, 0x0, 0x1, 0x0, -0x1, - -0x1, + 0x0, 0x1, 0x1, + 0x0, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x1, + 0x1, + 0x1, 0x0, + -0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, - 0x1, -0x1, -0x1, - 0x0, 0x1, - -0x1, - 0x0, 0x0, 0x1, - 0x0, -0x1, -0x1, 0x1, 0x0, - 0x1, + -0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x1, - -0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x0, @@ -3971,97 +3971,94 @@ mod msm_tests { 0x0, -0x1, -0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, ] .span() ), ( array![ - 0x0, - -0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, 0x1, + -0x1, + 0x1, + -0x1, 0x0, 0x0, 0x1, 0x1, 0x0, -0x1, - 0x0, - -0x1, -0x1, -0x1, - -0x1, - 0x1, + 0x0, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, -0x1, 0x0, - 0x0, 0x1, - 0x0, 0x1, -0x1, -0x1, - -0x1, + 0x0, 0x1, + 0x0, 0x1, - -0x1, + 0x0, + 0x0, + 0x1, + 0x0, 0x0, -0x1, 0x1, + 0x0, -0x1, 0x1, -0x1, 0x1, -0x1, - 0x0, - 0x0, + 0x1, + 0x1, 0x0, 0x0, 0x1, -0x1, 0x0, - -0x1, 0x0, 0x1, - 0x0, 0x1, + -0x1, + -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, - 0x0, + -0x1, 0x1, 0x0, - 0x1, + 0x0, 0x1, 0x0, 0x1, + -0x1, + -0x1, + 0x1, 0x0, 0x0, 0x0, @@ -4070,420 +4067,423 @@ mod msm_tests { ] .span(), array![ - 0x0, - 0x1, - 0x0, 0x1, -0x1, -0x1, 0x0, - 0x1, - 0x0, -0x1, + -0x1, + 0x1, 0x0, 0x1, - -0x1, + 0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x0, - -0x1, -0x1, -0x1, 0x0, -0x1, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, -0x1, 0x1, 0x1, - 0x1, - -0x1, 0x0, 0x1, 0x0, - 0x0, 0x1, - 0x0, -0x1, 0x0, - 0x0, - -0x1, - 0x0, - -0x1, - 0x1, 0x1, 0x0, 0x1, 0x1, + 0x1, -0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, + 0x1, + -0x1, + 0x1, -0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, 0x1, + -0x1, + 0x0, + 0x1, 0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, 0x1, + 0x0, -0x1, 0x0, + 0x0, + 0x0, + -0x1, 0x1, - 0x1, + 0x0, + 0x0, + -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x1, + -0x1, ] .span() ), ( array![ - 0x0, -0x1, + 0x1, 0x0, 0x1, - -0x1, + 0x1, 0x1, -0x1, 0x0, - 0x0, 0x1, - -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x1, -0x1, - 0x1, + 0x0, + 0x0, -0x1, - 0x1, -0x1, 0x1, - 0x1, 0x0, 0x0, 0x1, - -0x1, 0x1, 0x0, - -0x1, + 0x1, -0x1, 0x1, 0x0, + 0x1, + -0x1, + -0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, -0x1, - -0x1, 0x1, -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x0, 0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, + 0x0, 0x1, 0x0, + 0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, 0x0, - -0x1, + 0x0, -0x1, 0x0, - 0x1, 0x0, - 0x1, - 0x1, + 0x0, 0x1, -0x1, + 0x0, 0x1, + -0x1, + -0x1, 0x1, - 0x0, -0x1, 0x0, 0x1, - 0x0, - 0x0, + 0x1, + -0x1, 0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, ] .span(), array![ - 0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x0, -0x1, - 0x1, + -0x1, + 0x0, 0x0, 0x0, - 0x1, - -0x1, - 0x1, - 0x1, 0x1, -0x1, -0x1, 0x0, -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x0, - 0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, -0x1, + 0x0, + -0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x1, - -0x1, - 0x0, 0x0, -0x1, -0x1, + 0x0, + -0x1, + 0x0, 0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x1, -0x1, 0x1, -0x1, + -0x1, 0x0, -0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, - 0x1, -0x1, -0x1, + 0x1, -0x1, 0x0, -0x1, 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, - 0x0, 0x1, + 0x0, 0x1, + 0x0, 0x1, - -0x1, 0x0, -0x1, - -0x1, + 0x0, 0x0, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, ] .span() ), ( array![ - 0x0, - 0x0, - -0x1, 0x1, + -0x1, 0x0, 0x1, 0x1, + 0x0, 0x1, 0x0, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, + 0x0, + 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, - -0x1, - 0x1, 0x1, - 0x1, - 0x0, - -0x1, 0x0, 0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, -0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, -0x1, - 0x0, + 0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, -0x1, -0x1, + -0x1, + -0x1, + 0x1, + 0x0, + -0x1, + 0x1, + 0x1, 0x0, 0x0, -0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x0, + -0x1, -0x1, 0x0, + 0x1, + 0x1, + 0x0, 0x0, 0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, - -0x1, 0x1, -0x1, - -0x1, 0x0, - -0x1, - 0x0, - 0x0, - -0x1, 0x0, - 0x1, -0x1, -0x1, 0x1, ] .span(), array![ + 0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x1, -0x1, + 0x0, + 0x1, -0x1, -0x1, 0x1, - -0x1, 0x0, -0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, -0x1, - 0x0, -0x1, - 0x0, + 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, -0x1, - 0x1, + 0x0, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, -0x1, - 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, 0x1, - -0x1, - 0x0, 0x1, 0x0, + 0x0, 0x1, + -0x1, + -0x1, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x0, - 0x0, -0x1, 0x1, -0x1, -0x1, -0x1, 0x1, + 0x1, -0x1, 0x0, - -0x1, - 0x1, 0x1, 0x0, - 0x0, - -0x1, + 0x1, 0x1, 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x1, 0x0, - -0x1, - 0x1, - -0x1, 0x0, 0x1, - 0x0, - 0x0, + 0x1, -0x1, ] .span() @@ -4494,121 +4494,121 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x19f772c7f3157fd1303d423d, - limb1: 0xb69b6e9e652099b832bcad40, - limb2: 0xff4d1a2ad78a5be, + limb0: 0x43fdd079273b1a83058ca93f, + limb1: 0x7adf04c0358bea2f2ec2c134, + limb2: 0xb5a15621d9eb03d, limb3: 0x0 }, y: u384 { - limb0: 0xc18263febb01263ef1c55e04, - limb1: 0x18ca1accb32fd7ba137a71b9, - limb2: 0x1ba3ec534ed1a26f, + limb0: 0xeee346dd66592bdc3d4a73fd, + limb1: 0x327f1c504eb4f692a779f7a4, + limb2: 0x19102b8e3dc5de83, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x3471d0ba0f311d3be89ebcfc, - limb1: 0x237bf286f82b1170e1dc0b55, - limb2: 0x9849cebc5a1e47a, + limb0: 0xaadde861be33ecca5221d86, + limb1: 0xde37a37be68821ebb7b698ac, + limb2: 0x2fce7aa35fe8456a, limb3: 0x0 }, y: u384 { - limb0: 0x4d8561ff79c82022d802d018, - limb1: 0xe320ba5b96b23291130b5c92, - limb2: 0x181c169f4082dcd3, + limb0: 0x7c3ee4faae36f0dd12dbe949, + limb1: 0x1e379d1eccc4d2185afc5916, + limb2: 0x1c96aa9970569d9, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x7efa17162619e134f05f13d9, - limb1: 0x4681c6d0e6a38a914457856a, - limb2: 0x67683eed8a97599, + limb0: 0x5733dd8f66e0339c0aeea91b, + limb1: 0xc051b0de89b0d90329dcd9aa, + limb2: 0x264ddb279d9f318d, limb3: 0x0 }, y: u384 { - limb0: 0xb65aef3b8cc1ecaca0665fb7, - limb1: 0x8f2beddc240a891f56e82dc, - limb2: 0x4bd8022f39fcc5e, + limb0: 0xfe03b9f407c08409b61b0e2d, + limb1: 0x60a4265635706b17d24355eb, + limb2: 0x252106fbb318b52, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x65438512e677bb6940ec0a24, - limb1: 0xb1a3c5470e14333659866d3f, - limb2: 0xa84a362ca9de36f, + limb0: 0x52d5d84589bfaf0b1e5164c7, + limb1: 0x1d430034ff28e8a0bfbe5082, + limb2: 0xa1f32ef3bc186b2, limb3: 0x0 }, u384 { - limb0: 0x9b88dd07f8f9d351f29cf07e, - limb1: 0x5adf3700f46d287b0aae5277, - limb2: 0x13dd4356a361b5b4, + limb0: 0x90914905ca4232ac730e9e78, + limb1: 0x189f43c242ed63e56d93f6cd, + limb2: 0x7342f71abff359d, limb3: 0x0 }, u384 { - limb0: 0xa7f8b1ef522c654afbf02229, - limb1: 0x8f230d8cb9f262d1dd3d4f07, - limb2: 0x1bf4ba846270ccc7, + limb0: 0x5f9ccb49c2fab24df80ad1ba, + limb1: 0x6680cf3d4f9021e8a575616f, + limb2: 0x13222bc3eee2a27a, limb3: 0x0 }, u384 { - limb0: 0x4692dc8f638788b506f4f25c, - limb1: 0x255dc6d0da15f5c5ed037b6, - limb2: 0x222151e8e28ac160, + limb0: 0x745ddb3d27157d2c693d85a4, + limb1: 0x343c6045bd0da4113c4e8510, + limb2: 0x27358b9e5041224f, limb3: 0x0 }, u384 { - limb0: 0xa1c45a32de7ca812198f7234, - limb1: 0xa1ed0c3b6a6b619f2eeca1e9, - limb2: 0x154f9e812bbcb7c1, + limb0: 0x2ef86a92f16e57ad8c160a09, + limb1: 0x7102e7108ce4173753d23c0d, + limb2: 0x1f1099394366ea42, limb3: 0x0 }, u384 { - limb0: 0x8de0d0b02a4578b9d7862e7e, - limb1: 0xb85045b68181585d1e34f8fe, - limb2: 0x30644e72e131a029, + limb0: 0x57cca7bb9c0468c9e73ffb2b, + limb1: 0xdc2822db40c0ac2db9ddbf10, + limb2: 0x183227397098d014, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x10bbaf7b068e48e5718b2990, - limb1: 0x7e0f5f211666fd65159a5427, - limb2: 0x2788f445a4548a36, + limb0: 0x9eec9df92b6b0f8e7fe59766, + limb1: 0xb88529473f41407bc795cad5, + limb2: 0x13b8a7f19c1ab9dd, limb3: 0x0 }, u384 { - limb0: 0x13a4498b8769c81e0bd15808, - limb1: 0xfc76b5c6512ba5f825c7eb8d, - limb2: 0x267082396a557043, + limb0: 0xb71771fe32991fb7f098d649, + limb1: 0x1fa986a36597f47ee812ad0, + limb2: 0x41c51129181bf28, limb3: 0x0 }, u384 { - limb0: 0x8e936ad48c30cf34ee6deaba, - limb1: 0x7c04dae8f1532ca4fa772af3, - limb2: 0xc9b4bf294c8be5a, + limb0: 0xb5a092520dc38dde94823097, + limb1: 0xd1a4c8f13a7ccabea1e59586, + limb2: 0x70178fae1ecc7b4, limb3: 0x0 }, u384 { - limb0: 0x96d6133290dddd9b0593865f, - limb1: 0x868f800fb4682090a28802d4, - limb2: 0x267032614890887b, + limb0: 0xfc027b9d50f7db895c3f8d00, + limb1: 0x5182aefc2eab956d3046fd26, + limb2: 0x43ef49b3080951f, limb3: 0x0 }, u384 { - limb0: 0x8058180fad7ba2a086b5b795, - limb1: 0xfe75ef303f0af0c73a0f9511, - limb2: 0x1ac8819486bec730, + limb0: 0x99501b16846fb3c09f44c7bf, + limb1: 0xc7fd5f4f2c588711d4c382bc, + limb2: 0x2c8e9e8430478880, limb3: 0x0 }, u384 { - limb0: 0x46582078502b77b6d1c55d00, - limb1: 0x9bcbc66eefab1683ca9dd6c6, - limb2: 0x2f22243d68331f0c, + limb0: 0xf9727b0c07953c61a92ecd34, + limb1: 0x9806dd1b684bbb62ffb7c62, + limb2: 0xd862d862f018970, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4616,102 +4616,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x8f16979b97dc06660079242c, - limb1: 0x8365d11d774f11d2040435b9, - limb2: 0x3d58c98d372dd66, + limb0: 0x6261bc9f507739b69c7ba4ec, + limb1: 0xf5681c00f86af555e1078817, + limb2: 0x251adc0e32b117d8, limb3: 0x0 }, u384 { - limb0: 0x359dd15f549984a4bcf222fb, - limb1: 0x47f451f0aad857d3902a4a65, - limb2: 0x1c2deedd9bff89e2, + limb0: 0x64b2669fe340d53669b1e997, + limb1: 0x82f05b28e83efc1046877302, + limb2: 0x2c51ec5fee5370b1, limb3: 0x0 }, u384 { - limb0: 0xf32bea26aeec768bab106, - limb1: 0xe4e69d49d5841f24ceb346c5, - limb2: 0xe63b8416d5158fb, + limb0: 0xd9bdccc0fe025245e0084bbc, + limb1: 0x221037583182a1e8096fb03a, + limb2: 0x2d0fdbe736decf6e, limb3: 0x0 }, u384 { - limb0: 0x870b3964c716755ffce10e94, - limb1: 0x2cff3203e375c4c656a07783, - limb2: 0x5ae57d6d5090e2a, + limb0: 0xb51e9f95e26f436213b7ceb4, + limb1: 0x5271052af841186013c442b1, + limb2: 0x1d7d559a3299c2ad, limb3: 0x0 }, u384 { - limb0: 0xac71c5602f85de2847f655fa, - limb1: 0x545668c836cbbcf008fdfa0c, - limb2: 0x1b89a83e403f9598, + limb0: 0xee7420dba729ab107afe7c79, + limb1: 0x73959f4856063a4b1d7e1511, + limb2: 0xab2cb1872fde0f8, limb3: 0x0 }, u384 { - limb0: 0x21e64294fb5cb32067338f1f, - limb1: 0x8f6b76af614a59fdf7dc86d1, - limb2: 0x1d45a749f435d9f5, + limb0: 0x8740df86fc3cee0c4a0bfdc7, + limb1: 0x4662121ed814c632c59ff289, + limb2: 0xb850a4a62c3c500, limb3: 0x0 }, u384 { - limb0: 0xbcdd7d70fe1774c948785d7b, - limb1: 0x9d31044d987a766b88b89a9, - limb2: 0xc9e436b572403ea, + limb0: 0x29246d8bbeea4700ad83842d, + limb1: 0x9eed1d65da7e118b1ec156ed, + limb2: 0xa813d3027a295a4, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x614f79569b69c282a3a78222, - limb1: 0x98d91f64032477411cc2752, - limb2: 0x15d23feb2a9a5e50, + limb0: 0x74540f5e4620a294a733c8eb, + limb1: 0x713f361f3c426915bf3ff5ef, + limb2: 0xac5a961f31e8d6f, limb3: 0x0 }, u384 { - limb0: 0x6a0947881dfc402c727a0d8a, - limb1: 0x84c395e5f080412d4254ed84, - limb2: 0x1288e9c67c9d1078, + limb0: 0x254655fa97cb5f27d1ca82db, + limb1: 0x5efc93ea30c7dd7cb838072, + limb2: 0xc54f337b4853d78, limb3: 0x0 }, u384 { - limb0: 0xabba407da4926d9ecb49c02e, - limb1: 0x740e90bad3f985eeef6580da, - limb2: 0x25d1e3d7be5a3b0f, + limb0: 0x20e1b6f6294aa99bbd8691c5, + limb1: 0x74ee5ad3af76603be5b0c094, + limb2: 0x15046af0a5c6571e, limb3: 0x0 }, u384 { - limb0: 0x9be8896b04c63d71f8cec4d8, - limb1: 0xe8cd0e2caf1b55fe36ae1cf0, - limb2: 0x9aca010da71432b, + limb0: 0x92f410d11e52a22a94a43e66, + limb1: 0xad0d363bcb4400c3586ac24a, + limb2: 0x207585c32d9c793b, limb3: 0x0 }, u384 { - limb0: 0xc3c8fca0179b97d1eef88439, - limb1: 0x8737f7ea0b49c792a4f3d59e, - limb2: 0x16016a113c2e8583, + limb0: 0xb2242e2747a722cc1d6d32f8, + limb1: 0xe9522aeab86063c23dc8dde3, + limb2: 0x28ff8fb95ff51856, limb3: 0x0 }, u384 { - limb0: 0x28466c95c8519214da4709e5, - limb1: 0x26775d123bd0671793cc6f92, - limb2: 0x8d4cd5229cd3b03, + limb0: 0xa1f8037624834303900e9833, + limb1: 0xee2612665e0afde131d80aaf, + limb2: 0x2f94018d6ef16404, limb3: 0x0 }, u384 { - limb0: 0x96d6133290dddd9b05938662, - limb1: 0x868f800fb4682090a28802d4, - limb2: 0x267032614890887b, + limb0: 0xfc027b9d50f7db895c3f8d03, + limb1: 0x5182aefc2eab956d3046fd26, + limb2: 0x43ef49b3080951f, limb3: 0x0 }, u384 { - limb0: 0x8058180fad7ba2a086b5b795, - limb1: 0xfe75ef303f0af0c73a0f9511, - limb2: 0x1ac8819486bec730, + limb0: 0x99501b16846fb3c09f44c7bf, + limb1: 0xc7fd5f4f2c588711d4c382bc, + limb2: 0x2c8e9e8430478880, limb3: 0x0 }, u384 { - limb0: 0x46582078502b77b6d1c55d00, - limb1: 0x9bcbc66eefab1683ca9dd6c6, - limb2: 0x2f22243d68331f0c, + limb0: 0xf9727b0c07953c61a92ecd34, + limb1: 0x9806dd1b684bbb62ffb7c62, + limb2: 0xd862d862f018970, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4721,78 +4721,78 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x67de338d6b5c1c33d444c042, - limb1: 0x605d351eaece6c83dffd14bf, - limb2: 0x26bf14b26be21cb6, + limb0: 0xeb56bbbc9b071367d59b7404, + limb1: 0xea5b1ae9ec7f9a8af13fe194, + limb2: 0x18bc63e5b80a14de, limb3: 0x0 }, u384 { - limb0: 0xf3aa55902c01a6cdf0caa316, - limb1: 0xfae2dce9862647835c4216b8, - limb2: 0x1992ba6630fd38b0, + limb0: 0x946cfbcd403faed7cdbb043b, + limb1: 0x734b732ae1ced6121a9fe6c9, + limb2: 0x1924a459d4a3eff2, limb3: 0x0 }, u384 { - limb0: 0x129056b1bd079006b2a167f1, - limb1: 0xf9c3db0044d37fa2ed7e19d7, - limb2: 0x284c6f26029011a0, + limb0: 0x599b9be73beec7bd24fd1b50, + limb1: 0xc6d8e87a5eac32c0403ad6fa, + limb2: 0x26b5a8f323cce76d, limb3: 0x0 }, u384 { - limb0: 0x72010946e8d1c99295f6bb6d, - limb1: 0x882bcf8f2c1e3023b296460d, - limb2: 0x8a2aa744313053d, + limb0: 0x6774b1616216ef72461f5583, + limb1: 0x3903c7b5af3b55907472a084, + limb2: 0x2b69c5b9a75f43c2, limb3: 0x0 }, u384 { - limb0: 0x4ada7e8d69181593c7857a4a, - limb1: 0x81059110353b7cdaa3083f24, - limb2: 0xf98e2798503bfa6, + limb0: 0xc165a3a46e1b8401af3c8741, + limb1: 0x1d63281a124f3a4783b61c48, + limb2: 0x18af227b2988ae3e, limb3: 0x0 }, u384 { - limb0: 0x568d329f4a2d7438b5244235, - limb1: 0xb85045b68181585d7deb05ce, - limb2: 0x30644e72e131a029, + limb0: 0x87b51b6384667f14e38ae884, + limb1: 0xdc2822db40c0ac2e9293032e, + limb2: 0x183227397098d014, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x309b913c659ba7ef488c9d93, - limb1: 0x767e3bf08aee18a5ef33047f, - limb2: 0x22263526c82b3c35, + limb0: 0xea92f5d497f44ccb4e691875, + limb1: 0x93f217320fb9dd09be1583ed, + limb2: 0x1ada1455f9152bf5, limb3: 0x0 }, u384 { - limb0: 0xd5e4a699999c5efaf1890b3f, - limb1: 0x8237cb8b91b4ae92e07c5b11, - limb2: 0x1a64c8ee99a258b7, + limb0: 0x6c4d7c1eca27f4b3530de6a5, + limb1: 0xdb331495b679fb62b667d4bc, + limb2: 0x9b715b22cf1dd69, limb3: 0x0 }, u384 { - limb0: 0x94acb70eb6f82cd91ef80399, - limb1: 0x383ce15871cfa9135d7ff823, - limb2: 0x1563fcc90fd50a81, + limb0: 0x69e3173e8a4832671fb57af3, + limb1: 0x52d3a70c33bdbea7f9a128a7, + limb2: 0xa4305c9f115ee69, limb3: 0x0 }, u384 { - limb0: 0x7bd7b086a94bc219bbc58893, - limb1: 0x58969409ac64633b56e2853c, - limb2: 0x1d562a599a2e6924, + limb0: 0x7932694da098360391d02e73, + limb1: 0x14175f767d94c5f2513831ac, + limb2: 0x2dab5f54354a7650, limb3: 0x0 }, u384 { - limb0: 0xe7204a0f23c991327c5af90a, - limb1: 0xfaf425f7f84d4bfadda5667d, - limb2: 0x2437188f828c12d7, + limb0: 0xdf51497889683d7a14f6028d, + limb1: 0x2eb8aadcc641a243b0657b4e, + limb2: 0x1e539859dfbea2c3, limb3: 0x0 }, u384 { - limb0: 0xc36bf7f8f7ef4e3540e6e4fa, - limb1: 0x769afccfdb1f466d83fd0e1f, - limb2: 0x52e0a816ed84027, + limb0: 0x9b34378c4f0da42ee2165634, + limb1: 0x5e7814cc8709dc573e890f7c, + limb2: 0x197616b7cde9946c, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4800,102 +4800,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf9d9bca3323531464512b705, - limb1: 0xac3eed22b3eed39f391c9d35, - limb2: 0x24ebbff817a69cd9, + limb0: 0x5d13dde80462086015e1e5f7, + limb1: 0xd4dc4db2e406605382ad49e3, + limb2: 0x16ec559fc9925c0d, limb3: 0x0 }, u384 { - limb0: 0xdba9ff2decf36aae7290c88a, - limb1: 0x8cf3d1d0f5395d618c6f25a0, - limb2: 0x7e176b67ba388ce, + limb0: 0xfe8d064274d18738bf545a13, + limb1: 0x9f994bd0d1c185a0cfaa6429, + limb2: 0x1097dd8d0a15ba8d, limb3: 0x0 }, u384 { - limb0: 0x4827b5da2d4abca2389ff471, - limb1: 0x7ad4934e54646e396a406070, - limb2: 0x1bb739daf3917a3f, + limb0: 0xd0d7f7fce9b3107c25a0461f, + limb1: 0x5560ae765ced61db3ea5f7e7, + limb2: 0x27cd37e50d5303c3, limb3: 0x0 }, u384 { - limb0: 0xf07b215485cf430d432fb24c, - limb1: 0x6b8896a0b27897620c001631, - limb2: 0x130b41053bf27913, + limb0: 0xc9d5d5ae3f36d0a79440d10f, + limb1: 0x2c6baa1309c35beccefbe660, + limb2: 0x2034103ecb1ac1d0, limb3: 0x0 }, u384 { - limb0: 0xe20a7f3abfa73c3840a30539, - limb1: 0xb1df3499f5ba2c567eb3a98e, - limb2: 0x272d287c3630268, + limb0: 0xdf7f40f515547e07209a7769, + limb1: 0xff2dddb4b28c202324a817d8, + limb2: 0x1ee2afbc473ab162, limb3: 0x0 }, u384 { - limb0: 0x4dae070706508b4fc1b33aab, - limb1: 0xb184422b04d63f977181d32f, - limb2: 0xaae780d07043b6d, + limb0: 0xc69b64d3817012087d6b2a3a, + limb1: 0xfc457b75ab3a828cb05ea289, + limb2: 0x15ac820c62cee2, limb3: 0x0 }, u384 { - limb0: 0x952f61fe2c59371a2b1061a, - limb1: 0x7c3d6bde78d1a73a4757608a, - limb2: 0xdf24de942b260fb, + limb0: 0x6feda884e4da6c3c2c4a697e, + limb1: 0xb9da09f4f7b85badc84000f1, + limb2: 0x13769bf3ba67f517, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xc0ef1e9ab891dfa028abde2b, - limb1: 0xf2da28649dc799369e96385a, - limb2: 0x5aa028e961e744c, + limb0: 0x574716f08bbc5a4b12be4c18, + limb1: 0x385ffdfadac3ebfa2bf2138, + limb2: 0x2029ee8f0a0de3b7, limb3: 0x0 }, u384 { - limb0: 0x193c293f90b490d9fc1e2476, - limb1: 0xce571cec339cb35b09f3a6a4, - limb2: 0x1eca0c58ebb569fc, + limb0: 0x44e8745c5e77de19f929b3ef, + limb1: 0x91993dc1236df22823377e35, + limb2: 0x1d25411686d5983d, limb3: 0x0 }, u384 { - limb0: 0x55945a9ee8c7fa74846b0d84, - limb1: 0xf0665e52d3eda2dc80fe7dd9, - limb2: 0xfc7a7e84e4d7f59, + limb0: 0x3da945bb9ed897355f2070d9, + limb1: 0xf87af5249b393bf7ece379f6, + limb2: 0x1ec9115dd341cb3b, limb3: 0x0 }, u384 { - limb0: 0xd33f0db5e93dd60ecae33cbe, - limb1: 0xfa16ca08d18919cc4d7bf11, - limb2: 0x1960174dd453374f, + limb0: 0x1cd4d215c55b4a917a62abf9, + limb1: 0xa747647203f425c7eb39d93f, + limb2: 0x12af46f9f55fae68, limb3: 0x0 }, u384 { - limb0: 0xba61efac8cb7fa64b59ffbcf, - limb1: 0x273b2067799e1c84a69b968, - limb2: 0x264175b75ee350ec, + limb0: 0x395dc36dee1f94f3e0f5f3be, + limb1: 0xf6bc89bf063c317298957186, + limb2: 0x3e941da09ca855f, limb3: 0x0 }, u384 { - limb0: 0xdef09ef99ec61778e1acb287, - limb1: 0x9c0dd7c8032d7c5be9772282, - limb2: 0x24ee1c4d5c5dcaf7, + limb0: 0xd30df3563b5092dced7b8048, + limb1: 0xb5eb9fbb4759fb501dbaec8b, + limb2: 0x2640fb7e79a10b84, limb3: 0x0 }, u384 { - limb0: 0x7bd7b086a94bc219bbc58896, - limb1: 0x58969409ac64633b56e2853c, - limb2: 0x1d562a599a2e6924, + limb0: 0x7932694da098360391d02e76, + limb1: 0x14175f767d94c5f2513831ac, + limb2: 0x2dab5f54354a7650, limb3: 0x0 }, u384 { - limb0: 0xe7204a0f23c991327c5af90a, - limb1: 0xfaf425f7f84d4bfadda5667d, - limb2: 0x2437188f828c12d7, + limb0: 0xdf51497889683d7a14f6028d, + limb1: 0x2eb8aadcc641a243b0657b4e, + limb2: 0x1e539859dfbea2c3, limb3: 0x0 }, u384 { - limb0: 0xc36bf7f8f7ef4e3540e6e4fa, - limb1: 0x769afccfdb1f466d83fd0e1f, - limb2: 0x52e0a816ed84027, + limb0: 0x9b34378c4f0da42ee2165634, + limb1: 0x5e7814cc8709dc573e890f7c, + limb2: 0x197616b7cde9946c, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4905,9 +4905,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xcca52ea10edbbfe48c3be79f, - limb1: 0x574ae41786e1c779cef22cb2, - limb2: 0x195b6abb35f1b5cf, + limb0: 0xd64ace3f860d8c719fa5c2a6, + limb1: 0x8872823aae9926358f39703e, + limb2: 0x10940dfe6fb0b3db, limb3: 0x0 }, u384 { @@ -4920,15 +4920,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x4cfa68257c8ebbb7b720edd8, - limb1: 0x700947290a6f53e7bfa793e4, - limb2: 0x2898a05d1453a39e, + limb0: 0xa2448614d548473d2e57f2d2, + limb1: 0xb02c9d0f02c6e1e9f1a15407, + limb2: 0xebe948ac40a101, limb3: 0x0 }, u384 { - limb0: 0xb505e2bd06d58da5ff7f2c72, - limb1: 0x4e528c5ea2b2bc5b714dd9d1, - limb2: 0x20692d9842e64616, + limb0: 0x6f01d904f57da5c500e933ed, + limb1: 0xd217371292c9b5cc4d6f62cc, + limb2: 0xaac471ac4dbc95a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4936,49 +4936,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x38057b944c9aebd95bcf961a, - limb1: 0x2e694cb981a92fc29e470d1c, - limb2: 0xf0f75943a9a7c46, + limb0: 0xa7acb42cb3f72279e4c4cd9b, + limb1: 0x4eefcd1de3d52832fd5b275e, + limb2: 0x15d8042f2152cc9a, limb3: 0x0 }, u384 { - limb0: 0x793be12d862e64d9aa43d36c, - limb1: 0xad13f06ff41d7c89ae44e6bc, - limb2: 0x1170dda85dedd743, + limb0: 0x6d77e9c27b82944fedba910c, + limb1: 0x88d214db12bea8fbfe8634f1, + limb2: 0x135e7c40a32bd0a2, limb3: 0x0 }, u384 { - limb0: 0xf26ff1e2ae837f10d78326aa, - limb1: 0xa65b9ab5a6db08d3b38ab9ba, - limb2: 0x2e7f4c957b50ec78, + limb0: 0x7690647b6a046da3f3c7261c, + limb1: 0x5fcf2093bb2bbf5d5f162c31, + limb2: 0x28a9868a5961c289, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x160ba355fd6b1af97468cefa, - limb1: 0xdf7b4a0e1c4b4afc0ff3e68a, - limb2: 0x190144317a97aa87, + limb0: 0xe6cd923e7fd8d5b78b07d876, + limb1: 0x1085d72d0854a5bdd4e3fc16, + limb2: 0x2c3bbda04c1e305, limb3: 0x0 }, u384 { - limb0: 0x4e2e131c9c3f90c44d838ac8, - limb1: 0x7a5719aee515845724e6b852, - limb2: 0x72ebe3064f91ef, + limb0: 0x4d058b0ee078f14f02bb9bc7, + limb1: 0x7645a537b85d2164e84e2865, + limb2: 0x2004d5504e935c10, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x4cfa68257c8ebbb7b720edd8, - limb1: 0x700947290a6f53e7bfa793e4, - limb2: 0x2898a05d1453a39e, + limb0: 0xa2448614d548473d2e57f2d2, + limb1: 0xb02c9d0f02c6e1e9f1a15407, + limb2: 0xebe948ac40a101, limb3: 0x0 }, u384 { - limb0: 0xb505e2bd06d58da5ff7f2c72, - limb1: 0x4e528c5ea2b2bc5b714dd9d1, - limb2: 0x20692d9842e64616, + limb0: 0x6f01d904f57da5c500e933ed, + limb1: 0xd217371292c9b5cc4d6f62cc, + limb2: 0xaac471ac4dbc95a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -4988,31 +4988,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x155e6c5fd3dfd5ffe0307338, - limb1: 0x12b5071897fbe87e9e6ab078, - limb2: 0x706d3d59191e46b, + limb0: 0x7faebb4fd4566e728be00c39, + limb1: 0x2b2ddab2ac6a51cd2420d14e, + limb2: 0xaba130dea907c5d, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x4ae85571081616f2803d9c92, - limb1: 0xdc03e338980be304b48481b2, - limb2: 0x11a7eaf1e1cf6c65, - limb3: 0x0 - }, - u384 { - limb0: 0x7aed03954f422de04bd60a09, - limb1: 0x169cf27d24272079ade0d897, - limb2: 0x9e85efd7ce56303, - limb3: 0x0 - }, - u384 { - limb0: 0x92c1f416b720276dddd825d9, - limb1: 0x497bb7c63446d514f90b07c1, - limb2: 0xff694d8d8ed06d2, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 0 @@ -5020,15 +5001,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x7d0845b99ca058d382b51af4, - limb1: 0x69343538e78e6f0547620bb4, - limb2: 0x2b7ce2c9b2860621, + limb0: 0xe1c230e512e33ee2368f3657, + limb1: 0x7799cf7b5145e4c1d1009485, + limb2: 0x242a0c004ab4a80d, limb3: 0x0 }, y: u384 { - limb0: 0xdb14c314ac6215cef53430e0, - limb1: 0x2abb676c658b9bbf270e8fde, - limb2: 0x20008d262640f570, + limb0: 0x749402756a54e37e1fe8aada, + limb1: 0x318534ee2011408189f62437, + limb2: 0x243e697e4f88db53, limb3: 0x0 } } @@ -5041,85 +5022,85 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x215680c9d417cc7b9ec141ef, - limb1: 0x3bf803ae1024b377f2be182e, - limb2: 0x22ceff3ba3f11271, + limb0: 0xc8b5a0143dafbda438fc6ed6, + limb1: 0xb6e7263b15cf6e34656b31f0, + limb2: 0x2253c6e76df1c59b, limb3: 0x0 }, y: u384 { - limb0: 0x8d08d5653b96934203ed253e, - limb1: 0x20bbae1629142cb5bbbfc205, - limb2: 0xc62bcec27f28acd, + limb0: 0x68aba5dbf736110f72211176, + limb1: 0xefed8718f6c9bf5f14244490, + limb2: 0x16e3c12bc787e0af, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x73a86321df9a4f110f1ea4fd, - limb1: 0xfa5158f223c514c3214f9aae, - limb2: 0x285e01dd173be8d6, + limb0: 0x375b71a2d7f418be6cd7e04a, + limb1: 0xb9eb1425f7f0ccd7d7970e84, + limb2: 0x18e40fc48c1ac782, limb3: 0x0 }, y: u384 { - limb0: 0x4e814ffb09f896e81cec7f5e, - limb1: 0x596ce60d19fbe9d792e80e69, - limb2: 0x224d580c37f29d2c, + limb0: 0xdb006ed830b4018361454e11, + limb1: 0x2c363bb614eac2f0afd9eeae, + limb2: 0x20efd5c3491a0b8d, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x5d3eb13cd9ade8d03b3dcae3, - limb1: 0x5efe645d7530514c05b3b25e, - limb2: 0x14f84c833ea33478, + limb0: 0xf388b9f214b346db091502e6, + limb1: 0x6f207dc3ea01e80ea29a2199, + limb2: 0x199f37d2bebb13c2, limb3: 0x0 }, y: u384 { - limb0: 0xb0fc50b986af81af70cae438, - limb1: 0x8bae4b4c4ce0ee21f76e617b, - limb2: 0xdd81084bd006348, + limb0: 0x4adec011dc6838675caf894e, + limb1: 0xa5e44f49c7eb7996510c40eb, + limb2: 0x1a3fc24815c7dfb8, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1bbcdd39aa6f6d0fb6f1817f, - limb1: 0xa76bac4f3b5fdd31370739ef, - limb2: 0x4a09a0a1e2bd9e4, + limb0: 0x6a8397bcf0cfddec15b3e4c1, + limb1: 0xe0a61831673dfa1c2cd38d6a, + limb2: 0x17f7653a2c9d3feb, limb3: 0x0 }, y: u384 { - limb0: 0xdc96bfa906ca30def9a098c6, - limb1: 0x44a6cf9ba748a10874129121, - limb2: 0x4ce59bd243b6b, + limb0: 0x52820e2a4b8ab2e462ff13ba, + limb1: 0x8ea877b7ac5ba766bb530b17, + limb2: 0x13371f688fa5294c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x921935b69355528c3ab71f2e, - limb1: 0x8f0a1ef004d4ee7dbddd3f19, - limb2: 0x74a9ec427077e0a, + limb0: 0x826a3e1387c7541d95d73ee6, + limb1: 0x609fa4a92b6b66f693946941, + limb2: 0x2fbcf96a9f65a6b8, limb3: 0x0 }, y: u384 { - limb0: 0x4d83d8e174d1eed793be558f, - limb1: 0x8f2c4f82b6073b98295b7f5c, - limb2: 0x48fdcbcd7184492, + limb0: 0x20278251eda549761225faf4, + limb1: 0x9eaf95658d67f1ed4dbbd52e, + limb2: 0x5f9b47a7d3a53f9, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x828d254d700dbfc4e8fca76b, - limb1: 0x70362cc965dd0e4d9ed3e444, - limb2: 0x1b52de7213c56c6c, + limb0: 0x4ffc7a0213109922c4da3649, + limb1: 0x60fbeccaea229da078194130, + limb2: 0x1bd5bda75262fd8e, limb3: 0x0 }, y: u384 { - limb0: 0x20b3803b6ecd34db2d810cb6, - limb1: 0x888821ee98fd3204d78fe83e, - limb2: 0x2f9bd253859637ba, + limb0: 0x9890051e732483c23c58f73d, + limb1: 0x63475a7b21930dcf126e6aab, + limb2: 0x24eaf6b26a17b435, limb3: 0x0 } }, @@ -5127,22 +5108,22 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x552ae5ca4124405b91fcfe8881c16e98, high: 0x10c4bb38dc2151e17e56ac3d10cc8711 + low: 0xc03193a29a7abf763bb8f4f1b9c8d865, high: 0x2abc148d9b21646f3db90ebfe78f8c32 }, u256 { - low: 0xc5c142624d849ec5d334886ff164f9d8, high: 0x188e3428cf5e9ea362584ab368777bab + low: 0xda7046d8775f037e96ff411ec3e9c06d, high: 0x5c335b4da09c8fcc4e2e220d6704d8f }, u256 { - low: 0xef7e85eca417956f29ee7f3d0ff030b8, high: 0x2eaf51d1497e9f1a3d2bf042209818d1 + low: 0xe4ecd5bb3e9c3d4456e24ea713956b43, high: 0x158d0c58ccb646bfd4c5fbd3c2fe41e5 }, u256 { - low: 0xf11ddff70e3705265582a3bdd476fe38, high: 0x90495e76af944e07b38785b0932f5b6 + low: 0xff76a09a7411622b384471eb4913026d, high: 0xa19e44ef59d2cf78efb4aa3d0a4e213 }, u256 { - low: 0x9a1a7d6fdd02e100e3d484087de8a234, high: 0x2cb77120ac6d5df814e5064cb799ae8e + low: 0xd90e2872dea58d5f5cf8b972cb82ac4c, high: 0x11059d4d4a36fe2bde4644918f091779 }, u256 { - low: 0x5a4f4145fc98c279cf6f111c26c06e67, high: 0x1dd783b09c9d03f309018aee69407be7 + low: 0xb0a788e48f04e59e8d037ee4a9327781, high: 0x23cd587766ca7afdcea3c5d0aa8b406 }, ] .span(); @@ -5150,560 +5131,569 @@ mod msm_tests { array![ ( array![ + 0x0, 0x1, - -0x1, 0x1, - -0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, + 0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x1, 0x1, - 0x0, -0x1, + -0x1, + 0x0, 0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, -0x1, + 0x0, + 0x0, 0x1, + -0x1, 0x1, - 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, 0x0, - 0x1, -0x1, + -0x1, + -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, + -0x1, 0x1, 0x1, -0x1, -0x1, + -0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, - -0x1, - 0x1, 0x1, 0x1, 0x0, 0x1, - 0x1, - 0x1, -0x1, 0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x0, - 0x1, 0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, - -0x1, 0x0, + -0x1, 0x1, 0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ - 0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x1, 0x0, - 0x1, - -0x1, -0x1, 0x1, - 0x0, - 0x1, 0x1, 0x0, - -0x1, - -0x1, - 0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, 0x0, - 0x1, - -0x1, - 0x1, 0x0, 0x0, - -0x1, - 0x1, - 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x0, 0x1, -0x1, 0x0, + 0x1, -0x1, + 0x1, + -0x1, + 0x1, + 0x1, + 0x0, 0x0, -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x0, + 0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, -0x1, -0x1, 0x0, + 0x0, -0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, -0x1, + -0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x1, 0x0, - -0x1, - -0x1, + 0x1, 0x0, - -0x1, + 0x1, -0x1, 0x0, -0x1, - 0x1, ] .span() ), ( array![ - 0x1, - -0x1, - -0x1, 0x1, 0x1, 0x0, + 0x0, -0x1, - 0x1, - 0x1, 0x0, + 0x1, 0x0, 0x1, -0x1, + -0x1, 0x1, 0x1, 0x1, 0x1, -0x1, 0x0, - 0x1, -0x1, - 0x0, 0x1, - -0x1, 0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x1, - -0x1, - -0x1, 0x1, - -0x1, -0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, - -0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x1, -0x1, 0x1, 0x1, - 0x0, + 0x1, -0x1, + 0x1, + -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, + 0x1, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, 0x1, -0x1, 0x0, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, -0x1, - 0x1, 0x0, + -0x1, 0x1, 0x0, + 0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x0, + -0x1, 0x0, 0x0, 0x1, - -0x1, 0x0, 0x0, + 0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, -0x1, ] .span(), array![ - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, - -0x1, 0x1, 0x1, 0x1, + 0x1, + 0x0, -0x1, 0x0, + -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, - 0x0, 0x1, - 0x0, + -0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, 0x0, -0x1, - -0x1, 0x1, + -0x1, 0x1, -0x1, + 0x0, -0x1, 0x1, 0x1, + 0x0, 0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, -0x1, - 0x1, - 0x0, - 0x1, - 0x0, - 0x0, -0x1, - 0x1, 0x0, -0x1, - 0x1, -0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x0, 0x0, 0x0, + 0x0, + 0x1, + 0x1, + -0x1, -0x1, + 0x1, -0x1, ] .span() ), ( array![ - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, -0x1, + 0x0, -0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x1, 0x0, - 0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, - -0x1, + 0x0, 0x1, + -0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, - -0x1, + 0x0, 0x0, -0x1, -0x1, -0x1, 0x1, -0x1, - 0x0, - 0x1, - 0x1, - 0x0, - 0x0, - 0x1, -0x1, 0x0, - -0x1, + 0x1, 0x1, -0x1, - 0x0, -0x1, -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, 0x0, - 0x1, - 0x1, 0x0, - 0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, - -0x1, - ] - .span(), - array![ 0x0, - 0x1, + -0x1, 0x0, - 0x1, 0x0, 0x1, 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x1, 0x1, -0x1, 0x1, + 0x1, 0x0, -0x1, -0x1, + ] + .span(), + array![ + -0x1, + 0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, 0x0, 0x0, -0x1, - -0x1, - 0x0, 0x0, 0x1, - 0x0, + 0x1, 0x1, 0x0, + 0x0, 0x1, 0x1, -0x1, 0x1, - -0x1, 0x1, -0x1, + 0x0, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x0, -0x1, -0x1, + -0x1, 0x0, 0x0, - 0x1, 0x0, -0x1, + -0x1, + -0x1, + 0x0, + 0x1, + 0x0, + 0x0, 0x0, 0x1, 0x0, + 0x0, -0x1, 0x1, 0x0, -0x1, + 0x0, + -0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, -0x1, - 0x0, - 0x0, 0x1, - 0x0, 0x1, -0x1, 0x1, 0x1, 0x0, + -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + -0x1, + 0x1, 0x0, + -0x1, 0x0, 0x1, 0x1, 0x1, -0x1, + -0x1, ] .span() ), ( array![ 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x1, - 0x1, + 0x0, 0x0, 0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x0, 0x1, 0x1, -0x1, + -0x1, + -0x1, 0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, 0x1, - 0x0, + 0x1, -0x1, 0x0, - -0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, - -0x1, 0x1, 0x1, + 0x0, -0x1, - -0x1, + 0x0, 0x1, + 0x0, + 0x0, 0x1, -0x1, - -0x1, + 0x0, 0x1, -0x1, 0x1, @@ -5711,114 +5701,105 @@ mod msm_tests { 0x1, -0x1, 0x1, - 0x1, 0x0, -0x1, 0x1, 0x0, + 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, - 0x0, 0x1, - 0x0, - 0x0, - -0x1, 0x1, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, - 0x1, - -0x1, + 0x0, -0x1, -0x1, -0x1, ] .span(), array![ - -0x1, 0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x1, 0x0, 0x0, - -0x1, - 0x0, - 0x0, - 0x0, 0x0, -0x1, + 0x1, 0x0, + 0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, - 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x1, 0x1, + -0x1, 0x0, 0x1, - 0x0, -0x1, - 0x0, -0x1, -0x1, 0x0, 0x0, - -0x1, + 0x0, 0x1, + 0x1, + -0x1, -0x1, 0x0, + 0x0, + -0x1, -0x1, - 0x1, - 0x1, 0x1, 0x0, + 0x0, + 0x0, 0x1, 0x1, - -0x1, 0x1, + -0x1, 0x1, 0x1, + -0x1, 0x0, + 0x1, -0x1, 0x0, + -0x1, 0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x0, - 0x1, 0x0, -0x1, - 0x1, + -0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, @@ -5827,327 +5808,320 @@ mod msm_tests { ), ( array![ + -0x1, 0x1, 0x1, - 0x1, - 0x0, -0x1, + -0x1, + 0x1, 0x0, 0x1, 0x0, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, 0x0, - -0x1, - -0x1, 0x1, + 0x0, + 0x0, + -0x1, 0x1, -0x1, -0x1, - 0x1, - 0x0, 0x0, 0x1, -0x1, - 0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, -0x1, - 0x1, + 0x0, 0x1, -0x1, -0x1, - 0x1, - -0x1, - 0x1, - 0x1, + 0x0, 0x1, 0x0, 0x0, - 0x1, + 0x0, + 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x1, - 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x0, + 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, - -0x1, 0x0, -0x1, 0x0, + 0x1, 0x0, -0x1, - 0x1, -0x1, + 0x0, -0x1, - 0x1, -0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x0, -0x1, 0x1, + 0x0, + 0x0, + -0x1, + -0x1, ] .span(), array![ 0x0, 0x1, - -0x1, 0x1, 0x1, -0x1, - -0x1, - -0x1, - 0x1, 0x1, 0x0, 0x0, + -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x0, -0x1, -0x1, - 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x0, - 0x1, 0x1, -0x1, - 0x1, + -0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, 0x0, + 0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, 0x0, + 0x0, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x1, -0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, -0x1, + -0x1, + 0x0, 0x1, 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, -0x1, -0x1, 0x0, - 0x1, - -0x1, 0x0, - -0x1, - 0x1, 0x0, - -0x1, - 0x1, 0x0, + 0x0, + -0x1, + -0x1, 0x1, 0x1, -0x1, + 0x0, + -0x1, + 0x1, ] .span() ), ( array![ + 0x1, 0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, + 0x1, 0x0, -0x1, -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x0, - -0x1, + 0x1, 0x1, -0x1, + 0x0, + 0x1, 0x1, 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, - -0x1, - 0x0, 0x1, 0x1, + 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x1, + -0x1, -0x1, 0x0, + 0x0, + 0x0, 0x1, -0x1, + 0x0, -0x1, -0x1, - -0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, - 0x0, 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x1, - 0x0, + -0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, 0x0, 0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, - 0x0, 0x1, - 0x1, - 0x0, -0x1, - 0x1, - 0x1, - 0x1, + -0x1, ] .span(), array![ - 0x0, - 0x1, - 0x0, -0x1, - 0x0, + -0x1, 0x0, 0x0, 0x0, 0x1, - -0x1, 0x1, - 0x0, -0x1, - 0x1, -0x1, - 0x0, - 0x0, + 0x1, -0x1, -0x1, 0x1, + 0x1, 0x0, -0x1, -0x1, + 0x1, -0x1, + 0x0, -0x1, - -0x1, + 0x0, + 0x0, -0x1, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, - 0x1, -0x1, - 0x1, + 0x0, 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + 0x1, -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, + -0x1, 0x1, -0x1, - 0x0, - 0x0, 0x1, 0x0, 0x1, 0x0, - -0x1, + 0x1, 0x1, -0x1, - 0x0, + 0x1, 0x0, 0x1, 0x1, @@ -6155,11 +6129,17 @@ mod msm_tests { 0x0, 0x1, 0x1, + 0x0, + -0x1, + -0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, -0x1, -0x1, - -0x1, ] .span() ), @@ -6169,87 +6149,87 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xac32cb574afff7f35183dd8b, - limb1: 0x1d8fd415626f78427a05051a, - limb2: 0x18d449e24eb93adb, + limb0: 0xa8b5735dd790d8efb97cd370, + limb1: 0x7ea9e102147af0c13c5e12d6, + limb2: 0x2af725839734a65b, limb3: 0x0 }, y: u384 { - limb0: 0xabdbd44a34c5d7ca3e1916de, - limb1: 0x78ee770c669de463fb4160a, - limb2: 0x1175e02620e75114, + limb0: 0xdcf0edc9a5a3df4f60faa4e9, + limb1: 0x287f5c8fefe5630a4fb0b712, + limb2: 0x1e894e6b35182c80, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x2d0cf894379b70997b6f2e3a, - limb1: 0xbb9339b8310cdb14a3738674, - limb2: 0x26a16c34c906656f, + limb0: 0x51e5031f916731b4787ffa49, + limb1: 0x4d3d070bb1b7af9283a4bdec, + limb2: 0xfea1701dca7e9f, limb3: 0x0 }, y: u384 { - limb0: 0x85ac56638828f88ed134edba, - limb1: 0xfc02f65900bf1cf51621fd0d, - limb2: 0x1aef27be767a5672, + limb0: 0xf662671a0ae38fbaf7559cc3, + limb1: 0xe85a308ecb93f25759e3ea1, + limb2: 0x2b0e8f01907f429e, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xe3b4483064505802d6170c51, - limb1: 0x64a338a5a79ce8f37515b99e, - limb2: 0x15da4a61f96b5549, + limb0: 0xb14b5f4ceaf18313e22b2395, + limb1: 0xa3b72287200755a9fc22e048, + limb2: 0xce6e3f908335ef5, limb3: 0x0 }, y: u384 { - limb0: 0x52066e93c1145961166442b9, - limb1: 0x2d27ab5a26bbc374031de5cc, - limb2: 0x1df80efda33455b9, + limb0: 0x335ab3b9a4b79bab8a307228, + limb1: 0x8b7c9cb364bde5b9d911206d, + limb2: 0x1b566443ab1c89, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x5d02406deafda00995f6b987, - limb1: 0x5f6332463f07b6eedbc001df, - limb2: 0xe0b2f4f64a03418, + limb0: 0x94a2acc99ae298a60d1cbb62, + limb1: 0x7161ee68db4631ce8e8a9b31, + limb2: 0x1a14c6184fd07d9, limb3: 0x0 }, u384 { - limb0: 0x81f0f89adc6fc3589746ad90, - limb1: 0x89188ee1430f2c3ed1abfaf5, - limb2: 0x29ba1c9e18b008ad, + limb0: 0xe4a5bbe0d0ca96025abcb770, + limb1: 0x7398e832412cf854a1ad86e7, + limb2: 0xc4537f170daee6c, limb3: 0x0 }, u384 { - limb0: 0xa65d24b44af92a1c30344417, - limb1: 0xfb752051c4bf73f54f7da306, - limb2: 0x14864af089ba7634, + limb0: 0x81f1c54f0f7f1a93213b12b1, + limb1: 0x49dfe13fdf603e5243f6e26f, + limb2: 0x15097e5a3a506c90, limb3: 0x0 }, u384 { - limb0: 0x18b821c649883e731fa9cb72, - limb1: 0xb6feb1ef066090bb8685f8e0, - limb2: 0x28b02848779f4b7a, + limb0: 0x132acd6e8c25a2ef076066d5, + limb1: 0x664224f877cee7cb93eb7a07, + limb2: 0x1ddbc9e526eb3c4, limb3: 0x0 }, u384 { - limb0: 0x15c9edcde27a13f918fa7a91, - limb1: 0x921435e38804c95148db08e1, - limb2: 0x22c5070cda5787e1, + limb0: 0x72605e600b0a68cae64cfc3e, + limb1: 0x6cbaefc5801bcc923f4d8516, + limb2: 0x1ed9f950256955be, limb3: 0x0 }, u384 { - limb0: 0x6df512d2826cd65fb52da43c, - limb1: 0x9e86c8ee3ff1883f61205fd6, - limb2: 0xae7a916ce448a1c, + limb0: 0x8d5da2fa96a0971780349cc4, + limb1: 0x8a137a869c764a9cbfe6e123, + limb2: 0xbbad0444a589d6, limb3: 0x0 }, u384 { - limb0: 0x4eaede3d0a4db4e3850b5b65, - limb1: 0xb85045b68181585cabfb1bfc, + limb0: 0x1b1188a1273fab8851613988, + limb1: 0xb85045b68181585accc4c017, limb2: 0x30644e72e131a029, limb3: 0x0 } @@ -6257,45 +6237,45 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe96fb39cad01facd4f450051, - limb1: 0xd1e5d213a43ac340ebc92d0e, - limb2: 0x15807a6f9747feff, + limb0: 0xd8bd4d4aeb835fde3cc6e75, + limb1: 0x8cd2f57b50be0c147a7fa4bb, + limb2: 0x14d0fe409c18a785, limb3: 0x0 }, u384 { - limb0: 0xc9129cc5454f50634def42bd, - limb1: 0xe8524e076f39b5f335866b17, - limb2: 0x36c823353c5177e, + limb0: 0x82c04b9a0c81913fbf167f00, + limb1: 0x9a6bf46466e3015fc400a09e, + limb2: 0x99b1cfd42c8539b, limb3: 0x0 }, u384 { - limb0: 0xf74a0ef034acc12107e856cf, - limb1: 0x4e173cbf9d7914ee5ae7e65e, - limb2: 0x22f86308592beb3e, + limb0: 0x16f71b21151f36b49f816da3, + limb1: 0xa1b7e4790a568c87cd07eabb, + limb2: 0x76433bd245973c8, limb3: 0x0 }, u384 { - limb0: 0xfaadb476f485b5e306f49ffd, - limb1: 0x380cb3d049dd5a9b0e58432f, - limb2: 0x1b5fd34d271ee376, + limb0: 0xde9a8bf605794095635264bd, + limb1: 0xf08071d375f6dc606d188d4b, + limb2: 0x16dc3e5dc3387325, limb3: 0x0 }, u384 { - limb0: 0x87eac5b0ce558aaf3c832895, - limb1: 0x80c1ab49bb68c614a2b0c859, - limb2: 0x7bee8fca4932d4d, + limb0: 0x47a706993d30ba17d1884894, + limb1: 0xeb0ad0f945571ec79048ea19, + limb2: 0x30375359e2553e2d, limb3: 0x0 }, u384 { - limb0: 0xce960c6babdae539d818a496, - limb1: 0x6ffd9eb4efdae4cb4da37422, - limb2: 0x2d83b4f0667529d9, + limb0: 0x85b19fc99f05fa2bf0cc82c4, + limb1: 0xda65cf86bc857a220a428574, + limb2: 0x16c7bf6bdead87e2, limb3: 0x0 }, u384 { - limb0: 0xd2f391776a4fb4aa4cad1daa, - limb1: 0x87bd89be5469f5b03686e2a2, - limb2: 0x21598b0ce34451af, + limb0: 0x30ff65e89f12fb1861a572fd, + limb1: 0x98b319c3fe7da744a10b6815, + limb2: 0xe9d37eff795f561, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6303,114 +6283,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xab6802477db5a0021082bc80, - limb1: 0x845f353f77a1454584b152dc, - limb2: 0x1cc28a754821912a, + limb0: 0xff9e126ddd95270f9e1ccfcf, + limb1: 0x615c41f544413254282cd438, + limb2: 0x8a4316696d30696, limb3: 0x0 }, u384 { - limb0: 0xa137b7081a57a6aa58d3c46, - limb1: 0x98a92d3040a165f5c3db700a, - limb2: 0x101262b09f4d13a1, + limb0: 0x723955b230cffe29a2cc960b, + limb1: 0xedf65051a08f21250f6f68d9, + limb2: 0x27e03bccb52b6944, limb3: 0x0 }, u384 { - limb0: 0xe3e1f2afe1332b6a8b5dc59f, - limb1: 0x15e642858a27d2e61cb46d63, - limb2: 0x305e2aadc0319528, + limb0: 0x700267d56be168663dc30afc, + limb1: 0xcd15af08b41636b61b4c6e9b, + limb2: 0xf0565f5911cec51, limb3: 0x0 }, u384 { - limb0: 0xaf19371c575b144d3dc60e3c, - limb1: 0x4b1526ad90629023710d689, - limb2: 0x1ba24967219735f2, + limb0: 0x65def53faac15896de9c844b, + limb1: 0xdf7ce703fb4ca9d921eeac43, + limb2: 0x27486bd97e3a2ec6, limb3: 0x0 }, u384 { - limb0: 0x5df80dd4500f39e8fc57af70, - limb1: 0xf8a928eaf9a46241ad655b64, - limb2: 0xcf846d7195471f6, + limb0: 0x7dbd4bfc930292c93ec12a72, + limb1: 0x68a0705301c3cb2e0e2a9dcf, + limb2: 0x1b496795156bdff3, limb3: 0x0 }, u384 { - limb0: 0xe756e4f0526efa45ebcb8d9f, - limb1: 0xba65f91761b8871a77bc39ad, - limb2: 0xeab6b6047440122, + limb0: 0xb4f5e6e41c0a953a13bd8fbe, + limb1: 0x8dd38cfa7ae1aebb237af2c3, + limb2: 0x1672db31db8b67c6, limb3: 0x0 }, u384 { - limb0: 0xf4c1730197dc5d563a3044ba, - limb1: 0x5321923c7069e5184e958ec5, - limb2: 0x6d5c477f23a5aee, + limb0: 0x33bcac0189720466a02948ae, + limb1: 0xe9503bf416b15b59df24cc8a, + limb2: 0x300aec818e42ef14, limb3: 0x0 }, u384 { - limb0: 0xec3d3fa42305c4345a8dfb67, - limb1: 0xa0349c35a39b593625779080, - limb2: 0x2286aeacb6e1cfc7, + limb0: 0x389b6b16cedd43cb79d0449d, + limb1: 0x4678f98e742306cae3483ffb, + limb2: 0x2231dd795f8cd1a2, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x53dd5048cae56451155203ac, - limb1: 0xbd6130846b2ef1652bda1c9b, - limb2: 0x101d20dbe4a65cd5, + limb0: 0xc031b3f0d00815e2d2e84e18, + limb1: 0xee289abb70b8cbdfd7fd839f, + limb2: 0xe0eac4ef3185666, limb3: 0x0 }, u384 { - limb0: 0x5b37d64fcfedf129e9cdc837, - limb1: 0xb8f6ea164dad21d9a0934147, - limb2: 0xa458699fb4f467c, + limb0: 0x8840e2ce2584b3bf3d437d00, + limb1: 0xcf43dd2d34a9041f4c01e1db, + limb2: 0x1cd156f7c858fad2, limb3: 0x0 }, u384 { - limb0: 0x14fa97b625c52b3566bf09df, - limb1: 0x79a52ad1d5688e0fe1b4ddfa, - limb2: 0x8208c3349208167, + limb0: 0x44e551633f5da41dde8448e9, + limb1: 0xe527ad6b1f03a5976717c031, + limb2: 0x162c9b376d0c5b59, limb3: 0x0 }, u384 { - limb0: 0x8953be712520448b328e5ba, - limb1: 0x96b62177ed02256e7cf217c, - limb2: 0x6d757714a41690f, + limb0: 0x40e9ae2983036ba735469f65, + limb1: 0xa604053f312148d82a47e20d, + limb2: 0x29016ae7049060cd, limb3: 0x0 }, u384 { - limb0: 0x60d2edd7b04ff0710378bc7c, - limb1: 0x6a974fe4a17408311d98c424, - limb2: 0x1aa93d29417e9f67, + limb0: 0x205fffbe0fb21b42aa3860e7, + limb1: 0x329b962cb264549dae571f36, + limb2: 0x9142bb246332da8, limb3: 0x0 }, u384 { - limb0: 0x29b6d48b83dbcc8a06bb4cbc, - limb1: 0x751f47bae885ba377d4e0313, - limb2: 0x1a569680e8f6884d, + limb0: 0x3f9a2ff0b61099219969f8a8, + limb1: 0x78990d56be65a290544e1087, + limb2: 0x1b57238ddf306b47, limb3: 0x0 }, u384 { - limb0: 0xa2a4d3c2bb33bbb43c01fe6d, - limb1: 0x5ea4c59e44188af082ea15f5, - limb2: 0x1ea3d78e0e889831, + limb0: 0x926f322a691a5c7afc5c06d, + limb1: 0x2497968efee79d0b8b95afa, + limb2: 0x124f97bac8c8b321, limb3: 0x0 }, u384 { - limb0: 0x87eac5b0ce558aaf3c832898, - limb1: 0x80c1ab49bb68c614a2b0c859, - limb2: 0x7bee8fca4932d4d, + limb0: 0x47a706993d30ba17d1884897, + limb1: 0xeb0ad0f945571ec79048ea19, + limb2: 0x30375359e2553e2d, limb3: 0x0 }, u384 { - limb0: 0xce960c6babdae539d818a496, - limb1: 0x6ffd9eb4efdae4cb4da37422, - limb2: 0x2d83b4f0667529d9, + limb0: 0x85b19fc99f05fa2bf0cc82c4, + limb1: 0xda65cf86bc857a220a428574, + limb2: 0x16c7bf6bdead87e2, limb3: 0x0 }, u384 { - limb0: 0xd2f391776a4fb4aa4cad1daa, - limb1: 0x87bd89be5469f5b03686e2a2, - limb2: 0x21598b0ce34451af, + limb0: 0x30ff65e89f12fb1861a572fd, + limb1: 0x98b319c3fe7da744a10b6815, + limb2: 0xe9d37eff795f561, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6420,44 +6400,44 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x1f765909a2577ef77471d8c7, - limb1: 0xac2ac759736515c510d8a040, - limb2: 0x1cd1d4d604c1b567, + limb0: 0xf4ade02b3a3830e148787c08, + limb1: 0x598b78344bc43c2a5378c145, + limb2: 0x1b9b48ca5c9def53, limb3: 0x0 }, u384 { - limb0: 0x8072926776838e42e23e1ab, - limb1: 0xfec9ca81bab5f6216b9ddc7a, - limb2: 0x197a36e98cac6323, + limb0: 0xbe5557f2023dc60f77cfe7c3, + limb1: 0xf6d928b3ea37e36159bcaed7, + limb2: 0x67d59d57cf862e9, limb3: 0x0 }, u384 { - limb0: 0x859fd569b9311be768cf2969, - limb1: 0xfd3e4d0052575ea611fdb46, - limb2: 0x24f1e11893968a92, + limb0: 0xe5374c6c01ab7ea321c50638, + limb1: 0x9d42b0b90961ecc2e143385a, + limb2: 0x2d4746f57ca203f, limb3: 0x0 }, u384 { - limb0: 0x14c3fbca8fd77da8484c3eee, - limb1: 0x3ebe5cc87b0b3ed3202b8d7c, - limb2: 0x2cdd68b6626010e8, + limb0: 0x3f33636953342934da0cef12, + limb1: 0x527e093900f10aa6dab6f9ec, + limb2: 0x16cc56b2c1fd6c48, limb3: 0x0 }, u384 { - limb0: 0x260f1e268a895edcf7abab4d, - limb1: 0x521bf685f841e3c798a8e8a1, - limb2: 0x22dcea77cba8b05f, + limb0: 0xe959ed426d9153662d2876f9, + limb1: 0x3ddd5d7a1f667df24133b6a2, + limb2: 0x2063bb7bf579637f, limb3: 0x0 }, u384 { - limb0: 0x8c8a89acf3b1c9a963cf8909, - limb1: 0xfa56d9cdaf472cdf9d31089f, - limb2: 0x1b0202723af89619, + limb0: 0x253398756628a5528667a5ad, + limb1: 0x38cd3002bff45fa2fbdddb0b, + limb2: 0x10717bb6d3194817, limb3: 0x0 }, u384 { - limb0: 0x896e57e152948384c4a6d855, - limb1: 0xdc2822db40c0ac2e9de97a20, + limb0: 0x163c7f1214d1173aa7c6895, + limb1: 0xdc2822db40c0ac2eaf47f372, limb2: 0x183227397098d014, limb3: 0x0 } @@ -6465,45 +6445,45 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe61c59c187ef38d620e2406f, - limb1: 0x936d42f66678079d988160d4, - limb2: 0xda0c888416495e0, + limb0: 0x3103b905893ae08100f1bf82, + limb1: 0xd1e65a509adbb4b8d54a31b9, + limb2: 0x8cda085b8e616d1, limb3: 0x0 }, u384 { - limb0: 0x3578d73944b680033ef3b4f9, - limb1: 0x447aae259f304b9bb1eccd2d, - limb2: 0x258ab92a56d72b, + limb0: 0x94b3bbdeba66eedcc355e73e, + limb1: 0xaab7df7d484da89a8f538075, + limb2: 0x2012ce598f1e9618, limb3: 0x0 }, u384 { - limb0: 0xe7b7dac93b76a81df316515, - limb1: 0x2eb4235318bb4c15bc5a146e, - limb2: 0x1c1ea038a74e2b9c, + limb0: 0x606126e29a054ae4bf8fbce1, + limb1: 0x324fd5caa7c198e069631d32, + limb2: 0x333c6361ef9ede, limb3: 0x0 }, u384 { - limb0: 0x6a3eda11d76f332cebab64a1, - limb1: 0x892d12d031da9a10e15a45ba, - limb2: 0x2b369bef2bcc1093, + limb0: 0x30598816f7d2ea1cb497ba53, + limb1: 0x53faa5e6703261fa9b7d0b24, + limb2: 0x62fda2d3d9a5bb9, limb3: 0x0 }, u384 { - limb0: 0xb93771ddec6e9696fe5f2704, - limb1: 0x55b6582ade1b373b1b9c50c7, - limb2: 0x8513f7ffee99493, + limb0: 0xcc179c7bfd87be443567cbba, + limb1: 0x2b7d05a28d381ba6d811219b, + limb2: 0xa2770b06c869391, limb3: 0x0 }, u384 { - limb0: 0x5f92ea3335804d2f48f25d6, - limb1: 0xad5ca66bb714539e25205cdd, - limb2: 0x48dd24508d7f93d, + limb0: 0x21751e7db6b8698826291009, + limb1: 0x510623dfb54e41ce477d38d5, + limb2: 0x1ed00a6fcb13b25d, limb3: 0x0 }, u384 { - limb0: 0x5219643a7db43c0422c1ccfb, - limb1: 0xe9ba241b85cc92de0d186149, - limb2: 0x138c68ba68f7271a, + limb0: 0x1f5e0b99a91c163cca254edd, + limb1: 0x11cfae03dfbf9015c243526e, + limb2: 0x8316d908fce7cf4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6511,114 +6491,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xae98464436270a034f8a91b0, - limb1: 0x894450f4a2951bbf2d84b5bf, - limb2: 0x2c9046c042cffc55, + limb0: 0x4cfe98e8c46d3644da56b613, + limb1: 0x30410018829db0aa2d0e07b3, + limb2: 0x1f08ae47bd6c5fe5, limb3: 0x0 }, u384 { - limb0: 0x1680544e66eaacc6b130937a, - limb1: 0xa9edb6709bcad6e932df3656, - limb2: 0x2a359931066d048, + limb0: 0x9d33bbce8c175dcf88277f00, + limb1: 0x76f8c21f601fd9d80d2a35c8, + limb2: 0x1b26813f0414db79, limb3: 0x0 }, u384 { - limb0: 0x15fbda6d5bb1a263394a5cb3, - limb1: 0xa38a22a841acced4c67cc337, - limb2: 0xd2a6cf8dc9ff1a1, + limb0: 0x4485122f3259b3788aafaf60, + limb1: 0xab145da67824daa54be71e51, + limb2: 0x25527bae7fcfee65, limb3: 0x0 }, u384 { - limb0: 0x8f679a92270974f69054395f, - limb1: 0x2134d494156fa63d34149fe1, - limb2: 0xb869b366d62d81b, + limb0: 0x488c1df29eed9fc3a3285a10, + limb1: 0x90e756d9050ab9f33d67f5eb, + limb2: 0x2d66008c57995475, limb3: 0x0 }, u384 { - limb0: 0x27df3bfc9d346345a104129b, - limb1: 0x1b67974388dbed3a22ca6f64, - limb2: 0x2209addb4db013de, + limb0: 0x67d65a6608a0ce3c510a9151, + limb1: 0x1bbec29cc143018e70cfd37b, + limb2: 0x24efdfecb78fe818, limb3: 0x0 }, u384 { - limb0: 0x56f56fa4442b4682f206d3ab, - limb1: 0x3b13b2474ff65e5d0317b495, - limb2: 0x215a4f7133cbb9ff, + limb0: 0xcfcc8603748d17c78baf9a44, + limb1: 0x7e70bb969e0dd6aac81cd4ed, + limb2: 0x92ccdd3feaf2a65, limb3: 0x0 }, u384 { - limb0: 0x6bf9d5c3171fac04b356d5a9, - limb1: 0xe049dcbc9849e40e697d9ec9, - limb2: 0x8a249636c42c5d7, + limb0: 0x34b7c9240a5955775b5b818d, + limb1: 0x69e443c96614a56126969d27, + limb2: 0x671c8cd027634b4, limb3: 0x0 }, u384 { - limb0: 0xcc5123d57670ec6d56169c1f, - limb1: 0x204c1b76263c5a161115fda2, - limb2: 0x2a711df1951c2d06, + limb0: 0x88c227a830b83e3f9919968e, + limb1: 0x6d595c4f88bf823c8ce0a8f8, + limb2: 0x13c16eb4dd165b9a, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xb2550d4497cdaa8262a6c14d, - limb1: 0xba47c8e3336816d8c984227e, - limb2: 0x28e25998c42dc1a1, + limb0: 0x930b2b109bb0a18302d53e86, + limb1: 0x75b30ef1d0931e2a7fde952b, + limb2: 0x1a68e1912ab24475, limb3: 0x0 }, u384 { - limb0: 0xa06a85abce238009bcdb1eeb, - limb1: 0xcd700a70dd90e2d315c66787, - limb2: 0x70a02b7f048581, + limb0: 0x55a9690ef314407f7184b873, + limb1: 0x47d758c15767a172167916cf, + limb2: 0x2fd41c99cc2a2220, limb3: 0x0 }, u384 { - limb0: 0xc300ae787f05b36ec51731f8, - limb1: 0xd3cc2442c8b08be39d8cd2b8, - limb2: 0x23f7923714b8e2aa, + limb0: 0x212374a7ce0fe0ae3eaf36a3, + limb1: 0x96ef815ff744caa13c295797, + limb2: 0x99b52a25cedc9a, limb3: 0x0 }, u384 { - limb0: 0x53f552dc95fbba2f32ea73c4, - limb1: 0xbe53eff9f90525150d8d5ce1, - limb2: 0x2e7bff7002658747, + limb0: 0xc210514a70b39ed71eb8ee7b, + limb1: 0xcdd64c03eb72daa8a7c15325, + limb2: 0x1b5d2f0d71b529fd, limb3: 0x0 }, u384 { - limb0: 0x611f2cd30a0243c83a112a05, - limb1: 0x459db6a63981f14d04c1bf84, - limb2: 0x19194939271394e5, + limb0: 0x9088c6c576dd9d928b104d25, + limb1: 0x74deaaae6e74a33180057ab7, + limb2: 0xe24d1f7f380b0a2, limb3: 0x0 }, u384 { - limb0: 0x206709962dbf78fabcded697, - limb1: 0x36ca16963df846f02bbb2b05, - limb2: 0x29c81707c1d61755, + limb0: 0x5c4eb7ce820dfb66598defb5, + limb1: 0x6d11fbb3462b05eda8595d20, + limb2: 0x2c3f0d3fe1f915cc, limb3: 0x0 }, u384 { - limb0: 0x8fa771a6d84acf0ba2f6d104, - limb1: 0xd5baf3b5c03da1efd9a09473, - limb2: 0x5133938a44e4590, + limb0: 0x8e73aae3f3272cd31307a6ea, + limb1: 0x8969aff20f71123be247026e, + limb2: 0x1ec422deed05d295, limb3: 0x0 }, u384 { - limb0: 0xb93771ddec6e9696fe5f2707, - limb1: 0x55b6582ade1b373b1b9c50c7, - limb2: 0x8513f7ffee99493, + limb0: 0xcc179c7bfd87be443567cbbd, + limb1: 0x2b7d05a28d381ba6d811219b, + limb2: 0xa2770b06c869391, limb3: 0x0 }, u384 { - limb0: 0x5f92ea3335804d2f48f25d6, - limb1: 0xad5ca66bb714539e25205cdd, - limb2: 0x48dd24508d7f93d, + limb0: 0x21751e7db6b8698826291009, + limb1: 0x510623dfb54e41ce477d38d5, + limb2: 0x1ed00a6fcb13b25d, limb3: 0x0 }, u384 { - limb0: 0x5219643a7db43c0422c1ccfb, - limb1: 0xe9ba241b85cc92de0d186149, - limb2: 0x138c68ba68f7271a, + limb0: 0x1f5e0b99a91c163cca254edd, + limb1: 0x11cfae03dfbf9015c243526e, + limb2: 0x8316d908fce7cf4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6628,9 +6608,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xbdf00c25a682ee353429e074, - limb1: 0xd25f51dbbffbfdcf51cb5cfd, - limb2: 0x2f2374d62900ebe5, + limb0: 0x54abb6d594206bbd6f3c47a0, + limb1: 0xb002e15564f843adf94a7eba, + limb2: 0x7cec8532db051a2, limb3: 0x0 }, u384 { @@ -6643,15 +6623,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe4d209a2c2eb987163b971a7, - limb1: 0xf6639710377433fbbc00b6e9, - limb2: 0x2d20a4c941797aac, + limb0: 0x481edd72393054712c962f5, + limb1: 0x4819634b03fc39d4c410d824, + limb2: 0x28cb38c5c8749dc2, limb3: 0x0 }, u384 { - limb0: 0xc0225455dc554f915f73c003, - limb1: 0x506a190f2a58ecb31679950f, - limb2: 0x244ce64efff1859a, + limb0: 0x65416820bfc7d74e7dd1df69, + limb1: 0xc75c1c23afc2532117b9cc5c, + limb2: 0x227ec909bb33c294, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6659,49 +6639,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xbf8bb26b5951d3c4c0518fbf, - limb1: 0x908ea191a5f6b362aa3ba5e, - limb2: 0x108448c5c9ee8745, + limb0: 0x25d8e654d42f44909d49f760, + limb1: 0xc7531bfd66776be37f29926c, + limb2: 0x20dc125cf394a824, limb3: 0x0 }, u384 { - limb0: 0x6ad260a63d570039a5c59cdc, - limb1: 0xf6f1911c7937b568a372fd4b, - limb2: 0x1bec7d4aa586fbda, + limb0: 0xaadc20cc2412788507fd04ef, + limb1: 0xf73f0fa5f8c4e111d44043b6, + limb2: 0x341b3f670a8b2d, limb3: 0x0 }, u384 { - limb0: 0xc2420cfb661b63a3ed7453e5, - limb1: 0xa86c42a1dc7295d9c69e0b6, - limb2: 0x1aa66753addd6db8, + limb0: 0xef3eee42d4d2319d46bad6c8, + limb1: 0xb62a48a1d77075f814d5fc6e, + limb2: 0x21ccd45cbf54740d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xdd9287cdd081b1267a325a67, - limb1: 0x728a39c3a359eb3804ff4f9a, - limb2: 0x2699517602092fb3, + limb0: 0x3ca2346af277f7a787622e51, + limb1: 0x67ab9e7408f1fcc31d2fb349, + limb2: 0x19990d6b96fa98f3, limb3: 0x0 }, u384 { - limb0: 0x6f8367e71cbed6866d61457b, - limb1: 0x809dbfc07c08155e1469ea0c, - limb2: 0xc1e16073d71507b, + limb0: 0x5ee0a347c7166dbdc87ba3ad, + limb1: 0xe573c8fe0c4448a8182a8ff2, + limb2: 0x6b3be376f38076a, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xe4d209a2c2eb987163b971a7, - limb1: 0xf6639710377433fbbc00b6e9, - limb2: 0x2d20a4c941797aac, + limb0: 0x481edd72393054712c962f5, + limb1: 0x4819634b03fc39d4c410d824, + limb2: 0x28cb38c5c8749dc2, limb3: 0x0 }, u384 { - limb0: 0xc0225455dc554f915f73c003, - limb1: 0x506a190f2a58ecb31679950f, - limb2: 0x244ce64efff1859a, + limb0: 0x65416820bfc7d74e7dd1df69, + limb1: 0xc75c1c23afc2532117b9cc5c, + limb2: 0x227ec909bb33c294, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -6711,9 +6691,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xf9944901796bab19c7049fc2, - limb1: 0x9e7154d7025404d95f503a7b, - limb2: 0xa69505a17d15ebc, + limb0: 0x9e6f28a802c0d516bc4f0676, + limb1: 0xd73b841590859507fcb51d7a, + limb2: 0x4a3deaca5a365c8, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -6724,15 +6704,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x5830e06884a7f6f85b44cce6, - limb1: 0x5ca9823d80f4cde3282a35dd, - limb2: 0xd68b8de5185dfc0, + limb0: 0x4664b26c05551329590d0705, + limb1: 0x6ebc4eba039bfc67e0bc3e9f, + limb2: 0x2446f468f115f202, limb3: 0x0 }, y: u384 { - limb0: 0x1ec2b4dd8e4ba6a58fda10dc, - limb1: 0x9483c926a82a91f713930791, - limb2: 0x2525465aef898d0e, + limb0: 0x2b3feb533431f0e50691a3cf, + limb1: 0x595d134368578e18f2d248f9, + limb2: 0x289ba1d42a84e245, limb3: 0x0 } } @@ -6745,99 +6725,99 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x365c968f6766fffde3e8968a, - limb1: 0xf72086d9c01dfc667bd7261f, - limb2: 0xf64d7dd36d177e3, + limb0: 0x1735ac005cc43fc249fe6884, + limb1: 0x318a3d57d1596af1e515613, + limb2: 0x1739879a83c90dd3, limb3: 0x0 }, y: u384 { - limb0: 0xb96483bf1d6c6402a5e572e7, - limb1: 0x4f57692e96bf4cae38b01d0a, - limb2: 0x256fd9a0d59c726c, + limb0: 0xedd6aac103c6a3f3eea76480, + limb1: 0x929d9ae7607a9fe3aac9d1fe, + limb2: 0x1bb9053ec5633d4f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xfb2acec2ff342fb666ea2209, - limb1: 0x98a2e42d00a674521985a415, - limb2: 0x284fe6e2daf3668c, + limb0: 0x641c29242a82f8d7c1e7f4aa, + limb1: 0x5baafa43c0973b3871d9bced, + limb2: 0x147b8ac3e879c68, limb3: 0x0 }, y: u384 { - limb0: 0x5479a9b616f47ea05bd12f2f, - limb1: 0xf2ac1085701946362826b4ab, - limb2: 0x41591c6362cb726, + limb0: 0xedcc7ab8af577fad2147c070, + limb1: 0x61a22d4bc3b4d8207dbce986, + limb2: 0x1e20faed6c5c643f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x2981ffeae25c7c0cd50c1b8a, - limb1: 0x4fb6f6e1720bcc548a2740d8, - limb2: 0xb032b3b5f558e25, + limb0: 0x11132560466fd1e5089982d0, + limb1: 0x1b423bed85f87147c4bad53a, + limb2: 0x156c67780c8895f2, limb3: 0x0 }, y: u384 { - limb0: 0x2269e5778936332178b6e448, - limb1: 0x77bff0d9b925f68e6dff9fc6, - limb2: 0x1de77e55e7be6ebb, + limb0: 0x4fffaf4f86e4cfafce9be9d8, + limb1: 0xb6951d8b85f5c505fe7444a9, + limb2: 0x212edf2c6287b954, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x7d499f54b448fe38b35a2bf7, - limb1: 0x198b0b1a699fc9de0482f05a, - limb2: 0x2cdd507d5c0389a7, + limb0: 0xd8a8e830947303c655db852a, + limb1: 0x7cbd09a3cb1d8bca72198a3a, + limb2: 0x11b87a738d768c75, limb3: 0x0 }, y: u384 { - limb0: 0xca2286e79a4e8cd446d68646, - limb1: 0x45aac9b8bf9eeaeb9446e597, - limb2: 0xacac23fa28cb2bd, + limb0: 0xf61c46311d06f2df6ba9f1f2, + limb1: 0xd8b7a216bfc113cb3f9c960d, + limb2: 0x2aaca3703c074d3b, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb13d64931943228a4181e53e, - limb1: 0x22b87eb893d1c81bd67b7c25, - limb2: 0x1a8551e30bad52e2, + limb0: 0x8de8ec64f3e6b2a1bc8a688c, + limb1: 0x260b2feec95bd32df2bb4087, + limb2: 0x4b352f68ca23625, limb3: 0x0 }, y: u384 { - limb0: 0x444fa86d56dc12894c21e697, - limb1: 0xbb1c8ba8c217ea2d01378745, - limb2: 0x1ad4745bd6721bf8, + limb0: 0xacffe7f6869238a12dfe6797, + limb1: 0x3eca7ee38bebc78ebf6aa703, + limb2: 0x2427c902198c9ee7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x78381247a96cef10856a5736, - limb1: 0x5e0ea0087d181804deea972a, - limb2: 0x242e47cf7cf5f71c, + limb0: 0x35837ca07de4b8dfac99b877, + limb1: 0xd66c102821c2bab5482d0bfd, + limb2: 0x28f80b006d42542, limb3: 0x0 }, y: u384 { - limb0: 0x8906a80babaaa212d55ddc15, - limb1: 0x2e208c8a1bf9a7e599bf3298, - limb2: 0x305291fdf5f72262, + limb0: 0xf88c21e2bef8826a58861594, + limb1: 0x51fbb430072ae99164f63d37, + limb2: 0xa4e905b80cb25b8, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6c538a94c25f01548e5a76c7, - limb1: 0xd8936a3051538aaff05eb3, - limb2: 0x177ac5fa7527f61b, + limb0: 0x8eef88faee033dec071b6c42, + limb1: 0x2e0f155b0a4c3b0e0f22e4b5, + limb2: 0xfbb28046236ebd, limb3: 0x0 }, y: u384 { - limb0: 0x6ec15f4031b378484c35215d, - limb1: 0xd470b443a228b6acf43ca9eb, - limb2: 0x154423a58fed0f8b, + limb0: 0xed036cdd2084e6ed25a31a01, + limb1: 0x52c427f78a27bf014f7059f0, + limb2: 0x1cf4a578689dc213, limb3: 0x0 } }, @@ -6845,25 +6825,23 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xf4dd05d51349747aa1cba182ca20854d, high: 0x28f0b1bef2d9a38e6e4b8df0b6d9611 - }, - u256 { - low: 0x6d2ed7ce6ac9d8a4160ff927c7550f2, high: 0x246eb3e0aaa079968522dc4ef1dd50bf + low: 0x5ac31b309ff6cb194253d1d0d7585629, high: 0x1831eb47e637bc43a6b5e308ee25e0ea }, u256 { - low: 0x809e2109c7867a38a09f1aede38690e7, high: 0x20746fc16b8c66f28611f583b2d10e3d + low: 0x19d3f072ccdd00bb559132d56080782d, high: 0x1f478bd41c3555f9832eea8942ff8de9 }, u256 { - low: 0x254bf7ae1d0ab994f20b575d4e28e674, high: 0x1b02f95790e639e1e44fc3a96d0c62c3 + low: 0x27585133c0466bb69ae165c8181b465d, high: 0x25c16c9ef839a34b2995b8642aca355b }, u256 { - low: 0x1ad1daaaef8d9ff015831feeec41e6f6, high: 0x1a9201501965e435101bb5fa6a677623 + low: 0x88635ad020d593e2cba75aec6cc2ed20, high: 0x8ea3743ee36721ff9aaf87425c8cca1 }, u256 { - low: 0xf45da406bbf9bb0127f9e728c618fc1e, high: 0x1b96eb08725c2675ca9571e407dc02b1 + low: 0x9684167c458a6b2b6ea44586396084c0, high: 0x2ca1b3fd0fe76c80eb432288f9947f0f }, + u256 { low: 0x47bf2beaf0d0fbb8575be4429494d041, high: 0xa62d830a417e4cbaf5a99441c8380 }, u256 { - low: 0x7f22cd1207b6e08e6ac1ca75afb918c8, high: 0x14c497fff655860bdd32e231eb561699 + low: 0xacb34896354d995e8e1a3d1fc24236e7, high: 0x346cda9762ede9fa39d58d15be6d76a }, ] .span(); @@ -6871,166 +6849,167 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, - 0x0, - 0x0, 0x0, 0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, -0x1, 0x0, -0x1, - 0x0, -0x1, 0x1, 0x0, + 0x0, + 0x0, -0x1, - -0x1, + 0x0, 0x1, + 0x0, -0x1, 0x0, + 0x0, + -0x1, -0x1, - 0x1, -0x1, 0x1, 0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, -0x1, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, 0x1, 0x1, -0x1, - 0x0, -0x1, - 0x1, 0x0, 0x0, - -0x1, + 0x1, + 0x1, -0x1, 0x0, 0x1, 0x0, 0x0, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, - -0x1, 0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, - 0x1, - -0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, -0x1, + -0x1, + 0x0, + 0x0, 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, ] .span(), array![ -0x1, -0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, - -0x1, 0x1, 0x0, + -0x1, 0x1, 0x1, -0x1, + 0x1, -0x1, - -0x1, - -0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x1, -0x1, + 0x0, 0x1, 0x0, + 0x0, + 0x0, -0x1, - -0x1, + 0x1, 0x0, + -0x1, 0x1, 0x0, 0x1, -0x1, - -0x1, 0x1, 0x0, - 0x0, + 0x1, + 0x1, -0x1, 0x1, 0x1, + 0x1, -0x1, 0x0, - -0x1, 0x1, 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x0, + 0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, - 0x0, + -0x1, + 0x1, 0x0, -0x1, 0x0, + 0x0, 0x1, - 0x1, + -0x1, + 0x0, 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, 0x1, + 0x0, 0x1, - -0x1, + 0x0, 0x0, -0x1, -0x1, @@ -7039,167 +7018,168 @@ mod msm_tests { ), ( array![ - -0x1, - -0x1, - -0x1, - 0x0, -0x1, 0x1, 0x0, - 0x1, 0x0, -0x1, + 0x0, 0x1, - -0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, - 0x0, - 0x0, - 0x1, - 0x1, -0x1, 0x1, + -0x1, 0x1, - 0x1, -0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x1, + -0x1, 0x1, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x1, 0x1, -0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, - 0x1, 0x0, 0x1, - 0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, + -0x1, + 0x0, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, -0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x1, 0x1, 0x1, 0x0, - 0x0, -0x1, - 0x1, - 0x1, + -0x1, ] .span(), array![ - -0x1, - 0x1, -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x1, -0x1, - 0x0, -0x1, 0x0, - -0x1, + 0x1, + 0x0, 0x0, -0x1, + -0x1, + 0x0, 0x1, 0x1, 0x1, + 0x0, 0x1, - -0x1, 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x1, + 0x0, -0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, -0x1, + 0x0, -0x1, -0x1, - 0x1, 0x0, -0x1, 0x1, 0x0, 0x1, - 0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, -0x1, 0x1, - 0x0, - 0x1, - 0x0, - 0x0, 0x1, 0x0, -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, ] .span() @@ -7207,96 +7187,76 @@ mod msm_tests { ( array![ 0x0, - 0x1, - 0x1, -0x1, + 0x1, 0x0, + 0x1, 0x0, -0x1, + -0x1, 0x0, - 0x0, - 0x1, - 0x0, + -0x1, + -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, + -0x1, -0x1, 0x0, 0x1, 0x0, - 0x1, - 0x1, - -0x1, 0x0, 0x0, -0x1, 0x0, -0x1, - 0x1, - -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, - -0x1, - 0x1, - -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, + 0x1, -0x1, 0x0, 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, 0x1, - 0x0, - -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x1, -0x1, - -0x1, - 0x0, + 0x1, 0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, 0x1, 0x1, - -0x1, - 0x1, 0x0, 0x1, - ] - .span(), - array![ - 0x1, 0x0, 0x0, - 0x1, 0x0, 0x1, - 0x1, -0x1, -0x1, 0x0, @@ -7306,139 +7266,159 @@ mod msm_tests { -0x1, 0x0, -0x1, + ] + .span(), + array![ + -0x1, + -0x1, 0x1, 0x0, 0x1, + 0x1, + -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x0, -0x1, 0x1, 0x1, -0x1, - 0x1, - -0x1, - 0x1, 0x0, - -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x0, 0x0, 0x0, 0x1, + 0x1, + 0x1, + 0x1, + -0x1, + -0x1, -0x1, 0x0, -0x1, + -0x1, + 0x0, 0x0, 0x1, 0x1, - 0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, - -0x1, - 0x1, - -0x1, 0x1, 0x1, + -0x1, 0x1, + 0x0, + 0x0, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, -0x1, -0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x1, + -0x1, + 0x1, + -0x1, + 0x1, 0x1, 0x0, + 0x0, -0x1, ] .span() ), ( array![ - -0x1, 0x0, -0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x0, 0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, 0x0, - 0x0, -0x1, - 0x0, -0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x0, 0x1, + -0x1, 0x1, 0x1, - -0x1, + 0x0, 0x0, 0x1, + 0x0, + 0x0, + 0x1, + 0x1, -0x1, -0x1, + 0x1, -0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x1, 0x0, -0x1, - 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, 0x0, -0x1, - 0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x1, 0x1, -0x1, 0x0, -0x1, -0x1, + 0x0, 0x1, 0x0, - -0x1, + 0x1, 0x0, 0x1, -0x1, @@ -7447,161 +7427,161 @@ mod msm_tests { -0x1, -0x1, 0x1, - -0x1, - 0x1, - -0x1, - -0x1, 0x0, 0x0, + -0x1, + 0x0, 0x0, -0x1, + -0x1, + 0x1, ] .span(), array![ + -0x1, 0x0, + 0x1, 0x0, 0x1, -0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x0, + -0x1, 0x0, 0x1, - 0x0, -0x1, 0x1, -0x1, -0x1, 0x0, + -0x1, 0x1, 0x1, - 0x1, - 0x0, - 0x1, - 0x1, - 0x0, 0x0, + -0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, -0x1, + -0x1, 0x1, + -0x1, 0x1, + 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x0, - -0x1, - -0x1, -0x1, 0x1, 0x0, - -0x1, - 0x1, - 0x1, - 0x0, - -0x1, - -0x1, 0x0, - -0x1, 0x1, - -0x1, 0x1, -0x1, - 0x0, - -0x1, - 0x0, 0x1, -0x1, 0x0, - -0x1, - 0x1, + 0x0, -0x1, -0x1, + 0x0, 0x1, 0x1, 0x1, + -0x1, 0x1, 0x1, 0x1, 0x0, 0x0, - 0x1, -0x1, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x1, + 0x1, ] .span() ), ( array![ - -0x1, - -0x1, - 0x1, -0x1, 0x1, 0x1, 0x1, - 0x0, - -0x1, - 0x1, 0x1, -0x1, 0x0, + -0x1, 0x0, 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, 0x1, - -0x1, 0x0, + -0x1, 0x1, + 0x0, 0x1, 0x1, + -0x1, 0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x1, -0x1, - -0x1, + 0x0, + 0x0, 0x0, -0x1, 0x1, -0x1, - 0x0, - 0x1, -0x1, -0x1, 0x1, 0x0, - -0x1, - 0x1, 0x1, - -0x1, + 0x0, + 0x0, 0x1, 0x0, -0x1, - -0x1, 0x0, -0x1, + 0x0, + 0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x1, - -0x1, -0x1, -0x1, 0x0, @@ -7611,268 +7591,261 @@ mod msm_tests { -0x1, -0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, + 0x1, + 0x0, 0x1, -0x1, -0x1, + 0x0, -0x1, - -0x1, + 0x1, ] .span(), array![ - -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, - -0x1, -0x1, 0x1, 0x0, - 0x0, + -0x1, 0x0, 0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, 0x1, - 0x0, + -0x1, -0x1, 0x0, - 0x0, - 0x1, + -0x1, + -0x1, + -0x1, 0x1, -0x1, 0x0, - 0x1, 0x0, -0x1, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x1, - -0x1, -0x1, 0x1, + 0x0, 0x1, - 0x1, + 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x0, - 0x1, + -0x1, -0x1, 0x0, 0x0, + 0x1, -0x1, 0x1, - 0x0, -0x1, 0x0, 0x1, - 0x0, + 0x1, -0x1, 0x0, -0x1, -0x1, + 0x1, -0x1, 0x1, 0x1, - 0x0, - 0x1, - 0x0, 0x1, 0x1, + 0x0, + 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x0, - -0x1, + 0x1, + 0x1, -0x1, ] .span() ), ( array![ - 0x1, - 0x0, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, -0x1, - -0x1, - 0x1, 0x1, -0x1, 0x1, - 0x1, - 0x1, + 0x0, + -0x1, -0x1, -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, 0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, 0x0, + 0x1, -0x1, -0x1, 0x0, 0x0, - -0x1, 0x1, + -0x1, + 0x0, + -0x1, + 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x1, -0x1, 0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, -0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x1, - 0x1, -0x1, + 0x1, 0x0, -0x1, 0x0, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, 0x0, - -0x1, + 0x0, 0x1, 0x0, + -0x1, + -0x1, 0x0, + 0x1, + 0x1, 0x0, + -0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, -0x1, + 0x0, + -0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x0, + 0x1, + 0x1, ] .span(), array![ - 0x1, - 0x1, -0x1, - 0x1, + 0x0, + -0x1, + 0x0, -0x1, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, -0x1, + 0x1, + 0x0, 0x0, - -0x1, 0x1, 0x0, -0x1, -0x1, + -0x1, + 0x1, 0x0, 0x1, 0x1, 0x1, - 0x0, -0x1, + 0x1, 0x0, -0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, - 0x0, 0x1, - 0x0, 0x1, - 0x0, + -0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x0, -0x1, - 0x0, - -0x1, - 0x0, - -0x1, - 0x0, - 0x0, 0x1, 0x1, -0x1, - -0x1, - 0x1, - -0x1, 0x0, + 0x1, -0x1, - 0x0, - 0x0, 0x1, - 0x0, -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, 0x1, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, - 0x1, - 0x0, -0x1, + 0x1, + 0x1, -0x1, -0x1, -0x1, @@ -7881,101 +7854,102 @@ mod msm_tests { ), ( array![ + 0x0, -0x1, + 0x0, + -0x1, + -0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, 0x1, - 0x1, - 0x0, + -0x1, + -0x1, 0x0, 0x1, 0x1, - 0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, -0x1, 0x1, - 0x1, + 0x0, 0x0, -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, + -0x1, 0x0, -0x1, 0x0, -0x1, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, -0x1, + -0x1, 0x0, - 0x0, + -0x1, 0x0, -0x1, - 0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, 0x0, -0x1, - 0x0, + -0x1, + 0x1, + 0x1, 0x0, 0x0, -0x1, + 0x1, 0x0, 0x1, + -0x1, + 0x1, + 0x1, 0x1, -0x1, - 0x0, -0x1, - 0x0, + -0x1, 0x0, 0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x0, + 0x1, -0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, - 0x0, - -0x1, 0x1, 0x0, + 0x0, + -0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ 0x1, 0x1, - 0x0, - -0x1, - 0x0, + 0x1, -0x1, -0x1, + 0x1, 0x0, + 0x1, + 0x1, + -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x0, 0x0, @@ -7983,67 +7957,65 @@ mod msm_tests { 0x1, 0x1, -0x1, - 0x0, 0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, -0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x1, 0x0, - 0x1, -0x1, - 0x1, - 0x0, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, + -0x1, 0x0, 0x0, - 0x1, -0x1, - 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, 0x0, 0x0, 0x0, - 0x1, - -0x1, - -0x1, - 0x0, 0x0, 0x1, - 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, + 0x0, + -0x1, + -0x1, -0x1, ] .span() @@ -8054,145 +8026,145 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xc6b79800f95bb008cd913fb2, - limb1: 0xbcac3019bffaf88ff89dcc1f, - limb2: 0x19270a27f12b6c4a, + limb0: 0xb394f71b80bd8dbcc6817e1d, + limb1: 0xe3687b7fb2a1289534183cc2, + limb2: 0x2f48818c6c8b0af, limb3: 0x0 }, y: u384 { - limb0: 0xb011126faa823ca5bbba3423, - limb1: 0x3511c1e86d96407109ffd27b, - limb2: 0x55daa6e08098640, + limb0: 0xa17a2553145bb1f8a3ba0966, + limb1: 0x79e7bc1fc947e9f6a0e254d, + limb2: 0x2a1937c98f8e2483, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x1d5dd27c0c2b584114aab806, - limb1: 0xc872904e4cbfde9cb6baa05d, - limb2: 0x24dba82bf6ddf40d, + limb0: 0xdc73f52558bc5346733c0a89, + limb1: 0x8c24a17a744d4b35867a980a, + limb2: 0x29dd1c6a0d56ddc2, limb3: 0x0 }, y: u384 { - limb0: 0xe43ea17a18d7fe44c8c7901f, - limb1: 0xa945c9a1cca932c5e57639d7, - limb2: 0x255a4ecb26392d16, + limb0: 0xe9cf6a35d877b2bcc83ec1a8, + limb1: 0x7ebd865c4501973fb51a8dc6, + limb2: 0x1003c3986d2673c6, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x502e903e947ebddcbc0b8af9, - limb1: 0xcb9e661ffe25856087947230, - limb2: 0x5ed4a073f2cb50, + limb0: 0x29db875b46aa769e9dd61a93, + limb1: 0xbb3a5c784e86d77c95653879, + limb2: 0xd9de0697c4abd18, limb3: 0x0 }, y: u384 { - limb0: 0xa67c7c8115ab748db2151ce5, - limb1: 0xd80cd17d006ca533c01f6a7a, - limb2: 0x2661842e7a346593, + limb0: 0xdb32f6db5d4264a65fbdd886, + limb1: 0x261568427f16e5638e48d4d2, + limb2: 0xb9c256cf33ed4a8, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x9afc7ef0d5e6d231218f5f31, - limb1: 0xffdf61d488c81daf94eb1600, - limb2: 0x432e73b10a3f226, + limb0: 0x6f628bb8aa88027bb66f368f, + limb1: 0x7d356c195e1cf71f81779c03, + limb2: 0x4efab82b13f963c, limb3: 0x0 }, u384 { - limb0: 0x5fecb8174ea7fb390aa5f52c, - limb1: 0xbe9f36c6836dbd1d21ed5868, - limb2: 0xfaa7ff4fc252aa6, + limb0: 0xedc6d2f61ca64697c5fe3ff4, + limb1: 0xa1adcd21ccee8de10e59d498, + limb2: 0xb53bc215672b3a0, limb3: 0x0 }, u384 { - limb0: 0x55145c2803922d76c2373844, - limb1: 0x3f1cb7c2c41402a91ec14984, - limb2: 0x115216d87f968f7b, + limb0: 0xf5781384cbba8976571b8a0f, + limb1: 0xca5f3a0f8ae3d08741627d3b, + limb2: 0x1d3a55c5c669f50c, limb3: 0x0 }, u384 { - limb0: 0x6b4d1f820dc253c20c0d73ff, - limb1: 0xf7fe11c3e47719128dfb068c, - limb2: 0x24d5940c5a2c71cb, + limb0: 0x98d80d57ec0709b8368b9c8b, + limb1: 0xce88474aab48c5c8312739db, + limb2: 0x2e3b574b0a0da4da, limb3: 0x0 }, u384 { - limb0: 0x82ae9559795e62b4b2487b6, - limb1: 0xa571b6ce763ac1f9eb628ef8, - limb2: 0x10bf21e929dbc462, + limb0: 0x53ffccd96c06b0400447790e, + limb1: 0x62338177ad0b4a5d971f32fa, + limb2: 0xbe9506c33621c75, limb3: 0x0 }, u384 { - limb0: 0xcfe0dbbc44796e12f559862a, - limb1: 0x92559d46014964efb81eb100, - limb2: 0x2930434c08adef28, + limb0: 0xe9894ea2c62a13bb6c0a039, + limb1: 0x32b9d23dbbfa831f2e609622, + limb2: 0x1c7ca05364b06fc6, limb3: 0x0 }, u384 { - limb0: 0x6366f4bd622a0260a0f44540, - limb1: 0xb80feb4c35aefdcbf21a627e, - limb2: 0xceb6aaee2f65c78, + limb0: 0x3079343b4752daab1694955d, + limb1: 0x26a61d92495b54937e6453f, + limb2: 0x291fdfbe4ff9e086, limb3: 0x0 }, u384 { - limb0: 0x9c58c9a3da02ee4611f6a6f1, - limb1: 0xdc2822db40c0ac2e2d86698b, - limb2: 0x183227397098d014, + limb0: 0xd10bdea76b39206c0167a4c6, + limb1: 0xb85045b68181585d970b79a4, + limb2: 0x30644e72e131a029, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xd2d6b6f6faa5db153eed45e9, - limb1: 0xebc7467fd440d2b4a716e3ab, - limb2: 0x73b94adf19e7c79, + limb0: 0x322b5e0a9bd86c9693b953b4, + limb1: 0xb6575d93488abc2f8aa7d7fd, + limb2: 0xe6e951bba532f4b, limb3: 0x0 }, u384 { - limb0: 0xe88dce11b5e384dac447b306, - limb1: 0xf35824befc9b2301c2225422, - limb2: 0x2c8686181a9f6e55, + limb0: 0x66ca7b3c458fba3de6c5be5b, + limb1: 0x4b84324ea69a427a6754952a, + limb2: 0x18a6506b39adac3b, limb3: 0x0 }, u384 { - limb0: 0xff23a9dc46d269320929cc8a, - limb1: 0x40954979304741595f68868b, - limb2: 0x4f6d2374b20ee82, + limb0: 0xa5c8f4e6c7051cd9d2431658, + limb1: 0xa140247aa8827a3ce199eb79, + limb2: 0x1f7f1a3e7dc7ddd8, limb3: 0x0 }, u384 { - limb0: 0x378146c7845b4230492148b3, - limb1: 0xb7bd25061f45b53e2318b896, - limb2: 0x2ab10f3bc43ac5b6, + limb0: 0xc3740720fa67585861333b80, + limb1: 0x4d9a03d0c12c8628a5d5ba13, + limb2: 0xb14697973ca4d18, limb3: 0x0 }, u384 { - limb0: 0x6f81501416e0ddeb48c5b082, - limb1: 0x1dddd7883eaf14b784e46e24, - limb2: 0x8f5d7ac61d67c6b, + limb0: 0x3fdad6df17dcd541eaf0bed1, + limb1: 0x41952cd6e778d729d49018dd, + limb2: 0x2b42dae6ba70bef7, limb3: 0x0 }, u384 { - limb0: 0xaf0e8837c011b92658a2d2aa, - limb1: 0x2df4f374e8e5e389dbc7ac15, - limb2: 0xa94e1755dae87b4, + limb0: 0x4ce102848cf92ed9062c67f1, + limb1: 0x280751f54871a0d094558a48, + limb2: 0x1e096d1dc3e19eed, limb3: 0x0 }, u384 { - limb0: 0x65123c7464ddcd414acf5b61, - limb1: 0xc854da5d62e68f48103be80f, - limb2: 0x2475b5e63d4fe2fd, + limb0: 0xd34c021b9414e92ef1250a29, + limb1: 0x4025193f091d8384e7902a2a, + limb2: 0x24f0e840c8a94730, limb3: 0x0 }, u384 { - limb0: 0xd56556bfb0f74f80445fff62, - limb1: 0x62400d48e9e086ad738bdb4b, - limb2: 0x130ae3f0a9e37e2f, + limb0: 0x65e4c949358ad2be0fdd8a04, + limb1: 0x6beed6d0cc33f03ae9dff4b0, + limb2: 0x15ef6c73c5b0f8db, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8200,126 +8172,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x33305ca8b2d102e929fb89bc, - limb1: 0x1f3aec747469e35ad422a4a6, - limb2: 0xdefec1850f568e7, + limb0: 0x542ff2d39ab1236d190ab20d, + limb1: 0xc56264d4a150e3e8700fd2b5, + limb2: 0xc325e0030c23b54, limb3: 0x0 }, u384 { - limb0: 0x14d10c47679b78f4529e55a9, - limb1: 0xb544e5941b46158a46f1004, - limb2: 0x214f84219106ff3a, + limb0: 0x64faa07812948e17f7f8be84, + limb1: 0x6e8a9cd598acd0b72348820f, + limb2: 0x27a58c23f9a39aa4, limb3: 0x0 }, u384 { - limb0: 0xc597dae7726ec46f3149ecff, - limb1: 0xebb7507e822ed43c2127d25, - limb2: 0xdeaedea490fb76c, + limb0: 0x3fb88a5be7104e7feee7808d, + limb1: 0x16cc231f3bfe1ef2b04a7b41, + limb2: 0xef4363829feb7eb, limb3: 0x0 }, u384 { - limb0: 0x41a46f11aea649ed1eacdcc9, - limb1: 0x3f4156f3b83e629c879cb6d3, - limb2: 0x2a4fe222ec591b8c, + limb0: 0xb812107f7c5bff28e10f8e93, + limb1: 0x51bb945dfe2ed5029641d3a8, + limb2: 0x19555eed805545eb, limb3: 0x0 }, u384 { - limb0: 0xd0720012e8535738e28e7be4, - limb1: 0xe24956b02617a350ce940db3, - limb2: 0x12112a6178245bf2, + limb0: 0x79a9fc9915343ad4ebaad276, + limb1: 0xe2b5c2fc660248c1be8e696a, + limb2: 0x898ed1200c1af90, limb3: 0x0 }, u384 { - limb0: 0x20f0b480fc328f160005a8da, - limb1: 0xe5d0e01de958f2935d13299f, - limb2: 0xe973ea53912554d, + limb0: 0x70e92a657f7303acf55b6217, + limb1: 0x55ae92cd22591741ca81a493, + limb2: 0x1b86856c9992d4b2, limb3: 0x0 }, u384 { - limb0: 0xa4141f88bb3bf1a5c312f669, - limb1: 0xa62cf78dd8db91d2d540040e, - limb2: 0x18aa0ec65a1d68ae, + limb0: 0x9ee098fda9a845cf6d2921cb, + limb1: 0xcd519eba8cce35b908fea80b, + limb2: 0x11077573a73d8afb, limb3: 0x0 }, u384 { - limb0: 0x527781b8cd5fb104cc11b067, - limb1: 0xc64fe3fc51e07d6c6f8279db, - limb2: 0x14f0589b18bbc682, + limb0: 0x427dbd305b5bb0701b8c90f7, + limb1: 0x888230ab8f95f61405c6cbc4, + limb2: 0x66ce17a2b5b191f, limb3: 0x0 }, u384 { - limb0: 0x73605b2e71dd6cfd29400572, - limb1: 0xbad1f2c63335602addc845b4, - limb2: 0x13410898cf6202ea, + limb0: 0x55389aaea523a467a0f13573, + limb1: 0x8487fea0b159fd9dcb316026, + limb2: 0x15b1c38d5e04ecf1, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x788424e4eff1913fbcc7d1bb, - limb1: 0xc355d37f7cc2781df544ab03, - limb2: 0x15b2be09d4db756d, + limb0: 0x96821a1fd38945c3bb2bfb1c, + limb1: 0x230618b9d9a0348e9ff787f7, + limb2: 0x2b4bbf532ef98de3, limb3: 0x0 }, u384 { - limb0: 0xe8c5d51aa96976629bdd1e84, - limb1: 0x6967e2cff2ceb84a17642745, - limb2: 0x24caf5628d7b0aae, + limb0: 0xcbeda727948ea2a2dbd43dca, + limb1: 0x2a3c5135724d6f119e7c54ed, + limb2: 0x198ea2cecbd76488, limb3: 0x0 }, u384 { - limb0: 0xfd6afd94d4773b961b7d659e, - limb1: 0xc1bfdc6b90d5c40c1e3993a3, - limb2: 0xee476a5e162cb86, + limb0: 0x88e9142718eeca769e4c45c1, + limb1: 0x2b7027b9780616590d4c57db, + limb2: 0x2e1900489825f960, limb3: 0x0 }, u384 { - limb0: 0xa876f6330f76897869572574, - limb1: 0xa25e2a252f0f41b3e15e384b, - limb2: 0x2686257b7beb8d4a, + limb0: 0x7c87736d8b0e759fb7530634, + limb1: 0x9f2569058c104ea97c290638, + limb2: 0x2fabd18815b21694, limb3: 0x0 }, u384 { - limb0: 0xce9ff3c0be659285c61bc745, - limb1: 0x94a165a1372708cab94e33fe, - limb2: 0x1703beaa5ef1436d, + limb0: 0xed05a031d8c495bf1e2102f9, + limb1: 0xe752e7afd880bedf1e80a00d, + limb2: 0x941f5c6c56b08a3, limb3: 0x0 }, u384 { - limb0: 0xc4f4283870794a513124488, - limb1: 0xca7423d7eaf8ebf6f2bf8acd, - limb2: 0x24b57697642c859e, + limb0: 0xbb886759f5af913733ce539d, + limb1: 0xa8b58eed7ed4abf36f97b52f, + limb2: 0x18d2c4b207097a4c, limb3: 0x0 }, u384 { - limb0: 0x2d629c7cfe9305afa0186301, - limb1: 0xe7cae2fac37559fd8d483110, - limb2: 0x6e54595d8958e32, + limb0: 0x6c7478593e64fbb783a85f6d, + limb1: 0x9d68c420d9825ffc2d836371, + limb2: 0x191e85560b62e255, limb3: 0x0 }, u384 { - limb0: 0x873f89c5eda640553d68b161, - limb1: 0x8c4db9ac7acf506248069576, - limb2: 0x11b2350b7e4f56cf, + limb0: 0xa0a59da0403c354e698f624f, + limb1: 0x14c125dc4911f71f632d21cb, + limb2: 0xc48835c49206936, limb3: 0x0 }, u384 { - limb0: 0xaf0e8837c011b92658a2d2ad, - limb1: 0x2df4f374e8e5e389dbc7ac15, - limb2: 0xa94e1755dae87b4, + limb0: 0x4ce102848cf92ed9062c67f4, + limb1: 0x280751f54871a0d094558a48, + limb2: 0x1e096d1dc3e19eed, limb3: 0x0 }, u384 { - limb0: 0x65123c7464ddcd414acf5b61, - limb1: 0xc854da5d62e68f48103be80f, - limb2: 0x2475b5e63d4fe2fd, + limb0: 0xd34c021b9414e92ef1250a29, + limb1: 0x4025193f091d8384e7902a2a, + limb2: 0x24f0e840c8a94730, limb3: 0x0 }, u384 { - limb0: 0xd56556bfb0f74f80445fff62, - limb1: 0x62400d48e9e086ad738bdb4b, - limb2: 0x130ae3f0a9e37e2f, + limb0: 0x65e4c949358ad2be0fdd8a04, + limb1: 0x6beed6d0cc33f03ae9dff4b0, + limb2: 0x15ef6c73c5b0f8db, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8329,102 +8301,102 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x15b248e25f211972855addf9, - limb1: 0xbd532228623fe0ab77f506b8, - limb2: 0xb87f1c361c68022, + limb0: 0xd6153717935ea3c36558c9cb, + limb1: 0x3853a1d056c0dbeccf3bce3a, + limb2: 0x53100c00ec67524, limb3: 0x0 }, u384 { - limb0: 0xcf3700d768aed667c858d929, - limb1: 0x17c54fa81f3822ecd0b08d04, - limb2: 0x14391195f0645de6, + limb0: 0x1bb71fecb01455f353ed66e2, + limb1: 0x260f0d29b6230275aecff665, + limb2: 0x2c994cba91a0ace0, limb3: 0x0 }, u384 { - limb0: 0x9a8bfb564c4333d0bbe953f1, - limb1: 0xf5f752ec2caa1b3bb3fa2e42, - limb2: 0x194ceb124ccc2fcf, + limb0: 0x6f1f38b42c9d805e63d025f3, + limb1: 0x373e2244be86952bb658ac7a, + limb2: 0x15da91a9f16cf34d, limb3: 0x0 }, u384 { - limb0: 0xce3642f7c50645b6fead362e, - limb1: 0x9885c27fbca6458109ba82f7, - limb2: 0x20dad076efd3da82, + limb0: 0x78d76898167afe6c78b24689, + limb1: 0x30611f3545b8b3b85a083313, + limb2: 0x287dd44badee6fc9, limb3: 0x0 }, u384 { - limb0: 0x5aebce4e2a76d5e5e07cbd33, - limb1: 0xbcd4b3894b33e12eba683c7f, - limb2: 0x2b13ac473131432f, + limb0: 0x51e9509d573530614f51bf2a, + limb1: 0xaf5fbb2528224314e16893fb, + limb2: 0x14cdd521c103c65, limb3: 0x0 }, u384 { - limb0: 0xa5429f202c818aed1b62a28f, - limb1: 0x42ea0645ca02edeb4fb8a850, - limb2: 0x2a0c04fa98d212ce, + limb0: 0xee50df83865f8cf624784aec, + limb1: 0x111e5d57ef6eb893e0020d1a, + limb2: 0x2f8274ed04557ed9, limb3: 0x0 }, u384 { - limb0: 0x24fa411e839b871d8828a8d6, - limb1: 0x66f59b2294267f08b65042f5, - limb2: 0x1e140ac1ed8bfe83, + limb0: 0x528dcca21bb68b7afd3ccab6, + limb1: 0x29be8100a5865b123d7871e9, + limb2: 0x1a2502546fdba3fb, limb3: 0x0 }, u384 { - limb0: 0x8d511433fcf3e452a2171b75, - limb1: 0xb85045b68181585d38d49598, - limb2: 0x30644e72e131a029, + limb0: 0x76eac38c05f0e8a079c17925, + limb1: 0xdc2822db40c0ac2e8ccaa581, + limb2: 0x183227397098d014, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x14250f7925bb2bf02bb34900, - limb1: 0xa59b0b6774070944fbbf4534, - limb2: 0x1fd3fbbf16df8720, + limb0: 0xe5fb7ff0ae25266d6bbf9b08, + limb1: 0x8fc3ce9eae9973d41a9eb93, + limb2: 0x199bdd4d848cb6da, limb3: 0x0 }, u384 { - limb0: 0xa6e8bc0469bd4d3981769122, - limb1: 0x46b553d20a5ec2d148ecd956, - limb2: 0x1684c6c33abefc00, + limb0: 0xed5aec436cd6c02fb7831cac, + limb1: 0xb00be23d5b2af4fa98c785b8, + limb2: 0x2987a4a0fc2bd5f1, limb3: 0x0 }, u384 { - limb0: 0xcd7ce5a21444a5f4e9588677, - limb1: 0x668587570a1ce972c7b04f41, - limb2: 0xebb302b8d27cb10, + limb0: 0x2c6a0c626f6059f37ef5986b, + limb1: 0x36132c935b81febce853f40, + limb2: 0x1d6e606e524a0ae7, limb3: 0x0 }, u384 { - limb0: 0xc4525e1e24148ae8db46c490, - limb1: 0x87190dfbd5b637ec974a9573, - limb2: 0x2cb0d3aaf4cb1815, + limb0: 0xa41b76308b631f727750ba68, + limb1: 0x6ce60addf07ec6c9cd352c2e, + limb2: 0x6f6064d0b7e9284, limb3: 0x0 }, u384 { - limb0: 0x3f75ac142a15231aa2e4158c, - limb1: 0x43e35f25e4d6cabe917f029d, - limb2: 0x2e98bc17febbac0a, + limb0: 0x5859249d2c9072965a7bbe0c, + limb1: 0xb30a30df1f5674189388a061, + limb2: 0x1521c24cc3b1f017, limb3: 0x0 }, u384 { - limb0: 0x920638cf56417111b387aca3, - limb1: 0x1ed225a48429a772f8856e06, - limb2: 0x2e3c328b03275731, + limb0: 0xbee0a9ac2dc329ed82a36ffc, + limb1: 0x97d2e8e42fa71e054a5d2d82, + limb2: 0x1c803ba5ae154e15, limb3: 0x0 }, u384 { - limb0: 0x621e1e643b288a3cb680e5e8, - limb1: 0x8e832a7236f1a8f027e706d3, - limb2: 0x6b8fc4f5c894ab, + limb0: 0x7edc4cdbefb21f4218159334, + limb1: 0xf7bea94c7ed983ba0688bd72, + limb2: 0x282d977689300e3, limb3: 0x0 }, u384 { - limb0: 0x7ebf1c449e27a747fd46870e, - limb1: 0x5679ad145d1ba0a0b56f070e, - limb2: 0x75645eca430f66c, + limb0: 0xa57795cc99ac994b3b9ffadf, + limb1: 0x7b82f68c8c0925f82eff03f9, + limb2: 0x1f6b269560546bf2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8432,126 +8404,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x88ffa45d79e354357e72ad2d, - limb1: 0x6585740ba7496a25c90e1c4a, - limb2: 0x2f1c111da399ec61, + limb0: 0x9cf9bb2d0b868ba4e5312d6c, + limb1: 0x38f019275d5d87b7e002e728, + limb2: 0x2b3d86f7513e131d, limb3: 0x0 }, u384 { - limb0: 0xd90055ceda3c9e274b2bddda, - limb1: 0x3eac5fc3c242e255a72dba72, - limb2: 0xbb3cbacd789a4c4, + limb0: 0x9a116a5f49899a4c08c95d4d, + limb1: 0xb1dbca8853f6b73a2c0ded0f, + limb2: 0xfd4163700131a6b, limb3: 0x0 }, u384 { - limb0: 0xd10d58f4df4326f0952277f0, - limb1: 0xeb4b774584cf5e84b74a8f41, - limb2: 0x917f8a454e602da, + limb0: 0x787f7001ee903a8f61e5f418, + limb1: 0x7d4d36b424b6817c1976541, + limb2: 0x28e3b754a647157a, limb3: 0x0 }, u384 { - limb0: 0x2218ad249af857fc04f4826e, - limb1: 0xf2e032bc432edddd88fa46f6, - limb2: 0x229f73dd6c3e44f9, + limb0: 0x45d1593885abf3fea910da4a, + limb1: 0x4446772d86585d1ec1152714, + limb2: 0x137c98c2c2ceef80, limb3: 0x0 }, u384 { - limb0: 0x79fc5b022ff7726e14a16c05, - limb1: 0xabc97c23dde4e074314ccf19, - limb2: 0x2a23b5cc79c6c62e, + limb0: 0x4d5b70be8c0b5120ad8899b1, + limb1: 0xb9b223ecbab9609c827d33a8, + limb2: 0x915fa90082ec20a, limb3: 0x0 }, u384 { - limb0: 0x84cf8142a1e1c9165c36e1f7, - limb1: 0xb6b28c2d189dd7c41eb9f22e, - limb2: 0x2761f4f320aaea5b, + limb0: 0x4cf5f652f91e502ebf208c40, + limb1: 0x5f7e6f4e91c61554149ad9f3, + limb2: 0x1350b96615dbe6c, limb3: 0x0 }, u384 { - limb0: 0x7ccbe10ce5c31dee6c4d97e9, - limb1: 0xe09a030fa05bf5d58701923c, - limb2: 0x8b0973dcd0a5104, + limb0: 0xe8352d141596bb6c1253cbdd, + limb1: 0xb2d1462710e305c5c55d3070, + limb2: 0x19f6cf8117cfb165, limb3: 0x0 }, u384 { - limb0: 0xa920b79afaa64213f6108306, - limb1: 0x6fbe42b104535623bde63566, - limb2: 0x1c8d81499d24532b, + limb0: 0xaea3b19310ac87ba41f129e, + limb1: 0xf8f44d2927fb78d81eb77c4f, + limb2: 0x39b4d96c431ebcf, limb3: 0x0 }, u384 { - limb0: 0x1e8128b36a247597629ef876, - limb1: 0x4a365fc60f17a66361b4ac40, - limb2: 0x61a714868e4fb36, + limb0: 0x4f0a292f4c0d71cdc9e9bed2, + limb1: 0xa9ef87144c2522b732008128, + limb2: 0x9921f7dcca45d49, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xd3fd63de3510f7b9aa9cddb9, - limb1: 0x3880dc7fda93c3715bbc650a, - limb2: 0x2f17a4ca636cf538, + limb0: 0x4980b544ce4ee7316ac1d3d1, + limb1: 0x62a471073f3b6d5a2d7c582a, + limb2: 0x1c6f4975ac748464, limb3: 0x0 }, u384 { - limb0: 0x8c48698001175b95abe6b61f, - limb1: 0x1bcfb5bf9d9af01643452172, - limb2: 0x132a05d6cf0b53d7, + limb0: 0xf72d2fafce432861758f5b76, + limb1: 0x9f831b4b0e7e2e349b53bc07, + limb2: 0x1bce50fd32204181, limb3: 0x0 }, u384 { - limb0: 0x6876b0e63ccdf1debc099365, - limb1: 0x339096051e56bc585710edc5, - limb2: 0x2c319082a7776131, + limb0: 0x1ccc5a9a120081c3a463cbfa, + limb1: 0x51d352a51fa70765d40e532f, + limb2: 0x27e6d2d815ac808b, limb3: 0x0 }, u384 { - limb0: 0x27c6ca2bdd97286634109edb, - limb1: 0x11f5643770a5a7f1fb1ac5db, - limb2: 0x14b98b6751abeee4, + limb0: 0xd24de282504e84c4d1b1ca40, + limb1: 0x4fae5d83bc65eb9aa949701f, + limb2: 0x2e7df034a7086e67, limb3: 0x0 }, u384 { - limb0: 0x2bf46099339b1244e0abd9f1, - limb1: 0xe96ea020345f19f436e5a17a, - limb2: 0x11220fb2935d1fa1, + limb0: 0x2582c5007a46ffc515fc5c42, + limb1: 0x5889e96db62ba089245e91ba, + limb2: 0x8244ea184de65e5, limb3: 0x0 }, u384 { - limb0: 0x4a3a306862a754e57a78948b, - limb1: 0x9a0b27211215d6b2eabc59a1, - limb2: 0x842dc73f308f026, + limb0: 0x9828744c8068bf8e55e5edd1, + limb1: 0x5a396208c1aac9407e99f2a5, + limb2: 0x122676799a26b4d4, limb3: 0x0 }, u384 { - limb0: 0xeaacb94ad58e299efec97648, - limb1: 0x32a28d527a8b32bd0effa9ed, - limb2: 0x2df382f9d624d618, + limb0: 0x20b05cc45a797d38bf917404, + limb1: 0x542206c36d0b51f7e0cf6486, + limb2: 0xe7e92b345379530, limb3: 0x0 }, u384 { - limb0: 0x53413654c86b8cdbc23aad6f, - limb1: 0x8f0020ac7aa854431a4aad37, - limb2: 0x14373f6b0a1cef25, + limb0: 0x77dc50e88155264a5c61b41b, + limb1: 0xb4f28917c06f3545f182d72b, + limb2: 0x129a9927224bf39b, limb3: 0x0 }, u384 { - limb0: 0x920638cf56417111b387aca6, - limb1: 0x1ed225a48429a772f8856e06, - limb2: 0x2e3c328b03275731, + limb0: 0xbee0a9ac2dc329ed82a36fff, + limb1: 0x97d2e8e42fa71e054a5d2d82, + limb2: 0x1c803ba5ae154e15, limb3: 0x0 }, u384 { - limb0: 0x621e1e643b288a3cb680e5e8, - limb1: 0x8e832a7236f1a8f027e706d3, - limb2: 0x6b8fc4f5c894ab, + limb0: 0x7edc4cdbefb21f4218159334, + limb1: 0xf7bea94c7ed983ba0688bd72, + limb2: 0x282d977689300e3, limb3: 0x0 }, u384 { - limb0: 0x7ebf1c449e27a747fd46870e, - limb1: 0x5679ad145d1ba0a0b56f070e, - limb2: 0x75645eca430f66c, + limb0: 0xa57795cc99ac994b3b9ffadf, + limb1: 0x7b82f68c8c0925f82eff03f9, + limb2: 0x1f6b269560546bf2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8561,9 +8533,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x839287976fb84235054aaaae, - limb1: 0x612a3514f131afe620ec4056, - limb2: 0x8ac69e79438a065, + limb0: 0x710436fc16cd173c5e21336c, + limb1: 0xb541d2faf115d91fe96eeacc, + limb2: 0x1395c77399f8ebf2, limb3: 0x0 }, u384 { @@ -8576,15 +8548,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xeefae791b87eeb4142c83849, - limb1: 0x312645ad3f83cc520984d1c7, - limb2: 0x2a6047dec997dcab, + limb0: 0x919d3272ae37eaf955d114a2, + limb1: 0x911e70153778c69b289db938, + limb2: 0x6dd161700622d95, limb3: 0x0 }, u384 { - limb0: 0xfae567d29b7675f907c6ba48, - limb1: 0x243f4f48369bf46059325803, - limb2: 0xb29d1a67660e0cb, + limb0: 0xca941899d8da4e489fe7d572, + limb1: 0x29418d7a402e8e091323049e, + limb2: 0x294da01238c1a578, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8592,49 +8564,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x133e3329a8db7098ec1593, - limb1: 0xa4e3bdb691263716b67ec591, - limb2: 0x88eceedd04c3213, + limb0: 0x402d8dd679f386b5db79e861, + limb1: 0xdc89153ce61bb117d0cf8b7d, + limb2: 0x13a936930cab1a2f, limb3: 0x0 }, u384 { - limb0: 0xa410f8958c6e13b12b539528, - limb1: 0xee74090ddda09e6f5dfd5bb3, - limb2: 0x1343007551e60c41, + limb0: 0x9a6322a41fc22f5dc5d3dc80, + limb1: 0x82c3cae8d28b2d7af8282886, + limb2: 0x217f1de9d0dc0bcc, limb3: 0x0 }, u384 { - limb0: 0x6fd0fa3d0d88d5178e71b398, - limb1: 0x57b65f5cf31dc75e08308b2c, - limb2: 0x4995a149f6ace2f, + limb0: 0xfcbe109af29f56605f075bb2, + limb1: 0x9a7922310a6ef334235d120a, + limb2: 0x97ca40af29e0dd9, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xfc0d219ab13ba996175eae4d, - limb1: 0x22d2459abb88b43aed8ba034, - limb2: 0x1e583ab69a6455ae, + limb0: 0xb4d797580aa7c0ec01733de6, + limb1: 0xb35b503fa66a53d179d92ba9, + limb2: 0x14974245012688c0, limb3: 0x0 }, u384 { - limb0: 0xf0b03777d26361eb17542ed8, - limb1: 0x6cbdedd8a3d3dd210b97080b, - limb2: 0x217d74f36322a261, + limb0: 0x8ed8b4b3124dd2ac2ebd85c8, + limb1: 0xb241d01bd88f9600a6638b9, + limb2: 0x1b204350e7e1b015, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xeefae791b87eeb4142c83849, - limb1: 0x312645ad3f83cc520984d1c7, - limb2: 0x2a6047dec997dcab, + limb0: 0x919d3272ae37eaf955d114a2, + limb1: 0x911e70153778c69b289db938, + limb2: 0x6dd161700622d95, limb3: 0x0 }, u384 { - limb0: 0xfae567d29b7675f907c6ba48, - limb1: 0x243f4f48369bf46059325803, - limb2: 0xb29d1a67660e0cb, + limb0: 0xca941899d8da4e489fe7d572, + limb1: 0x29418d7a402e8e091323049e, + limb2: 0x294da01238c1a578, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -8644,12 +8616,19 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xf4d1739473f3aa1da049d201, - limb1: 0x47bde2da3fa455d5b3223e91, - limb2: 0xab53e87d8f975c4, + limb0: 0xc956b71cce2de56ffaf6ecaa, + limb1: 0x54f369588377d629c4ef7876, + limb2: 0x2044a75659aa4a9, limb3: 0x0 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0xb97c2f00b69d531857da0f1e, + limb1: 0xa0e796e62a80df12ca8d1d4, + limb2: 0x128dd65b3ba7cfc1, + limb3: 0x0 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 0 @@ -8657,15 +8636,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xabb463cb778f51278ea92706, - limb1: 0x540a37e545ef06b702549e70, - limb2: 0x29fd37375efc0453, + limb0: 0xe3d47be1f8b61f167039ffc, + limb1: 0x4be31aeecc4b74acb2754d12, + limb2: 0x2473ad893b4870a9, limb3: 0x0 }, y: u384 { - limb0: 0xc2728004483ae7a9a5a8219e, - limb1: 0x1ac4f64b9017ce9d549d6f4f, - limb2: 0x1fab6e2d6e462da4, + limb0: 0xdc3a86acd02ef965fbf1b477, + limb1: 0x83e2dcbace1addeecdc233a5, + limb2: 0xabec3a747312795, limb3: 0x0 } } @@ -8678,113 +8657,113 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x5751c54c6589c3df24f88d1c, - limb1: 0x967ea43f7a188665a0cdf208, - limb2: 0xa4a7cc562fd50d8, + limb0: 0x290b50e9dbba7cc4d5cb9e2e, + limb1: 0xb3e52672054989267c3e3d9d, + limb2: 0x9a412ff4f26b9c, limb3: 0x0 }, y: u384 { - limb0: 0xd52ed8ccff6852fad7b85e6, - limb1: 0xb3f27553b084fda1a3be1ca, - limb2: 0x25d71f6c11d43ec8, + limb0: 0x15480c9883a5633f0d0f0792, + limb1: 0xb5a5247f36eb92869530fe14, + limb2: 0x25ea80aa34c30541, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x51e79368ffd0673de5784162, - limb1: 0xc570c3731aa4f89f4f7a7d5e, - limb2: 0xd3a14b5d31bf7ca, + limb0: 0x715efc1d0a42b32c80b6cafb, + limb1: 0x288db0f052132d76fbb744e7, + limb2: 0x80c11f141013d18, limb3: 0x0 }, y: u384 { - limb0: 0xdbc0c8a4f0b8b1ec9af87981, - limb1: 0xb52d3b06a3f078cbc16f76af, - limb2: 0x2477607a57963128, + limb0: 0xb79153bc0435b8cd0153f5dd, + limb1: 0xe8964c562900d4d7f7e38f8e, + limb2: 0x1046b04a3f23ff1a, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xbe182225502cc18b3dd0bd6d, - limb1: 0xa6c670b969d1eb558967a480, - limb2: 0x2e1d2792d53c7a2a, + limb0: 0x75acd39e03669bb1ab61708f, + limb1: 0xd2c3f61b5360941f257ce8e6, + limb2: 0x1e2b11a2b2bdf474, limb3: 0x0 }, y: u384 { - limb0: 0x480de73528c20fab30f8f4fa, - limb1: 0x1940b33c0a969cf90c0db0ed, - limb2: 0xde015e74b061c55, + limb0: 0x7ded9a3eeeb15996605f4b65, + limb1: 0x4b7342134e50d1597cfd1e08, + limb2: 0x7b6f41b879dca8c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x947fd6712f1b7fffcc9bcd23, - limb1: 0x4b3cf4ca4cf9d87d4b027ec3, - limb2: 0x13c0e997c6cc5cc5, + limb0: 0x47d9d854ff60a39f63f59bc3, + limb1: 0x6cd9546e9f0c20de1b556bee, + limb2: 0xe7d2d53f546f29a, limb3: 0x0 }, y: u384 { - limb0: 0xf41375143613d61825f84fa1, - limb1: 0xe61a62f6a4be2dcd7999d650, - limb2: 0x5c03bac5cb57403, + limb0: 0x292231d845f969fa0be6c4c9, + limb1: 0x3db3f7d9c5d46147644b57ea, + limb2: 0x278c29f77d8b857b, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x902e05f9d959ded50c60e22c, - limb1: 0x3d11cbdf7273f4dcd922bd51, - limb2: 0x7a1df00b7ec9a29, + limb0: 0x79eaf59c52ad8f6b38ab78a0, + limb1: 0x2111d6c079431de0048b23ea, + limb2: 0x1e9b4bfa85bc890a, limb3: 0x0 }, y: u384 { - limb0: 0x2e4b13c27fe6f8e10b702c0b, - limb1: 0x92222f373815d64bc2e3a552, - limb2: 0x29724dda8f987b0, + limb0: 0xa0b32e988303030f7d947653, + limb1: 0x8dd8279117113f02bffd9756, + limb2: 0x1880f0360cb0256c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x36d265429a439641fce2f481, - limb1: 0x4ddde7ac5a6b3cc476eb453e, - limb2: 0x2620b1eb8cf2c719, + limb0: 0xaf9f253391cb578565b1e998, + limb1: 0x782883e013a00cc74bbc331b, + limb2: 0x20815a70a0dd8d53, limb3: 0x0 }, y: u384 { - limb0: 0xd2c0d2c7629fc3cc593bdf1f, - limb1: 0xbf70e33672ef4cfe61ef46c0, - limb2: 0x402f63c6227f17a, + limb0: 0xb8ba87e0a2fbd6623eee8fff, + limb1: 0x659bc0d573d531021cd19dc7, + limb2: 0x11c6438040482552, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xa534fdd2170d74a4898e862a, - limb1: 0xb1eb318e1b1539575a1bd980, - limb2: 0x2dd8eba14dd8d7f4, + limb0: 0x77fd783c5ceab3910445cca, + limb1: 0x5b1455eb2d0a6988c24d83b4, + limb2: 0x224484b47231ec28, limb3: 0x0 }, y: u384 { - limb0: 0x245cd58689413c6d2a9c7c4a, - limb1: 0xd389a0dcc1f398754de2bd93, - limb2: 0x41fef9008ee9a49, + limb0: 0xe1e99f32f4a804293cdf8523, + limb1: 0xd40f15ce8f765ccc427f8c6f, + limb2: 0x202be84b56098eba, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xf4c7c0f62b7d82b18b996239, - limb1: 0x45565235bd4b73ee8310430b, - limb2: 0x28c88a0e17daae98, + limb0: 0x4a7345e53947b02b98433d2b, + limb1: 0x212124a699016585de5134f7, + limb2: 0x28f56b1b0ef27a15, limb3: 0x0 }, y: u384 { - limb0: 0x1c243ab344a5ec1e01ee1d6d, - limb1: 0xa9e555b83eaeb75b233997bc, - limb2: 0x8a31076d7a1652d, + limb0: 0x700f7cf06e0296781be85df5, + limb1: 0x15676886ffd1fa72ed7eb73f, + limb2: 0x232735c680389661, limb3: 0x0 } }, @@ -8792,28 +8771,28 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x97d01e702f1d9bef53b53b92a2cb5f38, high: 0x222067d01a42b62914afe646fe3216bd + low: 0xf0d899a254e60295da5660560cfbef5, high: 0x233fe27a6a0a4b5f10565b0f5b5fee5 }, u256 { - low: 0x606821d6280a07ee4ec985ff94b28b9d, high: 0x803ddd4f217faac259cff81e5ce0ca6 + low: 0x1867399551768060a9d3b8aa745f80a3, high: 0x2cfcb788b910392a4bcfabaa2e7c85ad }, u256 { - low: 0x8222134550de4292390a9016cdec85da, high: 0xbc5bed4c13e66af3c9590d33e2aad3e + low: 0x4274329549a628df4b7b121358ace695, high: 0xe7c05b8e981bd479d06e94faf17cec }, u256 { - low: 0xa9c72e7b6b770df15f59aa2c4a82e06a, high: 0x267a320a21da132cdc68d4fd0bd7696f + low: 0x9fd452b1b4c2df01dbb5ef44da998893, high: 0x2bce326c107211abca4f76fb823bc81d }, u256 { - low: 0xb3c161c313f2a37c64d027590542bd75, high: 0x132926ab6b944e0921cc14b312bdf75f + low: 0xc3d84a6191034e735913d4d081987c, high: 0x143b99882677aa883e501bc1c160054f }, u256 { - low: 0xed28508dbdaa3bfa6ab015638cffbbb1, high: 0x1312e47f6c148fc69750ca7e246cb09c + low: 0x58b1fbc3851467917e35f1ede312f944, high: 0xd58811a13525a42da5e327c4de4446a }, u256 { - low: 0x3f80c31f15a5712c5ac4b6c7a31034dd, high: 0x28c556505e87905aa1fdcdf171df24d9 + low: 0x131ba7042c3d8ec59ff5c325cca2f9c8, high: 0x1ff2c182273fd766aaac7643d46c84d1 }, u256 { - low: 0x2f7a304ff344c911174f7a54788c161e, high: 0x72d9bd946e785ad1bce35d8cbe88a3f + low: 0xc982f4dc91802a71e43042cda104c71c, high: 0x267e80df21c53e4d7eba8abc5dea7653 }, ] .span(); @@ -8822,168 +8801,164 @@ mod msm_tests { ( array![ 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x1, 0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, -0x1, 0x0, - 0x1, -0x1, 0x0, + 0x0, + -0x1, -0x1, -0x1, - 0x0, -0x1, 0x1, -0x1, 0x0, - -0x1, - 0x1, 0x1, 0x0, -0x1, - -0x1, - 0x0, 0x0, + -0x1, 0x0, - 0x1, 0x0, -0x1, 0x1, 0x0, - 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x1, -0x1, - -0x1, + 0x1, 0x0, + 0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, 0x1, - 0x0, 0x1, 0x0, + -0x1, + -0x1, + 0x1, + -0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, -0x1, 0x1, - -0x1, - -0x1, - 0x0, - 0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, + -0x1, 0x1, ] .span(), array![ 0x1, - -0x1, 0x0, - 0x1, -0x1, - 0x1, - 0x0, -0x1, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, - 0x1, - 0x1, 0x1, 0x1, 0x0, - 0x0, + -0x1, -0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, - -0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x1, -0x1, 0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, - -0x1, - 0x0, - -0x1, - -0x1, 0x0, -0x1, - -0x1, + 0x1, 0x1, 0x0, -0x1, - -0x1, 0x1, - 0x0, + 0x1, -0x1, - 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, - -0x1, + 0x0, + 0x0, 0x0, -0x1, + -0x1, 0x1, - 0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x0, + 0x0, + 0x0, 0x1, + -0x1, + -0x1, 0x1, - 0x0, + -0x1, -0x1, ] .span() @@ -8991,43 +8966,35 @@ mod msm_tests { ( array![ 0x0, - -0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x0, -0x1, 0x0, 0x1, 0x1, - -0x1, - 0x0, - 0x0, 0x1, 0x0, - -0x1, - 0x1, - -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, 0x0, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - -0x1, - -0x1, - -0x1, 0x1, 0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, -0x1, @@ -9035,89 +9002,82 @@ mod msm_tests { 0x0, 0x0, 0x1, - -0x1, 0x1, 0x1, 0x0, -0x1, -0x1, 0x1, - 0x0, -0x1, - 0x0, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, - 0x0, - 0x0, 0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, - 0x0, - 0x0, - -0x1, - -0x1, 0x1, 0x1, -0x1, + -0x1, + 0x1, 0x0, 0x1, - ] - .span(), - array![ -0x1, 0x0, 0x0, 0x0, + 0x1, + 0x1, + 0x0, + 0x0, -0x1, -0x1, + ] + .span(), + array![ 0x1, 0x0, -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x1, 0x1, 0x1, + -0x1, + 0x0, 0x0, 0x1, -0x1, 0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x1, - 0x1, - -0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, - 0x1, - 0x1, + -0x1, -0x1, 0x0, - 0x1, -0x1, -0x1, + 0x0, 0x1, -0x1, - 0x1, 0x0, -0x1, - 0x0, 0x1, 0x0, 0x1, @@ -9125,8 +9085,7 @@ mod msm_tests { 0x0, 0x0, 0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x0, 0x1, @@ -9134,530 +9093,538 @@ mod msm_tests { 0x0, -0x1, 0x1, + 0x0, + -0x1, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x0, -0x1, + 0x1, -0x1, 0x0, 0x1, -0x1, -0x1, - -0x1, + 0x1, + 0x0, 0x0, -0x1, - 0x1, -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x1, 0x1, + -0x1, ] .span() ), ( array![ - 0x0, + -0x1, + 0x1, 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, - 0x1, 0x0, -0x1, - -0x1, + 0x1, -0x1, 0x0, 0x0, - 0x0, - -0x1, -0x1, 0x1, - 0x0, + 0x1, 0x0, 0x1, + 0x1, + 0x0, + 0x0, 0x0, -0x1, - 0x1, -0x1, 0x0, - 0x1, - 0x0, -0x1, 0x0, + 0x0, 0x1, -0x1, 0x1, - 0x1, - -0x1, - -0x1, + 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x0, + 0x0, 0x1, 0x1, -0x1, 0x0, + 0x0, + -0x1, + 0x1, + -0x1, + 0x1, -0x1, 0x0, 0x0, + 0x1, + -0x1, 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x0, 0x0, -0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, + 0x0, -0x1, - -0x1, - 0x1, - 0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, + -0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, + 0x0, -0x1, -0x1, 0x1, + 0x1, ] .span(), array![ + 0x1, + 0x1, + 0x0, + -0x1, -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, 0x0, + 0x1, + 0x0, 0x0, 0x0, -0x1, + -0x1, + -0x1, 0x0, - 0x1, -0x1, + -0x1, + 0x0, + 0x0, 0x1, -0x1, 0x1, 0x0, - 0x1, + 0x0, 0x0, -0x1, -0x1, + 0x1, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, - -0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x0, 0x1, 0x0, - 0x1, -0x1, - 0x0, 0x1, 0x1, -0x1, - -0x1, 0x0, - 0x1, - 0x1, -0x1, 0x0, 0x0, 0x1, - 0x0, -0x1, 0x0, -0x1, - -0x1, 0x0, -0x1, 0x1, - 0x1, -0x1, 0x1, - 0x0, - 0x0, - 0x1, -0x1, + 0x0, 0x1, 0x1, - 0x1, - 0x1, - -0x1, - -0x1, - 0x1, - -0x1, -0x1, -0x1, - 0x1, 0x0, 0x0, 0x1, + 0x1, ] .span() ), ( array![ + 0x0, + 0x0, + 0x1, + 0x1, -0x1, -0x1, + 0x1, -0x1, + 0x0, -0x1, -0x1, - 0x0, -0x1, -0x1, -0x1, 0x1, 0x1, - -0x1, + 0x0, 0x1, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, + 0x1, 0x0, - -0x1, 0x0, 0x0, 0x0, -0x1, -0x1, - 0x1, + 0x0, + -0x1, -0x1, 0x1, - 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x1, - 0x1, 0x0, -0x1, 0x1, - 0x0, - 0x0, -0x1, -0x1, 0x0, - 0x0, 0x1, + -0x1, + -0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x1, - 0x1, -0x1, - 0x1, - 0x0, -0x1, + -0x1, + -0x1, + -0x1, + 0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x1, -0x1, + 0x1, ] .span(), array![ - 0x1, -0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x0, - 0x1, -0x1, -0x1, -0x1, 0x0, 0x1, + 0x1, -0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x0, 0x0, + 0x1, + 0x1, + 0x1, 0x0, 0x0, 0x0, - -0x1, 0x0, + 0x1, -0x1, 0x0, - 0x0, + 0x1, 0x0, 0x0, -0x1, 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x0, - -0x1, 0x1, 0x0, + 0x0, 0x1, -0x1, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, 0x0, - -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, 0x0, 0x1, + 0x0, 0x1, -0x1, - 0x0, + -0x1, -0x1, 0x0, -0x1, 0x1, 0x1, -0x1, + ] + .span() + ), + ( + array![ + -0x1, + 0x1, + 0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x1, - 0x0, - 0x0, - -0x1, - ] - .span() - ), - ( - array![ 0x0, 0x0, 0x0, 0x1, - 0x0, + 0x1, -0x1, -0x1, - 0x1, 0x0, + -0x1, 0x1, + -0x1, 0x0, 0x0, 0x0, 0x1, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, 0x1, 0x0, 0x0, - 0x0, -0x1, 0x0, -0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x0, + -0x1, + -0x1, + 0x1, + 0x1, + 0x1, 0x1, 0x1, - -0x1, 0x0, 0x0, - -0x1, 0x0, - 0x1, - -0x1, -0x1, -0x1, - 0x0, -0x1, 0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, -0x1, - 0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x0, -0x1, + 0x1, 0x0, 0x0, 0x0, - 0x1, - -0x1, - -0x1, - 0x0, -0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, ] .span(), array![ 0x0, - -0x1, - 0x1, 0x1, - -0x1, - -0x1, 0x0, + -0x1, + 0x1, 0x0, + -0x1, 0x1, 0x1, 0x0, + 0x1, 0x0, - 0x0, - -0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, + 0x1, 0x0, - 0x0, - -0x1, -0x1, 0x0, 0x1, -0x1, - -0x1, - 0x0, 0x1, -0x1, - -0x1, - -0x1, - 0x0, - 0x1, 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, 0x0, + -0x1, + -0x1, 0x0, 0x0, - 0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, 0x0, -0x1, -0x1, - -0x1, - 0x0, + 0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, 0x0, -0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, 0x0, -0x1, + -0x1, 0x1, + -0x1, 0x1, 0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x1, - 0x0, 0x1, + -0x1, 0x0, 0x0, - -0x1, + 0x1, + 0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, 0x1, -0x1, -0x1, @@ -9666,389 +9633,383 @@ mod msm_tests { ), ( array![ - -0x1, 0x0, -0x1, -0x1, - 0x0, 0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, + 0x0, 0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x1, - 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x1, 0x0, 0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, -0x1, 0x0, + -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, - 0x1, -0x1, -0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, 0x1, - 0x1, 0x0, - 0x1, + -0x1, 0x0, -0x1, -0x1, + -0x1, 0x1, + 0x0, + 0x0, + 0x0, + -0x1, + 0x0, -0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, + -0x1, + 0x0, + 0x0, + -0x1, + -0x1, 0x1, -0x1, -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x1, ] .span(), array![ - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x0, - 0x0, 0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x0, - 0x1, 0x1, + -0x1, + -0x1, 0x0, 0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, 0x1, 0x1, - 0x1, 0x0, 0x1, - -0x1, - -0x1, - 0x0, 0x0, 0x1, 0x1, - -0x1, - -0x1, - 0x0, - -0x1, 0x1, 0x0, - 0x1, - -0x1, 0x0, - -0x1, - 0x1, + 0x0, + 0x0, 0x0, -0x1, 0x0, + 0x1, 0x0, 0x1, 0x1, 0x0, - -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, -0x1, + -0x1, 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, + 0x1, + 0x1, 0x1, 0x0, + 0x0, -0x1, -0x1, 0x1, 0x1, -0x1, 0x0, - 0x0, + 0x1, -0x1, 0x0, - -0x1, 0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x1, ] .span() ), ( array![ - 0x1, 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x0, 0x0, -0x1, 0x1, + 0x1, -0x1, + 0x1, + 0x0, 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x1, 0x1, - 0x0, -0x1, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, - 0x0, + 0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, -0x1, -0x1, 0x0, - -0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, 0x0, + 0x1, -0x1, 0x0, - 0x0, - 0x0, + -0x1, -0x1, 0x0, 0x0, -0x1, 0x1, -0x1, + -0x1, + -0x1, 0x1, 0x1, -0x1, + 0x0, -0x1, 0x0, + 0x0, + 0x1, + 0x0, 0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, - -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, - -0x1, 0x1, 0x1, - 0x0, -0x1, -0x1, -0x1, - 0x1, + -0x1, 0x0, -0x1, 0x1, - 0x1, + -0x1, + -0x1, ] .span(), array![ - -0x1, - -0x1, - 0x1, - -0x1, - -0x1, - 0x1, 0x1, - -0x1, 0x0, - -0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, -0x1, + 0x0, + -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, - 0x1, -0x1, 0x1, -0x1, + -0x1, 0x1, 0x0, + 0x1, 0x0, - -0x1, 0x1, 0x0, -0x1, - 0x1, - 0x1, + -0x1, + 0x0, -0x1, 0x1, + -0x1, 0x0, 0x1, + -0x1, 0x1, + -0x1, + 0x0, 0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, 0x1, 0x0, -0x1, -0x1, -0x1, + -0x1, 0x1, + 0x0, + -0x1, 0x1, - 0x1, 0x0, 0x0, + 0x0, + 0x1, -0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, - -0x1, + 0x0, 0x1, 0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, - -0x1, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, - 0x0, 0x1, 0x0, -0x1, - 0x0, - -0x1, ] .span() ), ( array![ + -0x1, -0x1, 0x1, + -0x1, 0x0, - 0x1, 0x0, - -0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x1, + 0x0, 0x0, + 0x1, -0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, - 0x0, 0x0, + -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x0, -0x1, 0x1, 0x0, 0x0, - 0x0, + -0x1, + 0x1, + -0x1, -0x1, 0x0, -0x1, @@ -10056,94 +10017,102 @@ mod msm_tests { 0x1, 0x1, -0x1, + 0x1, + 0x1, + -0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, -0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, - 0x0, - 0x0, + -0x1, 0x1, 0x1, 0x0, 0x0, 0x1, + -0x1, + 0x0, 0x0, + 0x1, + 0x1, 0x0, 0x1, + 0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, -0x1, + ] + .span(), + array![ + 0x1, -0x1, -0x1, + 0x0, -0x1, 0x1, - -0x1, 0x0, - 0x1, -0x1, - ] - .span(), - array![ 0x0, 0x1, 0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x0, -0x1, - 0x1, - 0x1, 0x0, + -0x1, 0x0, -0x1, 0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, - 0x0, -0x1, 0x1, - 0x0, 0x1, - -0x1, - 0x0, 0x0, 0x0, -0x1, - 0x1, - -0x1, - 0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, + 0x1, + 0x1, + -0x1, 0x0, -0x1, 0x1, - -0x1, 0x1, - 0x0, -0x1, 0x0, 0x1, - -0x1, 0x0, -0x1, - 0x0, -0x1, + 0x1, 0x0, 0x0, 0x1, @@ -10151,22 +10120,20 @@ mod msm_tests { -0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, - 0x1, 0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x0, -0x1, -0x1, -0x1, + 0x0, + -0x1, + 0x0, + 0x0, 0x1, - 0x1, + 0x0, + 0x0, + -0x1, ] .span() ), @@ -10176,99 +10143,99 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x26c5c3097c71d5a3916dc04f, - limb1: 0x6ebc897084843bab53fd578, - limb2: 0x1fd0d7fec21faadb, + limb0: 0x8f05500c39e2d37ecc07b71e, + limb1: 0x8d850a0c38fddc660054336d, + limb2: 0xc9e75efe951f2d9, limb3: 0x0 }, y: u384 { - limb0: 0x3be4bb43ad436aef9a8d0b1a, - limb1: 0x5310823c75cd947526a57dc7, - limb2: 0x28df14c0b5588146, + limb0: 0xbf1877312db834422ebe4915, + limb1: 0x82a5de672cba449ce42fe769, + limb2: 0x76aafe7401e13c8, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xc30bbf5f7c34cfb10c051193, - limb1: 0x784630c3a105843a4c1925ea, - limb2: 0x23757b7aa06ba17a, + limb0: 0x5269dcb11ab5ebf5bf64b916, + limb1: 0xe6247166ca697aac810378d9, + limb2: 0x1591fc9abfb0494a, limb3: 0x0 }, y: u384 { - limb0: 0x228ab6e8111d2d12cf4de265, - limb1: 0x97c779661523b7808605e6a8, - limb2: 0x28d3636984dc8ff4, + limb0: 0x82fb0e0836a422743f7d8f6c, + limb1: 0xa777149add21d767357a4190, + limb2: 0xc362e409aab3c05, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x54ddba993da27a0893f1a703, - limb1: 0x4066c0e0b93aee625c9aa77d, - limb2: 0x154724245ceec55f, + limb0: 0xa610540d7546716653f432b8, + limb1: 0x3e2ccfdaf921cda53a7b79e8, + limb2: 0xf9f97b0b66e753f, limb3: 0x0 }, y: u384 { - limb0: 0x377645cca24901bad9b960e0, - limb1: 0x6542a8dc6545c4f2df07b546, - limb2: 0x61f7b133e1d068d, + limb0: 0xe975b08e64a0a3224e8cfa03, + limb1: 0xdbb4e5817999ce09eabcfdbd, + limb2: 0xadf9cd7c28b42a4, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x920cc42fc926bd9809205db6, - limb1: 0x2e82225a180a62d675d74cc4, - limb2: 0x260b35819a9250a2, + limb0: 0xd721aab39c4f20471bb8f8ae, + limb1: 0xd084156bf15d1cf406d32dce, + limb2: 0x1443f620ae3ff243, limb3: 0x0 }, u384 { - limb0: 0x48387f84a67a977bc0c88a54, - limb1: 0x4e5109390a8a90aa4f54a39a, - limb2: 0x59a525a9510ba32, + limb0: 0x22ec4f236c721979fe089da3, + limb1: 0x5c23a8519a77f8e9e474535e, + limb2: 0x29971f6ddedc4fc2, limb3: 0x0 }, u384 { - limb0: 0x5c99d0b9c72a82f6f0593c26, - limb1: 0xd3eb495acff556c0af1e0b76, - limb2: 0x26b3ea51927416a3, + limb0: 0xba6a5567eef865928bbdcbb9, + limb1: 0x3b4ae01c8292958448dc5567, + limb2: 0x22e4760ddea744c4, limb3: 0x0 }, u384 { - limb0: 0x28c28564f40543cff95f407a, - limb1: 0xc024ace875f52a628bc8cc02, - limb2: 0xee90d8dd2ef5f8f, + limb0: 0xf48ff206ad073483229ad122, + limb1: 0x7e436ff73b67767896a0fccd, + limb2: 0xc08884182734d14, limb3: 0x0 }, u384 { - limb0: 0x55db8ce52b334833df5e78f4, - limb1: 0x2d23e4237b301a89c605f314, - limb2: 0x1571faebc8a393cf, + limb0: 0x2900952c6920b9c8250decee, + limb1: 0x7eb945282edb33f1b3468b97, + limb2: 0x2bcde51f11214674, limb3: 0x0 }, u384 { - limb0: 0x7b12cd24445bf612e9b847c2, - limb1: 0xbd5792edbda2cb1b4d6f3adb, - limb2: 0x1e2ae835cb10b8cb, + limb0: 0xc06515632a25ecc3723210b7, + limb1: 0x2c34ccf2a572e95248eaaa14, + limb2: 0x2739e0bce0f7c523, limb3: 0x0 }, u384 { - limb0: 0xf19ce2a94d6da9b6d268d00f, - limb1: 0xe1c51a7e50549a5a3c9b2b8f, - limb2: 0x154e849f22633455, + limb0: 0x15a6cc601d661545b84123cb, + limb1: 0x6caae56c0c1b9ccb497b4882, + limb2: 0x2aeb754cd7fac607, limb3: 0x0 }, u384 { - limb0: 0x6df73585f62770c67f53b649, - limb1: 0xbb8ecded47a688a76da4d42f, - limb2: 0xa3cdd222901e6f5, + limb0: 0xb034de23fdbc2d7d0fd176f0, + limb1: 0x980ab61b4c279cbf3da49abd, + limb2: 0x258f96f20cf782b6, limb3: 0x0 }, u384 { - limb0: 0x3c38fe0e7c0d4a35b0596ee7, - limb1: 0xdc2822db40c0ac2e09b520cd, + limb0: 0x14575d042273f4f56b2a62f8, + limb1: 0xdc2822db40c0ac2eb7980871, limb2: 0x183227397098d014, limb3: 0x0 } @@ -10276,57 +10243,57 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xd60e63b3c4ac46c0cb02fc9b, - limb1: 0xb139ed2c7e249a56d1b9940, - limb2: 0x268ec898d0ae638d, + limb0: 0xde385aa58cd6aaf28d2a9a34, + limb1: 0xd1d0095fdd30e27a8ad45e5b, + limb2: 0x4d04a555a9dd265, limb3: 0x0 }, u384 { - limb0: 0xcd09834664f92e4aa99a05e4, - limb1: 0xadcdf87c0661db42e0b3e051, - limb2: 0x18f5545fa29e186, + limb0: 0xda292d6e214034ca7e1efa89, + limb1: 0xb4d9ce5b7cf50c92131b6008, + limb2: 0x220cfddc24ca644d, limb3: 0x0 }, u384 { - limb0: 0x5d43c041fb17e9c208e6a724, - limb1: 0x213d8a8885c23921a014e5a0, - limb2: 0xea0b2edf4e684b8, + limb0: 0xeb2e84255b5d97527c0c3b10, + limb1: 0x20f00151fcdc4abbedd062ff, + limb2: 0x2a411025115151fd, limb3: 0x0 }, u384 { - limb0: 0x2489cfa2e2ce32304c8af21f, - limb1: 0x5ba93ae7bbb1418c4e00a88, - limb2: 0xa51d257d9cfd965, + limb0: 0x66a2956b304b6b962fa4dd25, + limb1: 0xd8c4910f23618ac57d84ac86, + limb2: 0x2d53e72a28480690, limb3: 0x0 }, u384 { - limb0: 0xb7e45c655c700498ec2ea3f1, - limb1: 0x2812a3e85bb19e581c5014de, - limb2: 0x2dfba6c3729bf2b1, + limb0: 0x35ecc24a2f18596a1e13ec33, + limb1: 0x2121d1702e5e7ccd53e3a9f5, + limb2: 0x2a703b36026aedd3, limb3: 0x0 }, u384 { - limb0: 0xa2a34bf84da6ba97ae9f9f7b, - limb1: 0x7cc8080fc603d429f8dbfbb8, - limb2: 0x1ebd9c16a8a1d439, + limb0: 0x2a0676dcde44bbd59c758ff3, + limb1: 0x20135c92c932aa5d1db88e4a, + limb2: 0x3e9325f780d4d7c, limb3: 0x0 }, u384 { - limb0: 0xf0d4f31581a5794ddbf029bf, - limb1: 0xe5c8379596edb0fe95e8aff4, - limb2: 0xa38050d62c5b649, + limb0: 0xef02fb56cb3323f067f204ef, + limb1: 0xd9cc934a145c1483c80d9138, + limb2: 0x15d11c26187eca64, limb3: 0x0 }, u384 { - limb0: 0xd55bb6e0e9a67a7dc7af66fc, - limb1: 0xed1603ad7a06a5cca425b068, - limb2: 0x1cf2996b6a3b8942, + limb0: 0x2293671d405744172b05ae8a, + limb1: 0x59b31bd5c88446a00454b941, + limb2: 0x1b550799768d3cff, limb3: 0x0 }, u384 { - limb0: 0xef1680f5518699d04e37173d, - limb1: 0x7ad1d52a0ff6acb7e5dbf828, - limb2: 0x24c2557108550ebc, + limb0: 0xa7c57383266c375bc1aac99d, + limb1: 0xda8c5b65b1d0781d4b84fa5e, + limb2: 0x25b1e9fbf6ef2197, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10334,138 +10301,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x4e515bd6c79db14d1343b18d, - limb1: 0x942832f5830927f4b9155a63, - limb2: 0x1c16f4384ce783fc, + limb0: 0xc02b653dfe2d32b7ebbe0be2, + limb1: 0x83c21c51876c86bc2148aeed, + limb2: 0xa375e6f8ca918de, limb3: 0x0 }, u384 { - limb0: 0xc4b56eb9e314a6a60627b23a, - limb1: 0x12c72b2b13f5f5531f17dff8, - limb2: 0x2d89dcac08515ce4, + limb0: 0x66324617a9148a99890b115e, + limb1: 0x7bc545011a88e00ece179a28, + limb2: 0x26dae488bed78fc2, limb3: 0x0 }, u384 { - limb0: 0xbfa9de4d5e7d203bc817c454, - limb1: 0x9a87d8a8ebf1d64dac136522, - limb2: 0x1d0ca0b60e60c78b, + limb0: 0xe3f87e7d239dfafd378ee036, + limb1: 0xda11b6a8a7f6797f7d6ea282, + limb2: 0x210ef10bac06897e, limb3: 0x0 }, u384 { - limb0: 0xd58ca0ab58ced57cd51b7f2d, - limb1: 0x4e8575ddaae12167e4616c42, - limb2: 0x29374e08ee22e0d6, + limb0: 0x1b7c5033ac23c06c512bacef, + limb1: 0xed5f6a8f7918ae8b2ddc267e, + limb2: 0x2225a6af20e957af, limb3: 0x0 }, u384 { - limb0: 0x5e1d67dce77514732853947, - limb1: 0xd44b1227af00cceda0f2cd5, - limb2: 0x19a2c5cee78f5599, + limb0: 0x21b6e8026babc6c4404b524, + limb1: 0xdd893b833bbfa939b9175b5e, + limb2: 0x2e78740ef3bd1d64, limb3: 0x0 }, u384 { - limb0: 0x7ee87d2236a400936441833e, - limb1: 0xf1b0188891cb49876e681c21, - limb2: 0x27b8a5b65b7e9508, + limb0: 0x87fb100da82fe4033ed0c0a1, + limb1: 0x5f1ec380e13eeb659e8cfec1, + limb2: 0x549236fdc58655b, limb3: 0x0 }, u384 { - limb0: 0x6ac242799f76c80842c89dbe, - limb1: 0x8a251ef4737d3259a6ae749c, - limb2: 0xb216c82f0468254, + limb0: 0x3bc8b11c95e64826c5b6de66, + limb1: 0x1f7c424715e0310e99b28e1c, + limb2: 0x18da712c801ccea5, limb3: 0x0 }, u384 { - limb0: 0x3dfb560212b90e42edab2385, - limb1: 0x73391c1866cb0aba7b51286a, - limb2: 0x12570697be445e72, + limb0: 0xa4209012b86e70362d607a32, + limb1: 0xd89c7bd8c7e4d4bc21529057, + limb2: 0x43d48e57c97afa4, limb3: 0x0 }, u384 { - limb0: 0x37562bb61cfa501166cada2f, - limb1: 0x4cf17e4aa40219ae769e6f0, - limb2: 0x2cf07e562237aec8, + limb0: 0x4dd085cce30bef7564c44b4c, + limb1: 0xd3d1efc3513ee073b669fbc4, + limb2: 0x2f59c7e9b4e3c9d0, limb3: 0x0 }, u384 { - limb0: 0xf618646f377905f90f6b0277, - limb1: 0x4ebaef60067c89f3979d844c, - limb2: 0x296f3f15868f419a, + limb0: 0x296c5d1215c45d65279bf137, + limb1: 0x479e7c64e59d1cfd7dad75e2, + limb2: 0x274148be5618390e, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xb1479600d5c3bc14b00efb43, - limb1: 0xb09a510b54a42c35184ff69f, - limb2: 0x12e3bce4afa7ea53, + limb0: 0x9aa90ff0a68400d7a77fce9c, + limb1: 0x75701c1f9792a76fa07d1b13, + limb2: 0xe70df000fd97731, limb3: 0x0 }, u384 { - limb0: 0x671c89d32eeb8adffcce11ac, - limb1: 0x969e974132591c8a21ba0f5, - limb2: 0x4adffd1ee7da494, + limb0: 0xbd97f32feb7f8631c962f50d, + limb1: 0xadecdfa573dc74fb0a4f4af7, + limb2: 0x55e5caeabfbec95, limb3: 0x0 }, u384 { - limb0: 0x17cb40c5f147bd461ab3f56c, - limb1: 0x63b89f999146ab64e03eb0e1, - limb2: 0x2be218c9deb38e28, + limb0: 0xf0a7f75599d7adc9c32ab6a2, + limb1: 0xf22f7888f3922f789a6e53dc, + limb2: 0x1dfa93897190b5a3, limb3: 0x0 }, u384 { - limb0: 0xdb3a080f30f6513ad826d5b1, - limb1: 0x63f31427b9922d92243a4e47, - limb2: 0x151ff12d7cec4f92, + limb0: 0x413c85cca577d5876b1f3715, + limb1: 0xeb7d31204452d20fd45f8ecc, + limb2: 0x2c0362ee1112a5c4, limb3: 0x0 }, u384 { - limb0: 0x23d3035c020823e7bd2bf729, - limb1: 0xb56558c81674059006a149cb, - limb2: 0x2ab9acaa8f9a7946, + limb0: 0x429a14a4fa279cc44ee3c74d, + limb1: 0xef4e7188838c79e148421e34, + limb2: 0x1030c42588764d49, limb3: 0x0 }, u384 { - limb0: 0x744a0f106bcb015b63cb8b07, - limb1: 0x26f5174ad4cb04e45ba603a7, - limb2: 0xa10ea4c2c68c111, + limb0: 0xd01e2eba0b3ebc78efeda2, + limb1: 0xc8d9d153d6f2f175af78a34d, + limb2: 0x59858d098479a47, limb3: 0x0 }, u384 { - limb0: 0xf708a8e367be9e19e05b6f5c, - limb1: 0xb7133a6f40842714869a1a66, - limb2: 0x28f9e1800220fc42, + limb0: 0x62c7f25519a3bf39b680f164, + limb1: 0xf589bf805d731795a6aa8b0e, + limb2: 0xdfe9eb6af61256b, limb3: 0x0 }, u384 { - limb0: 0x6713ebeda1225be49242de57, - limb1: 0x7eb42383c6c2df02d9be50f6, - limb2: 0x240ad61feeeb4e26, + limb0: 0xccc3628777dd0d81ee2afd43, + limb1: 0xbd9a998484e89ff231df0095, + limb2: 0x1ba6b51ca3af647d, limb3: 0x0 }, u384 { - limb0: 0x9f0339bdc9f96fdae84aeaa4, - limb1: 0x7c9cfc20f2e529967b6d0f10, - limb2: 0x2c3bff83ff3dc01b, + limb0: 0x50733c4bd94849bb307bf23c, + limb1: 0x3f17e356dba161f9d144a843, + limb2: 0x1436536d9a7771f0, limb3: 0x0 }, u384 { - limb0: 0xf0d4f31581a5794ddbf029c2, - limb1: 0xe5c8379596edb0fe95e8aff4, - limb2: 0xa38050d62c5b649, + limb0: 0xef02fb56cb3323f067f204f2, + limb1: 0xd9cc934a145c1483c80d9138, + limb2: 0x15d11c26187eca64, limb3: 0x0 }, u384 { - limb0: 0xd55bb6e0e9a67a7dc7af66fc, - limb1: 0xed1603ad7a06a5cca425b068, - limb2: 0x1cf2996b6a3b8942, + limb0: 0x2293671d405744172b05ae8a, + limb1: 0x59b31bd5c88446a00454b941, + limb2: 0x1b550799768d3cff, limb3: 0x0 }, u384 { - limb0: 0xef1680f5518699d04e37173d, - limb1: 0x7ad1d52a0ff6acb7e5dbf828, - limb2: 0x24c2557108550ebc, + limb0: 0xa7c57383266c375bc1aac99d, + limb1: 0xda8c5b65b1d0781d4b84fa5e, + limb2: 0x25b1e9fbf6ef2197, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10475,114 +10442,114 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xf598412b2366e5da3f7fb3c9, - limb1: 0x9e1b2e22dc35dcacad3c4db5, - limb2: 0xaf50290c503c50c, + limb0: 0x3bd93e1796b564949b6cc1bf, + limb1: 0x11d315f6e26cd64fc0273da0, + limb2: 0x8689632899dee75, limb3: 0x0 }, u384 { - limb0: 0x5e8f2623de8a74b239df851f, - limb1: 0x2b745c0da1d51e53a4beac6, - limb2: 0x1d3c446a06e5e1c1, + limb0: 0x5ba6436d71a51eb8a04f598c, + limb1: 0x57a6c188714ffa4ebfab9873, + limb2: 0x1ee4bece88f712f7, limb3: 0x0 }, u384 { - limb0: 0x2106a6caca38b098cd1931b2, - limb1: 0x90a67630d975059d17f20493, - limb2: 0x1573a5197dbfdec3, + limb0: 0x48e33311a09310e2e57acf94, + limb1: 0xe304023e51d4c780b75fae5e, + limb2: 0xd91a6d907f323f3, limb3: 0x0 }, u384 { - limb0: 0xbd437897225414e8abdef25f, - limb1: 0xe3a43cf7b26d27f4d1a92edf, - limb2: 0x1e936a2baf6708ae, + limb0: 0x9b5983e7ddfbc12630336f56, + limb1: 0xb7e378b9b33bad3b872c9121, + limb2: 0x1ce667090d579aa5, limb3: 0x0 }, u384 { - limb0: 0x4e2a885fa19bd981f66b94b2, - limb1: 0xf0da2b2797963f6b8f5052f6, - limb2: 0x159d3ef7437b9768, + limb0: 0x3aab79937bbf176e328ad574, + limb1: 0xfba6543807892ea556ee25ac, + limb2: 0x9c16aa9f347de17, limb3: 0x0 }, u384 { - limb0: 0xd708447781ed818b8e0a147a, - limb1: 0x74dac918ff7e226c2a7e1116, - limb2: 0x1af486a17f67e69c, + limb0: 0x665e5231ea87683b62f56be2, + limb1: 0xe89307899223042600e3af81, + limb2: 0x26dd8213c881bb80, limb3: 0x0 }, u384 { - limb0: 0x3f969231ffa69d4c0ba5cc70, - limb1: 0x2311fa8cb31a30d9a53b6195, - limb2: 0x23ec1b9debf67b4d, + limb0: 0x6db1d175bc1e3ddb955366d4, + limb1: 0xd0af5cfead2bb01f9920ba36, + limb2: 0x2043958c439ba3b9, limb3: 0x0 }, u384 { - limb0: 0xd39ae5a3fd48d23d839f120d, - limb1: 0xbb9e087f14353385db4ab415, - limb2: 0xdf8951fe5045d5b, + limb0: 0x46aa31c6db6a822f12312b91, + limb1: 0xb2eba5bdec9a010b52f76828, + limb2: 0x20cc97a2e26f6734, limb3: 0x0 }, u384 { - limb0: 0x9f8733be2145f979fdcb778f, - limb1: 0xb85045b68181585d5060380a, - limb2: 0x30644e72e131a029, + limb0: 0x189038d82952323468dc35e, + limb1: 0xdc2822db40c0ac2e8083479a, + limb2: 0x183227397098d014, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xd10e8e087af43b460413c7bf, - limb1: 0xbdcbebf8a79ea28666ff9c1d, - limb2: 0x19d3d23bf08b67e9, + limb0: 0x68aa1fe56d3f6d5a7889d807, + limb1: 0x901001e886a84cc3c6c1f44b, + limb2: 0xb0a230bc61fff88, limb3: 0x0 }, u384 { - limb0: 0xa27cc5f8dd2ac5185e3f5382, - limb1: 0xc51d5becb404cc509fb250d8, - limb2: 0x1882abe9614e9d34, + limb0: 0x40de08361d0266b3ccd65c3c, + limb1: 0x6a33af6701ee0452377a5d19, + limb2: 0x700966eef87a9ab, limb3: 0x0 }, u384 { - limb0: 0x9a91fcfdee7a2988173f1e70, - limb1: 0xe98059a38257e091b93d6806, - limb2: 0x9f63aa90e7601f7, + limb0: 0x11946a094820e51781538084, + limb1: 0xe6bc96685c45f04494e5d5af, + limb2: 0xa716a07b1fa4edf, limb3: 0x0 }, u384 { - limb0: 0x5d11c971ca489041810e912e, - limb1: 0x240b3cd4a16484c7f673d2bb, - limb2: 0x1f29867c05fcdd80, + limb0: 0x40a308018583691ea77f2b8e, + limb1: 0x33fd2c6a6a8e11ef6ef22306, + limb2: 0x72a8b46e8a4839c, limb3: 0x0 }, u384 { - limb0: 0x96113c9aa4dd36007db38068, - limb1: 0xaa7498a6379e9cb0a3b6bc36, - limb2: 0x20196d136c1dc68a, + limb0: 0xd836513a73b8bda119b8ceaa, + limb1: 0xee8ae23e29042a75040cd3d7, + limb2: 0x2c35b24e42a3289, limb3: 0x0 }, u384 { - limb0: 0x3681a21fd1027d7968844639, - limb1: 0x9a1eaac48f62c435330627b3, - limb2: 0x1e7da28364f6ab9b, + limb0: 0x65c7067cc22238cbfb0ff34c, + limb1: 0xeed75e7ecba7393476b37da9, + limb2: 0x10ef0cc4428389c9, limb3: 0x0 }, u384 { - limb0: 0x9631a5ac4441143f07f9dd73, - limb1: 0x746c8cd0e759e4a1cd876ce, - limb2: 0x2dd87d51f81d9482, + limb0: 0xc212dca2b43afeb63499933b, + limb1: 0xa061be2a331e7bb975599f1c, + limb2: 0x2ad607dfb8f0424, limb3: 0x0 }, u384 { - limb0: 0xa3dd224b6dc55192408986d6, - limb1: 0x303b256025752d253c974c4e, - limb2: 0x878fb30932ea1b7, + limb0: 0x7c4c911822e1452c10933c61, + limb1: 0xe3ba22a0fba729cfd1999e5e, + limb2: 0x11af08ae858e8806, limb3: 0x0 }, u384 { - limb0: 0x52d0849f51c39fc2d39fc5f9, - limb1: 0x9776cfd77396c384f02a7b6, - limb2: 0x211db1f52a09181d, + limb0: 0xe460e6de45991ee4ce4dc7a5, + limb1: 0x81ecf40b2064d9d6cad5b4f2, + limb2: 0x1cbe63512090cb26, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10590,138 +10557,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xec2eed81cda2f887bd5a81ee, - limb1: 0x87573dbb7dbd816dc4d32a17, - limb2: 0x2b88a7f562e6e73e, + limb0: 0xa57032ea651aea76093ff1b8, + limb1: 0x4ff73110a206ee54ff8ded9a, + limb2: 0x1c663214ccc785f7, limb3: 0x0 }, u384 { - limb0: 0xe736a94bb1f64222b3531be6, - limb1: 0x3cbce0965da4a654eff5d5c2, - limb2: 0x101d720bd705af2b, + limb0: 0x901e2c94b93c2ccc2564f50, + limb1: 0xc3700f619670355f8a8d6b94, + limb2: 0x1315167869506ced, limb3: 0x0 }, u384 { - limb0: 0x95b5edbb2a85bf431bb0f6aa, - limb1: 0xb8ba899d2451ee6422a14e99, - limb2: 0xc5287953a17b816, + limb0: 0xab8a0f1e3398829ace105594, + limb1: 0x277e32b635df8992d70e57a2, + limb2: 0xf1d8851839ca25f, limb3: 0x0 }, u384 { - limb0: 0x4abea9309bcb21285eb700a5, - limb1: 0xe0174b2412c01c3dfe06e6af, - limb2: 0x1794f108512e836a, + limb0: 0xf7bd3e9d46d4f5e67757c0d6, + limb1: 0x2d446b403146842807f27c07, + limb2: 0x1f9b13ca932c23df, limb3: 0x0 }, u384 { - limb0: 0x610b2d751d42d9bef0bd7684, - limb1: 0x7189efe55c51577a5ca3803e, - limb2: 0x275bc781c7c5b83a, + limb0: 0xa6967fb3875f238cb0c7085f, + limb1: 0xf6386a0082f1ab85d5b9b9b8, + limb2: 0x20a78c7952defdb1, limb3: 0x0 }, u384 { - limb0: 0xed7097ad960ca48f5339bce6, - limb1: 0x3e10ea6dffaebae6f79a477c, - limb2: 0xe3523ab9fed6eb0, + limb0: 0xf409dbb7e1e4149f13c2e44, + limb1: 0x378807a01269957e6dfe0364, + limb2: 0x28a6b21ae11de58e, limb3: 0x0 }, u384 { - limb0: 0x89f464088d29203f081af7d8, - limb1: 0x5d933716925d37539f0ccd83, - limb2: 0xa54f8c5b1565f2a, + limb0: 0x2fd85f227f1a7aadae7d318e, + limb1: 0xc6c402ca87485465cd185b15, + limb2: 0x9179179b3d3749a, limb3: 0x0 }, u384 { - limb0: 0x3c37df10fae1cc75d058bb8, - limb1: 0x76d40343658cdf8a5b0e5d5e, - limb2: 0x191bacfaefb9e424, + limb0: 0xd00eaf168886c0ac9222c249, + limb1: 0xfc3f3b1dc4c1ce8b62fa819a, + limb2: 0x95e3c997ff0f824, limb3: 0x0 }, u384 { - limb0: 0x5101843d7f6a0199a9a7722, - limb1: 0xc200cd2c9dcd3567d59b2f20, - limb2: 0x298b6e5a0288f726, + limb0: 0xf0fad767fb46b1804573f6df, + limb1: 0x7e7a1a97ae9c2bbcebe7936b, + limb2: 0x18bd8e0183dc766b, limb3: 0x0 }, u384 { - limb0: 0xc92637dad4309d351dd1e854, - limb1: 0x531a4a2be09115ed65556b41, - limb2: 0x2ebceebf7df86dab, + limb0: 0x5f2ea7ae5a1ef45ead7e7d98, + limb1: 0xdba41d5785f56d210bc4d1ff, + limb2: 0x1926ec7e44daa425, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xab9df8c34bc25bb33be59f6, - limb1: 0x81137e33755a8f359d7d69c8, - limb2: 0x1d172840f0709793, + limb0: 0x39fe5fb047be480f699d8815, + limb1: 0xb03005b993f8e64b5445dce2, + limb2: 0x211e6923525ffe99, limb3: 0x0 }, u384 { - limb0: 0x7f04875d5b5fc3324240fd3f, - limb1: 0x9707ce0f9a8d0c94479587f8, - limb2: 0x1923b54942ba3774, + limb0: 0xc29a18a25707341b668314b4, + limb1: 0x3e9b0e3505ca0cf6a66f174b, + limb2: 0x1501c34cce96fd02, limb3: 0x0 }, u384 { - limb0: 0xcfb5f6f9cb6e7c9845bd5b50, - limb1: 0xbc810cea8707a1b52bb83813, - limb2: 0x1de2affb2b6205e7, + limb0: 0x34bd3e1bd862af4683fa818c, + limb1: 0xb435c33914d1d0cdbeb1810d, + limb2: 0x1f543e1715eeec9f, limb3: 0x0 }, u384 { - limb0: 0x17605543618cd3dcd64580bb, - limb1: 0xb94d170988c980231b583f2d, - limb2: 0x1687c8ca401ec016, + limb0: 0x2a9337e9fdc9a8b66f075ab1, + limb1: 0x2c078727c652829213985d5e, + limb2: 0x2089c4e0800d8a5d, limb3: 0x0 }, u384 { - limb0: 0x93cce6ae53814eec265fda2c, - limb1: 0x53da9a7257ddf1a75bd3b059, - limb2: 0x1806563de344b081, + limb0: 0xc980fbe5782c9f971a00c83a, + limb1: 0x35d456217cfa83b143a0d8a0, + limb2: 0xf4aa7dd9c064149, limb3: 0x0 }, u384 { - limb0: 0x6d334e42e94089c69fd1f68d, - limb1: 0x473bce842d7d7c76234d09fd, - limb2: 0x4a6854d7af6c477, + limb0: 0xda77b2f2526703649a065d21, + limb1: 0xfaf26c2e3dba4384617ee419, + limb2: 0xcda41e198534c13, limb3: 0x0 }, u384 { - limb0: 0xe6515acee2aa28ba0f8531b2, - limb1: 0x10eec6184841568d8678f772, - limb2: 0x178613194ac0ba89, + limb0: 0x86db9de9a2346541454be53f, + limb1: 0x152266e903e9851bceff005c, + limb2: 0xf32acc0db51900a, limb3: 0x0 }, u384 { - limb0: 0x1936d8efb20c9ea066d317a3, - limb1: 0x82d5c310267ccbc2c1fb3691, - limb2: 0x920103244780b86, + limb0: 0xe4aa39f5a03c010e72f58686, + limb1: 0xe169046a9a784f86e1584461, + limb2: 0x76c26bd93a42a74, limb3: 0x0 }, u384 { - limb0: 0x5e0f9ae34e0c449432699d96, - limb1: 0x45e4664ff20c5822f10b49b3, - limb2: 0x210e1b7d20aeb39f, + limb0: 0x420625fd1aac7d4cb4ff4fad, + limb1: 0x3fdaf3329d315fda831c75f, + limb2: 0x66199d1e1d2aaea, limb3: 0x0 }, u384 { - limb0: 0x9631a5ac4441143f07f9dd76, - limb1: 0x746c8cd0e759e4a1cd876ce, - limb2: 0x2dd87d51f81d9482, + limb0: 0xc212dca2b43afeb63499933e, + limb1: 0xa061be2a331e7bb975599f1c, + limb2: 0x2ad607dfb8f0424, limb3: 0x0 }, u384 { - limb0: 0xa3dd224b6dc55192408986d6, - limb1: 0x303b256025752d253c974c4e, - limb2: 0x878fb30932ea1b7, + limb0: 0x7c4c911822e1452c10933c61, + limb1: 0xe3ba22a0fba729cfd1999e5e, + limb2: 0x11af08ae858e8806, limb3: 0x0 }, u384 { - limb0: 0x52d0849f51c39fc2d39fc5f9, - limb1: 0x9776cfd77396c384f02a7b6, - limb2: 0x211db1f52a09181d, + limb0: 0xe460e6de45991ee4ce4dc7a5, + limb1: 0x81ecf40b2064d9d6cad5b4f2, + limb2: 0x1cbe63512090cb26, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10731,9 +10698,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x1412d226ccad912bf81c331b, - limb1: 0xbca8b2c4809b43b1f14e466b, - limb2: 0x1df2ab3fe08a053c, + limb0: 0x599c4a434dd30cf3c4adf62f, + limb1: 0xaf2c6e16638fc30389785d98, + limb2: 0x23a8069ea239697f, limb3: 0x0 }, u384 { @@ -10746,15 +10713,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xea744c205d18ba1a29fab339, - limb1: 0x64ecc7e6385171c26138699e, - limb2: 0x1d711d1ee8dd8e6a, + limb0: 0xf8fd8c78735bc69e6e9903c, + limb1: 0xfa6fd1d16be69a25274c8834, + limb2: 0x2fc692281903d557, limb3: 0x0 }, u384 { - limb0: 0xb8fa1b21be69ce74110341f8, - limb1: 0xb7f399c8a8c23e1e864f07ba, - limb2: 0x280bfd46c508d979, + limb0: 0x6ff799ceac242ebac5241179, + limb1: 0x93ff0474bdf6100bdc0277cf, + limb2: 0xb32ba276b12e19f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10762,49 +10729,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x4e7aa6410df32d323a99c48, - limb1: 0xc1461d205892428961e24c94, - limb2: 0x15a48bbf585c25af, + limb0: 0xe90569a30f35e6fbc17253c9, + limb1: 0x632cc4d75aedebe16c4bc0cf, + limb2: 0xebc54148c81af02, limb3: 0x0 }, u384 { - limb0: 0xe4a0fc2f39c1a36cb1a8bbb9, - limb1: 0xa190060cfa0478fb679049db, - limb2: 0xf700745c811f2bd, + limb0: 0xcff1b9070ebc728a5739d245, + limb1: 0xed8c5a492d0a15a72c5bfb64, + limb2: 0x2ad837d12740a7a0, limb3: 0x0 }, u384 { - limb0: 0x60b7b7d6e5a00217ab4e270a, - limb1: 0xb48fcbaf01037baa6beba245, - limb2: 0x1fd0e76bc08501ba, + limb0: 0x983aa5cd372641fdf0096eab, + limb1: 0x18725ddcabced55dcbfde4c5, + limb2: 0xd3ebc94e3111151, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x56eb19d3db29a237a5731c64, - limb1: 0x767611fc2772fce98c27d24b, - limb2: 0x27ef08e9d9670b15, + limb0: 0x5dcbf53c1d601d1003c2b626, + limb1: 0x7eaeea0740b11db446e2c379, + limb2: 0x2e8b199288a83fb4, limb3: 0x0 }, u384 { - limb0: 0x5a0abc4ac2fc532e820fcb5a, - limb1: 0xb73a41ecf74409a063ea420d, - limb2: 0x175b5aee8cb74c19, + limb0: 0x4fe6cd6c046c8c304f6c346b, + limb1: 0xbbfd0d5e39e230239407676e, + limb2: 0x21982e764138a4de, limb3: 0x0 }, u384 { limb0: 0x3, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xea744c205d18ba1a29fab339, - limb1: 0x64ecc7e6385171c26138699e, - limb2: 0x1d711d1ee8dd8e6a, + limb0: 0xf8fd8c78735bc69e6e9903c, + limb1: 0xfa6fd1d16be69a25274c8834, + limb2: 0x2fc692281903d557, limb3: 0x0 }, u384 { - limb0: 0xb8fa1b21be69ce74110341f8, - limb1: 0xb7f399c8a8c23e1e864f07ba, - limb2: 0x280bfd46c508d979, + limb0: 0x6ff799ceac242ebac5241179, + limb1: 0x93ff0474bdf6100bdc0277cf, + limb2: 0xb32ba276b12e19f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -10814,46 +10781,22 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x930db19f912611ab3fc8a135, - limb1: 0xd24726d69848f54836509906, - limb2: 0x56637437a484ca8, + limb0: 0x2071e50f455a55e20eadab80, + limb1: 0x1e5f852423bebf594372ea6, + limb2: 0x17024830c17decd, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0x1971ab467340eff20cff0a81, - limb1: 0x8ca2a7a6e0eb36205a1f9cfa, - limb2: 0xf79cf820c1e1406, - limb3: 0x0 - }, - u384 { - limb0: 0xccdd447b28d9d726b92d49e0, - limb1: 0x2a016ce5970b1c02c7dc6ac7, - limb2: 0x7d8e2c11caaf174, - limb3: 0x0 - }, - u384 { - limb0: 0x16b6259669edea03fbf48ac, - limb1: 0xa82f91f99783f2e82fc78fda, - limb2: 0x4c8ac778c4d2635, - limb3: 0x0 - }, - u384 { - limb0: 0xc6cacd3f97f0bcfb9744286a, - limb1: 0xc0821ef2601fcbad9bb59e89, - limb2: 0x10d8a41b07efb98b, + limb0: 0x99b263cc87d89ff29b2c9d0b, + limb1: 0xe6a84ac7a221793e6dcc9526, + limb2: 0x181ca5b75778c138, limb3: 0x0 }, u384 { - limb0: 0xab1bb04b9415a33108e4971b, - limb1: 0x703b2cef2bc5e28c097e5622, - limb2: 0x16f9d639bef7b9eb, - limb3: 0x0 - }, - u384 { - limb0: 0x69c1d23e75ed663b57aa616c, - limb1: 0xa32ee3501c2976e094731774, - limb2: 0x13a6e194b93dc098, + limb0: 0xd89ed7a38170cbf1d34d3da3, + limb1: 0x366cc05c77654c5ea611c729, + limb2: 0x555a28decd9e21b, limb3: 0x0 } ], @@ -10864,15 +10807,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x1013fea194c334d728b6a290, - limb1: 0x5d29e390eff05a4059eadc50, - limb2: 0x148e440e42563038, + limb0: 0x7ea4a8cc6075d334d2b75b13, + limb1: 0x5c79bc44d76ef1467dae55a8, + limb2: 0xd3ae091e1b34d32, limb3: 0x0 }, y: u384 { - limb0: 0x7fe546df1702c6b16252aaad, - limb1: 0x6aa259b18c5e87da50fd7b07, - limb2: 0x2f7f3b23998ec790, + limb0: 0xe425dfc861142be86c311ba3, + limb1: 0x7025affd7058583371a6ccb5, + limb2: 0x1f923beb5e443fed, limb3: 0x0 } } @@ -10885,23 +10828,23 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x7397e7075b3f149cd66c7ce5, - limb1: 0xdfd1850ae799a982943762a4, - limb2: 0x6889ae8a61fcb982e7a3f651, - limb3: 0x957f483c214a50f986efa50 + limb0: 0xdbcd264ccca097c28c7ba4d8, + limb1: 0x5a22add1ce5fa66cea3aeb61, + limb2: 0x9503d0db99dd2c0b1dc3a697, + limb3: 0xadc32aa71dd223542c4e1a3 }, y: u384 { - limb0: 0x1616287ec2e30c29995d07b4, - limb1: 0x3c8560674f2fbc38b1e67c50, - limb2: 0xf1769d59b828957cd12b1c1a, - limb3: 0x181b0a6fef26681711ebab85 + limb0: 0xfe7efebd8e2a74a562a6266e, + limb1: 0x771f7ce3e24333c12ae20e6f, + limb2: 0x25380c3e0a856e53c82f3664, + limb3: 0x160b122148d2270a8bf6b69c } }, ] .span(); let scalars = array![ u256 { - low: 0xc149fa8e7bb8c2f11624d318a32652e8, high: 0x6a4322410078cb124b7350d13421beaf + low: 0x76cf4677f1af6d88518bff98052fc909, high: 0x572ea49d3ee2308157e41a8f8af20197 }, ] .span(); @@ -10909,171 +10852,170 @@ mod msm_tests { array![ ( array![ - 0x0, 0x0, -0x1, 0x1, + -0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, - 0x1, - 0x0, -0x1, - 0x1, -0x1, - 0x1, 0x0, - 0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x1, - -0x1, + 0x0, -0x1, 0x0, - 0x1, - 0x1, + 0x0, + -0x1, + -0x1, 0x0, -0x1, 0x1, 0x0, 0x0, - 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x1, + -0x1, 0x0, 0x0, -0x1, - -0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x1, + 0x0, -0x1, -0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, - 0x1, 0x0, - 0x1, + 0x0, + -0x1, + 0x0, + -0x1, 0x1, 0x0, 0x1, 0x1, + 0x0, 0x1, - -0x1, - -0x1, ] .span(), array![ 0x0, 0x1, -0x1, + 0x0, + 0x0, -0x1, - 0x1, - 0x1, -0x1, - 0x1, 0x0, 0x0, 0x1, -0x1, - 0x1, - -0x1, -0x1, - 0x1, 0x0, + 0x1, 0x0, 0x1, - -0x1, 0x1, -0x1, 0x1, - -0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x1, 0x1, - 0x0, -0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x0, 0x0, - 0x1, 0x0, 0x0, - 0x1, + 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x0, + 0x1, + 0x0, + 0x0, 0x0, 0x1, + 0x1, + -0x1, -0x1, - 0x0, 0x1, -0x1, 0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, - 0x1, 0x0, - 0x1, - 0x1, -0x1, + 0x1, -0x1, 0x1, + 0x1, 0x0, - 0x0, + 0x1, + 0x1, 0x1, ] .span() @@ -11084,124 +11026,121 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x6fcbc7ad5403e65410d10a83, - limb1: 0x1e4e8d2eaad7cadf97680e2b, - limb2: 0xa1a12e7726933e6998d9fbbf, - limb3: 0xec3bf4a662ea8c744c13461 + limb0: 0xafcd9621fea61b64a7586578, + limb1: 0xb465e2710f28fcfbd06e8760, + limb2: 0xcd1c8a70aab97ab88f1622c7, + limb3: 0x6af0f364bf785d972b9fd05 }, y: u384 { - limb0: 0x80ac42c0002a187124550efe, - limb1: 0xd5e41cfd6ea2df00c66cb942, - limb2: 0xc72437a49c62c5f9406b9989, - limb3: 0xeb69d06917d928bbe060db6 + limb0: 0xb4cf2b093a500cfd28ea1d31, + limb1: 0x83549c1947f43526ee4901c3, + limb2: 0xe55cc029d1ffab5ff2203a0e, + limb3: 0x90acee01aa2ee1f74b6b366 } }, Q_high: G1Point { x: u384 { - limb0: 0x485f0407fbbdf07e0dc2ba23, - limb1: 0xb3c05cf067bf2af9125a5d2a, - limb2: 0xbd71734464481a9217b3cf70, - limb3: 0xd8f5244ccaa335520212409 + limb0: 0xe4afc42aa9dc88deb964c82, + limb1: 0xe602568f68caa7398fc02d5, + limb2: 0x9b9bf6b847cc34c430ece34c, + limb3: 0x144915ad1ff0439ab142840 }, y: u384 { - limb0: 0x8d39c296cbcb6eae46a8fad8, - limb1: 0xd2d904f0c28f8552f63a5458, - limb2: 0x9bb9d58d47a29cf83aea3631, - limb3: 0x13a79dda92ddfd94397c0a8c + limb0: 0x77ba64a102bc6df55745d199, + limb1: 0xf276908e292dd8fb73623603, + limb2: 0x25e8bc1c5262d970c5870672, + limb3: 0x148d9a8478678807eeb09c87 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x63eb06845f90b8452780c689, - limb1: 0xdb7f00525de88472f92bdbc4, - limb2: 0xc7e1f430b37dc6b1218ac6ed, - limb3: 0x1576db6b26afcf669d41a8b3 + limb0: 0x1400ff5c299d278e671aaf76, + limb1: 0x8bead9efa9ab52b9965c530f, + limb2: 0xbf5d75a5f15b851b6b63c59a, + limb3: 0x1b901c223a8f8d71e99e709 }, y: u384 { - limb0: 0xb3cd55029145347c6cced107, - limb1: 0x502777714ba1e66ef8592734, - limb2: 0x142a9ded5d74636305d622f1, - limb3: 0xa8e05c0e3ff62aec3a93c39 + limb0: 0xab02943486fe056d9717c558, + limb1: 0xf77d957e89480116ea8c7f7a, + limb2: 0x61570d654219a6a2f33591a0, + limb3: 0x48a968e0efee0e7c126a7fc } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x3d14ca7120b0de45e122e108, - limb1: 0x3c3b5d7a7c56beae9596f418, - limb2: 0x27db2ac84c97b850991734d, - limb3: 0x120c3c29c9e3764e2ca37d99 + limb0: 0xbfffaee3263b841eaf19541f, + limb1: 0x2167e87897034c142bcb8e39, + limb2: 0xb6c1050e4e352e1c01c4ba43, + limb3: 0x1195ebc137cbbb7a48cf9a1e }, u384 { - limb0: 0x820aa39f2f938de436fa3410, - limb1: 0xb39869507b587b119193791c, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0x148f93c01e18f2a47d63a1aa, limb1: 0x3b92dd1e, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xb2d0135f16eb02a9f27abb7, - limb1: 0xe7e82f4c426bf914d20bbb1e, - limb2: 0xe0c9baf3999d04058d669a6b, - limb3: 0x292f24538e1d2fe082a1fb5 + limb0: 0xaa5fdcb16b7565c32958a928, + limb1: 0x7d8b9570ce6290a7d47601d3, + limb2: 0x5fe078259ab276c9bee7ee98, + limb3: 0x17fe907d9c67c18dfa5f8f76 }, u384 { - limb0: 0xcdf0514b0abc050f18c22343, - limb1: 0x6910c067643f81c1f30c8f2e, - limb2: 0x3920cfd5dbe75398730720ae, - limb3: 0x1e55e1c113c98c36deb7904 + limb0: 0x25b94390eeb84cd8cc2ba05b, + limb1: 0x58a8425e192852bb64028d3c, + limb2: 0xe12b518b1fe0a4c146ab4960, + limb3: 0x875d0097bab3e8b959cc90c }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xc33f2dc9c1632ff7c1f11769, - limb1: 0x1658ab89af80395e3faa4b40, - limb2: 0xfe1469dd30bcef6b6d580cf3, - limb3: 0x121f0cc0306b283f64259b72 + limb0: 0xc0a822e04fe6e13cc87513db, + limb1: 0x668a1859ab97d44b80689809, + limb2: 0xe9c3852b640fb9716dacb468, + limb3: 0x6a334b1108a9d2b09aa2bbd }, u384 { - limb0: 0x243dbe6cd31df3bf9a10f4de, - limb1: 0xa3cfb21f089424dd5b5b4c7c, - limb2: 0x37929f26418b4d113cd8367d, - limb3: 0x1428dc17ddce461a8fa98c9f + limb0: 0xe5cf8ff86b12715db8937c19, + limb1: 0xff7d55c6446725b74879d1c9, + limb2: 0xff60f88405fbdbe4cdb87dd5, + limb3: 0x76563e7128a76649b348849 }, u384 { - limb0: 0x6794f250572e90386e711112, - limb1: 0x8244794033bb4bd1399b5f4d, - limb2: 0xf3e8b4e63ef8ed514947d66e, - limb3: 0xb017cd93785424154ce87e7 + limb0: 0xeb778e5bc818491b49fbe619, + limb1: 0x47861993aac1864495673550, + limb2: 0x5ee1bfad748da0e4404f190c, + limb3: 0x19166e6caf2fa39e7c773258 } ] .span(), b_den: array![ u384 { - limb0: 0x2cb404d7c5bac0aa7c9eaedc, - limb1: 0x9fa0bd3109afe453482eec78, - limb2: 0x8326ebce66741016359a69af, - limb3: 0xa4bc914e3874bf820a87ed7 + limb0: 0x958372c67fd8970ca563a49f, + limb1: 0xc09bdde055776032f5d40752, + limb2: 0xb59eda103d63f89821108223, + limb3: 0x11f70c37c51f5269082b46b6 }, u384 { - limb0: 0x37c1452c2af0143c63088d0c, - limb1: 0xa443019d90fe0707cc323cbb, - limb2: 0xe4833f576f9d4e61cc1c82b9, - limb3: 0x795787044f2630db7ade410 + limb0: 0xe5910e4400e2336330aed6c1, + limb1: 0xfb7036d76df054c9715e34f1, + limb2: 0x416199551b0b4780272812c1, + limb3: 0x7d62e3bb52d13940b577c7d }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xb2d0135f16eb02a9f27abb7, - limb1: 0xe7e82f4c426bf914d20bbb1e, - limb2: 0xe0c9baf3999d04058d669a6b, - limb3: 0x292f24538e1d2fe082a1fb5 + limb0: 0xaa5fdcb16b7565c32958a928, + limb1: 0x7d8b9570ce6290a7d47601d3, + limb2: 0x5fe078259ab276c9bee7ee98, + limb3: 0x17fe907d9c67c18dfa5f8f76 }, u384 { - limb0: 0xcdf0514b0abc050f18c22343, - limb1: 0x6910c067643f81c1f30c8f2e, - limb2: 0x3920cfd5dbe75398730720ae, - limb3: 0x1e55e1c113c98c36deb7904 + limb0: 0x25b94390eeb84cd8cc2ba05b, + limb1: 0x58a8425e192852bb64028d3c, + limb2: 0xe12b518b1fe0a4c146ab4960, + limb3: 0x875d0097bab3e8b959cc90c }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -11210,78 +11149,78 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xd450bbeb87e7ce81d316a5a8, - limb1: 0x9ae779e973248428754b0abd, - limb2: 0xe72f978ac9f835df0acfff1d, - limb3: 0x9f195c1de5a51189dc51efc + limb0: 0x3a51c82657e69a243d0b6b56, + limb1: 0xd743a22ac2e1301dcdbf47b0, + limb2: 0x8fec737c36045cf8caffb9d1, + limb3: 0x19e776d59172de6afddb5195 }, u384 { - limb0: 0x15437a3cb902d1b7cdda2b16, limb1: 0x360baf51, limb2: 0x0, limb3: 0x0 + limb0: 0x3be7d1773c4f1354cde885d0, limb1: 0x2bc2c2d5, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xa55ed2faafb6ef5e83ef6eb8, - limb1: 0x3b09fa1ef267a311ca3c2279, - limb2: 0xb6638f97ebdf72d31b92e845, - limb3: 0x2275a57c485e882b18b64fb + limb0: 0xc65cdbf3cd9cd04ea1bb643a, + limb1: 0x14ea9b54c6834a9e722c1f7c, + limb2: 0xafb57dea15d411575015917, + limb3: 0x17a3c38ef608de38da6c65fe }, u384 { - limb0: 0xf55d14f06301fae51bd073a3, - limb1: 0xd39ef0a5a75821a8781a402f, - limb2: 0x1d508b089e32776ff42d4cfc, - limb3: 0x319cb21aac10e35928b895c + limb0: 0xc73bdd7042c09faf87edb951, + limb1: 0xfeadff6631c4a5439b7511c7, + limb2: 0x12abe54382cdeab5a4d488db, + limb3: 0xde04de4f5a3c02b5d429dd2 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x1073986e1f505ad2a383092e, - limb1: 0x33110332d1043ba1e03fc0c4, - limb2: 0x710608efe98db1041b436e62, - limb3: 0x13ab23e761ed7aeec78e0685 + limb0: 0x5eb791af56e52caf68bff6b2, + limb1: 0xd71a7ef5d3339fa25d040ba8, + limb2: 0x5a0b007b83762fa4a178b939, + limb3: 0x144804b5ca0cf5505add128 }, u384 { - limb0: 0xf966d5b52633ba88e7a14942, - limb1: 0x7a30a08588b05b7a5a42885a, - limb2: 0x8e9843577ea0945411b2f579, - limb3: 0xed3b5f8c16ca1e1de67a0cc + limb0: 0xdb1fb99c23849557a905619d, + limb1: 0x2470e9ac1a6c4018df83e385, + limb2: 0x94b8c781fe8c593601171d18, + limb3: 0x603d8b535babff1ea20c696 }, u384 { - limb0: 0x81c66890279a0b6fba6a1549, - limb1: 0x24149f467ac4f9c88501823a, - limb2: 0xb42cd9c5e6553b60db5533f5, - limb3: 0x143ed9fbf77444016540df06 + limb0: 0xd0ba6ac806cfada216b79b45, + limb1: 0x9889f47303710fd7d582d4af, + limb2: 0xc7dca6bdf5a6eece2be64b06, + limb3: 0xf1a3af4ea94404f4d3c3988 } ] .span(), b_den: array![ u384 { - limb0: 0x957b4beabedbbd7a0fbdbae0, - limb1: 0xec27e87bc99e8c4728f089e6, - limb2: 0xd98e3e5faf7dcb4c6e4ba114, - limb3: 0x89d695f1217a20ac62d93ee + limb0: 0x5776fd00876413a86ee90e7, + limb1: 0x1e17f57035fa480d6cac7df7, + limb2: 0x620a58f4580f21c6f9762c1e, + limb3: 0x108bd87d2ba3c514885ea0d5 }, u384 { - limb0: 0xd57453c18c07eb946f41ce8c, - limb1: 0x4e7bc2969d6086a1e06900bf, - limb2: 0x75422c2278c9ddbfd0b533f3, - limb3: 0xc672c86ab0438d64a2e2570 + limb0: 0xba4775c197047ebe1fb78fee, + limb1: 0x2c565856d9b0a8c6307c4721, + limb2: 0xc4183b5f424913ccac47fdf1, + limb3: 0x37f13bf638f3378ded327db }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xa55ed2faafb6ef5e83ef6eb8, - limb1: 0x3b09fa1ef267a311ca3c2279, - limb2: 0xb6638f97ebdf72d31b92e845, - limb3: 0x2275a57c485e882b18b64fb + limb0: 0xc65cdbf3cd9cd04ea1bb643a, + limb1: 0x14ea9b54c6834a9e722c1f7c, + limb2: 0xafb57dea15d411575015917, + limb3: 0x17a3c38ef608de38da6c65fe }, u384 { - limb0: 0xf55d14f06301fae51bd073a3, - limb1: 0xd39ef0a5a75821a8781a402f, - limb2: 0x1d508b089e32776ff42d4cfc, - limb3: 0x319cb21aac10e35928b895c + limb0: 0xc73bdd7042c09faf87edb951, + limb1: 0xfeadff6631c4a5439b7511c7, + limb2: 0x12abe54382cdeab5a4d488db, + limb3: 0xde04de4f5a3c02b5d429dd2 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -11290,10 +11229,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xd997247776269299040f0842, - limb1: 0x2ac725c595d8376b2cf81bec, - limb2: 0x3cfd5b6cd8e02c95c3801ba2, - limb3: 0xb6fdaeed21262c50b910782 + limb0: 0x46ddde13938fc4f3b43818e2, + limb1: 0xd1e2f39209f14310cce2a393, + limb2: 0xc8534547e0ef84a6ed1b3309, + limb3: 0x15bf60a03760a757ba865b8d }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -11305,66 +11244,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x3271e0754a4f42f4ee002d98, - limb1: 0xf275e82ed0f44bbab9ff5057, - limb2: 0x89eec18ecfe163176444af53, - limb3: 0x16bdbf16318fef60351da36c + limb0: 0x2fd6c406866e591a34bf9faf, + limb1: 0xf8cb781272f894b3f3b24bd9, + limb2: 0x9ba16a2c1f8e2c766e51a318, + limb3: 0xf8adc7d6666ccac6a7aa3d7 }, u384 { - limb0: 0xb65df57318af573ccabbd4aa, - limb1: 0x3f2247ff27ba3cdc31d1c70e, - limb2: 0x143f239b128b5c6adcb8f20, - limb3: 0x10fbf6247fa5ca78d8d482af + limb0: 0x8f080460e5c40fe3ad4eaeb3, + limb1: 0xcce5d3485678f8f6ef53aa1a, + limb2: 0xe85240792b4f91a5573469d8, + limb3: 0x17037ecd43d7e989816d986b }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xbe95e7e398de497b2af9e192, - limb1: 0x68cfe1dd9a1173fc9c6c2e13, - limb2: 0x263accddbcae0de6771be66, - limb3: 0xa83e714affebff509c8adc3 + limb0: 0x2790f829d737cf9e45bec3ee, + limb1: 0x3f7c49df1c11c290c0f9770f, + limb2: 0x9eea2c0936a5efb4c682be64, + limb3: 0x14eeac8c40f98650f0375b63 }, u384 { - limb0: 0x517de7fb8892be553b7a7a00, - limb1: 0xec7d57d91ad09de8277a9bb6, - limb2: 0xf79d7fdb9eb45b58ceddcf4b, - limb3: 0x34ac7e4ff74682bb422b00e + limb0: 0x594d9470d29de3e91ce8c1d0, + limb1: 0xaf5683ed493d3138785ef9b5, + limb2: 0xe649db6ee2e1b6b62e2ee5c6, + limb3: 0x8e3d7cc472dfca5eda05f1e }, u384 { - limb0: 0xf72582abca8513d19a0e6c11, - limb1: 0xd3db6fe48e2ed150b54d0979, - limb2: 0xa0e2519d2a6d70e18c558ae1, - limb3: 0x5a38ce5327ac6d6fc9ef02f + limb0: 0x7f5186d2bbe2909fc7f05b34, + limb1: 0xda9ee671b2a618d75bf08995, + limb2: 0xe8f2e285aece409da0c33cf, + limb3: 0x73e3eec5690855f6911e1fd } ] .span(), b_den: array![ u384 { - limb0: 0xb5cb81d5fb400bd3b801b65f, - limb1: 0x944528d85fbe4c7e8bf94160, - limb2: 0x5dd7ffb5121fa9ceb6838511, - limb3: 0xcf3c69a19c009b1f323968f + limb0: 0x5cb3101aa5bb6468d2ff2966, + limb1: 0x14cc3b07de80668791712f67, + limb2: 0xe7ee4f01b54a1acfd23c66e5, + limb3: 0xa294e21269b657d13b33ff1 }, u384 { - limb0: 0x76cfd5cceebf5cf32aeffd52, - limb1: 0x2e277abab187072889ef1c3d, - limb2: 0x7e786f37fbb44010d0241702, - limb3: 0xfedb4bd8b975caecd1abb4f + limb0: 0x2824118469133f8eb53bbacb, + limb1: 0xfe04d53e75d1016f614aa86e, + limb2: 0xd765fb5e7fd8640682426f24, + limb3: 0xe0ac57662dff25724636a8c }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x3271e0754a4f42f4ee002d98, - limb1: 0xf275e82ed0f44bbab9ff5057, - limb2: 0x89eec18ecfe163176444af53, - limb3: 0x16bdbf16318fef60351da36c + limb0: 0x2fd6c406866e591a34bf9faf, + limb1: 0xf8cb781272f894b3f3b24bd9, + limb2: 0x9ba16a2c1f8e2c766e51a318, + limb3: 0xf8adc7d6666ccac6a7aa3d7 }, u384 { - limb0: 0xb65df57318af573ccabbd4aa, - limb1: 0x3f2247ff27ba3cdc31d1c70e, - limb2: 0x143f239b128b5c6adcb8f20, - limb3: 0x10fbf6247fa5ca78d8d482af + limb0: 0x8f080460e5c40fe3ad4eaeb3, + limb1: 0xcce5d3485678f8f6ef53aa1a, + limb2: 0xe85240792b4f91a5573469d8, + limb3: 0x17037ecd43d7e989816d986b }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -11373,12 +11312,25 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xaf4a43aeab105c3edfdc61ac, - limb1: 0x2d3b4121e3deb6e5969f398c, - limb2: 0x4c0a0a6bcf68d89034eb4340, - limb3: 0x73c5fdf5fe237e30c2df038 + limb0: 0xcc9c77272744c2eae9f9e3a0, + limb1: 0x58cfe5b4ce2c9f94ceb16110, + limb2: 0x6b3c99b339102c83e8f23db4, + limb3: 0x77a47138cc9a82614b878d7 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0xf57ff0fcc1ba8ab54866d241, + limb1: 0x5fde8c3892e41a27390c98c6, + limb2: 0x5550271f9090bb750ab0adc2, + limb3: 0xab779573ee931ca809c6a28 + }, + u384 { + limb0: 0x8703f63300c2d4794f39b70f, + limb1: 0xf247077c5312f88cbaa49d9a, + limb2: 0x3d02ee1932c376ab5bb0d775, + limb3: 0xb9a324254aa6f8a28c014ef + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 1 @@ -11386,16 +11338,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xcaa3448bd1e22f63689ac0e7, - limb1: 0xb207548380ccd414622e55cb, - limb2: 0xdf8509a96cf022af16286a17, - limb3: 0xe2585013cb13a41369ef577 + limb0: 0xc947e73cdd0900514286b841, + limb1: 0x9102be3f6399fb04b752343b, + limb2: 0x8959fe2ed8480667f5df8d76, + limb3: 0xb8560f02c22098ba7053e67 }, y: u384 { - limb0: 0x9312874739a03e3b9a33cce4, - limb1: 0x2a3728d4c31619bc66a82902, - limb2: 0xbfc5c3a27e5bc3676511deec, - limb3: 0x10ca5c94ec53d078d3505488 + limb0: 0x27d0aef09065d3415c828ff3, + limb1: 0x5918364ee6deae18a32a2b5, + limb2: 0x152ac22882661c6925945950, + limb3: 0x14d84c49cc78faa54a4c0628 } } ); @@ -11407,40 +11359,40 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x4705ada778cedf278c1d3c2b, - limb1: 0xdba5b4e12df8b9c2cc9175c5, - limb2: 0x1039e88ce51daacbbc7f58a4, - limb3: 0xff972b4be891d346d5872bd + limb0: 0xec556ce34f79473dded2ddd, + limb1: 0xe94f53b36fa4bf4f433d87aa, + limb2: 0x85ba29e50f3ffaecd302681d, + limb3: 0x14798b56bfec7c8b10e8ea1b }, y: u384 { - limb0: 0x7ca25a30a23fba4157c45508, - limb1: 0x706c961bd2b4fad5dfed3a1c, - limb2: 0xd88f52cb5fd702404b50a798, - limb3: 0x121898d2e60dbc7526486dd6 + limb0: 0x2878c20a0c95888134f7c4c9, + limb1: 0x3a9384959554813c9275942f, + limb2: 0x90d129a9aa023f80f866ecfb, + limb3: 0x4d368220280637e7ae3c7ac } }, G1Point { x: u384 { - limb0: 0x2a7dd8961fa21a53f166f98d, - limb1: 0x3eb4fedcaffe98bd3f11766e, - limb2: 0x9b7782f018132b55423282e7, - limb3: 0x7ae6655a08f1e7cdb416e82 + limb0: 0x106fcbf0779169eb4659e7e8, + limb1: 0x32eb5405bbe77d87a49e2103, + limb2: 0x73d18330f81a0e12d9c63490, + limb3: 0x1235cd4d4dd009115ff477a1 }, y: u384 { - limb0: 0xbc713d308f87b696cd7ab90a, - limb1: 0x39e8d5c689581dadca95195c, - limb2: 0x99854fe21b84f7aac00b801, - limb3: 0x1814f2fe32680bf33a737dee + limb0: 0x1149a162c9173afabe2c2849, + limb1: 0x1d98a058dfb0ad100d254d4d, + limb2: 0x12e632fa19c02699b4d38c48, + limb3: 0xf3717f01add2fdc33b743bd } }, ] .span(); let scalars = array![ u256 { - low: 0x67c21355c3121af68b32992a3b7c1f9a, high: 0x2c46c8efbe86a8ea1cf0d1d47b3df41 + low: 0x61c168bb7c9f3182bd9a683dc423da9, high: 0x4c66178246431bf92871b8379b65e035 }, u256 { - low: 0xab2212c9e23b580e4523dbbb1eeed219, high: 0x32ffb56e41aef3f7001098240a614be3 + low: 0xa6ec013f83becf7545d5b2cbd79adf91, high: 0x5560639428498c880fec356628d3545e }, ] .span(); @@ -11448,49 +11400,55 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x0, -0x1, -0x1, 0x0, 0x0, 0x0, - -0x1, 0x0, - 0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x0, 0x1, 0x1, 0x1, + -0x1, 0x0, 0x0, + 0x1, -0x1, - -0x1, + 0x1, 0x0, 0x1, -0x1, - -0x1, - 0x0, 0x0, 0x1, - -0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, - 0x0, + 0x1, 0x1, -0x1, -0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, + 0x1, 0x0, -0x1, 0x0, + 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, -0x1, @@ -11498,201 +11456,195 @@ mod msm_tests { -0x1, -0x1, -0x1, + 0x0, 0x1, -0x1, 0x1, - 0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, + -0x1, 0x1, + -0x1, 0x1, + -0x1, + 0x0, + -0x1, 0x1, + -0x1, 0x0, 0x0, + 0x1, -0x1, 0x1, + -0x1, + ] + .span(), + array![ 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, - 0x1, - -0x1, -0x1, 0x0, + -0x1, 0x1, - ] - .span(), - array![ - 0x0, - 0x0, + -0x1, -0x1, 0x0, 0x1, 0x1, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, - 0x0, 0x1, -0x1, 0x1, 0x0, + -0x1, + 0x1, 0x0, 0x1, 0x1, - 0x0, + 0x1, + 0x1, + 0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, - -0x1, 0x0, - -0x1, 0x1, - 0x0, - -0x1, -0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, - -0x1, - -0x1, 0x0, 0x1, + -0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, - 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x0, -0x1, -0x1, -0x1, -0x1, - -0x1, - 0x1, 0x0, -0x1, - -0x1, 0x0, - -0x1, 0x1, -0x1, - -0x1, - -0x1, - 0x1, - 0x0, 0x0, 0x0, + 0x1, -0x1, -0x1, + 0x0, + 0x1, + 0x1, ] .span() ), ( array![ 0x0, - 0x0, - -0x1, + 0x1, -0x1, 0x1, -0x1, -0x1, - 0x1, + 0x0, + -0x1, -0x1, -0x1, 0x1, 0x1, - -0x1, - -0x1, - 0x0, + 0x1, 0x0, + 0x1, 0x0, -0x1, + 0x1, + 0x1, + -0x1, + 0x1, 0x0, -0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x0, 0x0, 0x0, -0x1, - 0x0, -0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, + 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x0, -0x1, 0x0, - 0x1, - -0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, - -0x1, 0x0, - -0x1, 0x1, -0x1, - 0x0, -0x1, - 0x1, 0x0, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x0, + 0x1, + 0x1, 0x0, -0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x0, - 0x0, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x1, -0x1, @@ -11700,86 +11652,87 @@ mod msm_tests { ] .span(), array![ - 0x0, - 0x1, - 0x0, - 0x0, - 0x1, - -0x1, - 0x0, -0x1, - 0x0, - 0x1, -0x1, 0x0, - 0x0, - 0x0, 0x1, 0x0, -0x1, - 0x0, 0x1, 0x0, + 0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, + 0x1, 0x0, + 0x0, + -0x1, 0x1, 0x1, + 0x0, + 0x1, -0x1, 0x1, 0x0, + 0x0, + 0x0, 0x1, 0x1, + -0x1, 0x1, 0x0, + -0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, + 0x1, -0x1, - -0x1, - -0x1, + 0x0, -0x1, -0x1, 0x0, + 0x0, -0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, + 0x1, + 0x1, + 0x1, 0x0, - -0x1, + 0x1, -0x1, 0x0, - 0x0, -0x1, -0x1, + 0x1, 0x0, + 0x1, -0x1, 0x0, - -0x1, + 0x1, 0x1, 0x0, -0x1, 0x1, -0x1, - -0x1, + 0x0, + 0x1, 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x0, 0x1, - -0x1, + 0x1, ] .span() ), @@ -11789,153 +11742,153 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x6f2a0222c0b411e583575e5e, - limb1: 0x86fa714c745ff87f5b155c90, - limb2: 0x719f8e37f21c47b417a6d2cd, - limb3: 0x12e42db772db60b9b2e4fb2a + limb0: 0xbc7fe90dcd506978764a9c17, + limb1: 0x22b5b85116d83f439dbd7a2a, + limb2: 0x9b65704ffeb906ccda496a0d, + limb3: 0x11689594c6ae768ca667e319 }, y: u384 { - limb0: 0x4c7aa348d14e6672423bb3c1, - limb1: 0x654d16ebc800f838a4684300, - limb2: 0x7a4dea0efb5a1e0107967a65, - limb3: 0x25309787fe5b52c93464ddb + limb0: 0xfa98c56332fd2eb006b078a9, + limb1: 0x2f21ea68dbd93bf03c5fb784, + limb2: 0x27215d7638885e0d44bd3932, + limb3: 0x25f0f72b30dd9eae4d27ce4 } }, Q_high: G1Point { x: u384 { - limb0: 0x5ba1742b783e2bdcfb5eb013, - limb1: 0x96a93d8c563a0e67221f3ea8, - limb2: 0x834a0c2ca332e41ed5399808, - limb3: 0x196e63d57cec229f3069fd08 + limb0: 0xc8399663b8ce4d45d78b204, + limb1: 0x3b0d75bc71f73381cfbb1a53, + limb2: 0x4e579d5f515453a0cdfc41ba, + limb3: 0x1839c750a4aff894267c3b98 }, y: u384 { - limb0: 0x75fa12e5b465c674519a8b54, - limb1: 0x817dae4a8279cc5088593f7e, - limb2: 0x9feaf661eacf58a5bdbb4dd9, - limb3: 0x63ba3b0eef4be4602f7d63d + limb0: 0xecd4c24f585a04491480f52a, + limb1: 0x328e1ccd1098c952275b5261, + limb2: 0x8c479c5001fe55f74350e141, + limb3: 0x1790e23b14e5f12e823daae3 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x53f0aef05eac0f595f249103, - limb1: 0xdd8634c5f4752db9de0bc82d, - limb2: 0x9310195d97d316f6eb7e9d4f, - limb3: 0x77976bbe4fa9bfcda9477a3 + limb0: 0x2a248d5088e1aa12bbc8936a, + limb1: 0x9edb00f5bf79ecd5405d2794, + limb2: 0x62ebff1cc6d099baa5dca28d, + limb3: 0x16169fd62a9a7d8ed48a985f }, y: u384 { - limb0: 0xf0b21d9a705c47d7ecf1779a, - limb1: 0x2e67838457792c3421ad77b0, - limb2: 0xfd5eddf2dc86b691b7eb4c2e, - limb3: 0x4d66e7bf42d1015c3bf6f44 + limb0: 0x79bd3d82ba60e2dbe34e17d6, + limb1: 0x9f229ec9dc22745299c25b11, + limb2: 0x69382060843a81e72e4fb13c, + limb3: 0x266246fc95380065e1bebf } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x513b385b5327306e3d1467b4, - limb1: 0x5117e74aca4d5019d2d6e16, - limb2: 0x9e97fc70c3d50b0185a5de9b, - limb3: 0x563cc7a1ae309dd51b9bb3e + limb0: 0x9c10ea69fab684d16e89886b, + limb1: 0xe526aefb7d7665008df3be84, + limb2: 0xe3b2ab051c5c3243a3d42578, + limb3: 0x1610f91d8f0dcba0caf8304 }, u384 { - limb0: 0x45b19e59c8c4d52c0e2dfef4, - limb1: 0x5f7e0dc15bfc73f715a1753a, - limb2: 0xecb123c36974dfb0a0919e87, - limb3: 0x15be4d7d76f1eea6b3648a99 + limb0: 0x298f19c64536078741a8f648, + limb1: 0x69798a6ba12feaa547b2154a, + limb2: 0x94584ba44191cc9ebda4a3a1, + limb3: 0x14bf9406fe09eeb377c8620d }, u384 { - limb0: 0x69d98df83d626226f04f223b, - limb1: 0x6730d2a0f6b0f623dfd0e961, - limb2: 0x434bacd764774b84f38512bf, - limb3: 0x1a0111ea397fe69a4b1ba7b6 + limb0: 0x94bf27ba1f6e86aa8a3ccc32, + limb1: 0xb39869507b587b1190b3823a, + limb2: 0x21a5d66bb23ba5c279c2895f, + limb3: 0xd0088f51cbff34d258dd3db } ] .span(), a_den: array![ u384 { - limb0: 0xc2f6178fa1459ee7fc339a05, - limb1: 0x1603b972c4c403cc26e5121, - limb2: 0x8aafab10a4350fc53df1f2b7, - limb3: 0x16f3a54d4d2ae4455facaae0 + limb0: 0x454c2843b982b4bf06cc4ee5, + limb1: 0x817a535b0a61f7937a40f80e, + limb2: 0xa545f03ace83081441c5eaad, + limb3: 0x98d46902f56fc929146e803 }, u384 { - limb0: 0x60fd64c964699fc37a720677, - limb1: 0xa01249d0cdc50fc6283827ca, - limb2: 0x349429843326aea698bf488a, - limb3: 0xa28505830d1c252db03e574 + limb0: 0xc234b94013ccc428f6c49039, + limb1: 0xf9d3ec5533dafd7defeb5fe5, + limb2: 0xfd5b044862cd50c8fcc42d48, + limb3: 0x28611e42919117da69f8c10 }, u384 { - limb0: 0x81fa779f1ad8f49eff23c140, - limb1: 0x2d0c80379b0aa148d69fb739, - limb2: 0x69465ff9d9a17934d0b17725, - limb3: 0x9761d12a10c30c99ab87302 + limb0: 0x3846f432b4239828656d4e25, + limb1: 0xf6a217d8a1ae6651d66add24, + limb2: 0x34f1e9202752d2c2537d3182, + limb3: 0x15eb4785d814b7a5ca0db24c }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xb9b2a9fcebfe6ca7d44d84a6, - limb1: 0xe0277cd9b7e92405f2488973, - limb2: 0x7bf01679bcf183ede663e394, - limb3: 0x1403377e4de071f11e17860c + limb0: 0x5ce092e74fd60bff6c58a17d, + limb1: 0xc952677cfc6b63b78d3a67d7, + limb2: 0xe893e029676af3dcf4204fb2, + limb3: 0x139a88cfe87739100e21d061 }, u384 { - limb0: 0x48f04ca604c5fafe30028a67, - limb1: 0x9e601d52f1b9878692bf90b0, - limb2: 0x7873a99f77c2dcb176a61307, - limb3: 0x82b491e7b52b62f47919809 + limb0: 0x9c9b72453feac76e17259699, + limb1: 0x345b8b8da7821ba9248a7ebc, + limb2: 0x4fcf31ff18653bf723e50f1f, + limb3: 0xf77fe23297298e474a97e08 }, u384 { - limb0: 0xe831febbfa11b6c129b5ae8d, - limb1: 0xda82f831897a8e7417735085, - limb2: 0x2add7b2966b926db8a43843a, - limb3: 0x1991d58607ad3f718db376ad + limb0: 0xfecc79be1068c4f9013c076f, + limb1: 0x9c903d1c78d11c1dc4cccd79, + limb2: 0x38aa682c1a23ad9ff3260b2, + limb3: 0xa748da582935e5d1cfa0d73 }, u384 { - limb0: 0xcc21e6a61421d1a514a5fd22, - limb1: 0xf055d143d4ea81edcfc1b208, - limb2: 0xd65b96dd4f93d0d42199709f, - limb3: 0x120a3b23c1a95117de28d6f0 + limb0: 0xc4e79c90c39578a60bd94e43, + limb1: 0x791beb5ca3c25a12b742dcb9, + limb2: 0x45381ee3ebf6916139735803, + limb3: 0x16030700f12ef8a68fa0ee } ] .span(), b_den: array![ u384 { - limb0: 0xf7dc5e3f57197b9ff0cf6813, - limb1: 0xcfee7679cd1e1e86adb5448a, - limb2: 0x60dba5bc636e5c861d38929d, - limb3: 0xdcb5f76882bdd469d5fb45f + limb0: 0x63dca10f2c0bd2fc1b3190e9, + limb1: 0x9eb87acb32d6e829ca57e03a, + limb2: 0x51cc1413d594d4cc139297f6, + limb3: 0xc34085683dc0baff9fff858 }, u384 { - limb0: 0xd2a19325d7a77f0de9c86f31, - limb1: 0x191854a2406348f482349f2a, - limb2: 0x8f04f93968236f156f780f6b, - limb3: 0xea02f7689c722b120f3ee1a + limb0: 0x8d2e5004f3310a3db1240e4, + limb1: 0xe74fb154cf6bf5f7bfad7f97, + limb2: 0xf56c11218b354323f310b523, + limb3: 0xa184790a46445f69a7e3043 }, u384 { - limb0: 0x5695de7cb164d27bfc8f5a55, - limb1: 0x4d012e3d75798eff3bd2dce7, - limb2: 0x61cdd310020e994e4f40c9d5, - limb3: 0xbd762604ab0dc8c1fc62453 + limb0: 0xcd1fd0cba29160a195b63893, + limb1: 0xa4f5e77fa2a6b6dafda77494, + limb2: 0x9e49dfa6fe5687a73658dcd, + limb3: 0x9a9e858b3d32ac846e3d20e }, u384 { - limb0: 0xc2f6178fa1459ee7fc339a09, - limb1: 0x1603b972c4c403cc26e5121, - limb2: 0x8aafab10a4350fc53df1f2b7, - limb3: 0x16f3a54d4d2ae4455facaae0 + limb0: 0x454c2843b982b4bf06cc4ee9, + limb1: 0x817a535b0a61f7937a40f80e, + limb2: 0xa545f03ace83081441c5eaad, + limb3: 0x98d46902f56fc929146e803 }, u384 { - limb0: 0x60fd64c964699fc37a720677, - limb1: 0xa01249d0cdc50fc6283827ca, - limb2: 0x349429843326aea698bf488a, - limb3: 0xa28505830d1c252db03e574 + limb0: 0xc234b94013ccc428f6c49039, + limb1: 0xf9d3ec5533dafd7defeb5fe5, + limb2: 0xfd5b044862cd50c8fcc42d48, + limb3: 0x28611e42919117da69f8c10 }, u384 { - limb0: 0x81fa779f1ad8f49eff23c140, - limb1: 0x2d0c80379b0aa148d69fb739, - limb2: 0x69465ff9d9a17934d0b17725, - limb3: 0x9761d12a10c30c99ab87302 + limb0: 0x3846f432b4239828656d4e25, + limb1: 0xf6a217d8a1ae6651d66add24, + limb2: 0x34f1e9202752d2c2537d3182, + limb3: 0x15eb4785d814b7a5ca0db24c }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -11944,110 +11897,107 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x6530e86d2a06376cc936abda, - limb1: 0xf52fb557050f48d25e94941a, - limb2: 0xa7568c57c7edeee4dbe52b2, - limb3: 0x12d1d389fc72a1b777209a31 + limb0: 0x2b2d1bb3d571e79fe598c5be, + limb1: 0x20a437c896c0af3dc0852fce, + limb2: 0x5eb8d9ffdc1ae044d2d6556d, + limb3: 0x17845d79800ffcaaf74a0ebf }, u384 { - limb0: 0x8f37fa320bb0645932ea7a13, - limb1: 0xd80c9f0f8cff5253a0a3811, - limb2: 0x9f0c4e5561032a1a8b9cac35, - limb3: 0x6df20efb710a9f1dabd1c89 + limb0: 0xece130c0d796b1947419a802, + limb1: 0xc9be96159a04c02a0deaa2c9, + limb2: 0xd1376262f7eedc9c2869d13f, + limb3: 0x18c9771620d2163cef007f45 }, u384 { - limb0: 0xaeb21f129200462fe4f4cecb, - limb1: 0xb39869507b587b120259dd5b, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0x7736554cb7cd3ca932ea121b, limb1: 0x4f386595, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xe056e1136186d368aee0d829, - limb1: 0xf64be7917b9799927b319be4, - limb2: 0x47d978e0ffdba66d5e97732a, - limb3: 0x19c63cce97c25a68d4250a02 + limb0: 0x2ce2c5c9c7885d921b47760, + limb1: 0x3268a389e3146596412c93eb, + limb2: 0x9e7ac6f90c3757b6edc2070c, + limb3: 0x9ed9aaa7089b487f4840e5c }, u384 { - limb0: 0x7900c21be25eb6ac74445d21, - limb1: 0x42d34ad6234c61ebcee01f4d, - limb2: 0x64068c3c59e4991b1647a112, - limb3: 0x78982258ef75a86c208a292 + limb0: 0xb06c4cb54b2a58f4c4a03ebe, + limb1: 0x41a5141680dc387390d510e9, + limb2: 0x1044ef872c2e8edebe46ec8e, + limb3: 0xb14523883a5352e1cec522 }, u384 { - limb0: 0x95830596634edaa7871c6f8b, - limb1: 0x1d5db3f7b9308b610f95d521, - limb2: 0x579be205288adcca131eb1ea, - limb3: 0x2ebe6f496fb6ee41d337124 + limb0: 0xe84343da45e71ccc7e3f3838, + limb1: 0xde4a5a6d468f7213a46d3cfb, + limb2: 0x81ffbc10d4b785ee5fca59d5, + limb3: 0xf1a15c9fa13359e49f959cd }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x6a8c668c34d4d422b1aacfaf, - limb1: 0xd58c646fd8460052d2be4030, - limb2: 0x6c0aa373e0a5cf2d3d4e21c0, - limb3: 0xc364d31193b05f09c5beb1a + limb0: 0xe15c4bbc3fc6e19f516f6f2f, + limb1: 0xf33ce50b40e061cefd478d8c, + limb2: 0xffe3874516805e350701ce34, + limb3: 0x128d2486ecf351d923cf0f5c }, u384 { - limb0: 0x637f04f48ea5534b915593a5, - limb1: 0x4bb79f76b517d2d783c81628, - limb2: 0x574bc93ba6504c20cd2f30ee, - limb3: 0x19a395c083bb4364f1c3f49b + limb0: 0x32bccecd28f69d0b158eda8b, + limb1: 0x8cb4a0d9d1b2beb6f6d81245, + limb2: 0xc3ee2124c2324269e46c8859, + limb3: 0x11bdab6b0afd9543cf157451 }, u384 { - limb0: 0x65897df28a2e5f35c0e6dcb5, - limb1: 0xb477a7675857b667ac6df7ef, - limb2: 0xf747009b270b37574c033d02, - limb3: 0xd7e2a2fe6131dcc5d6c077b + limb0: 0xe13969b3fe61b0b22285b279, + limb1: 0x9686bc40ad4436bbc32d72f4, + limb2: 0x3958c77d23af3666711019e9, + limb3: 0x1988c50f38d2a46d0a8f4712 }, u384 { - limb0: 0x1493b1b2e0b58e304fc9b8fa, - limb1: 0x12388bd3f89805d582bf8b26, - limb2: 0xa6a39426acaa97aa78b50f19, - limb3: 0x1813f86c9d6006490d7ee322 + limb0: 0x31f97dfd9057f9d3d38cf5ea, + limb1: 0x91b4c8ce2679f4435199a642, + limb2: 0x931b40cc8a0707e706a5ae4e, + limb3: 0x5b14edc5dcda407671b6e58 } ] .span(), b_den: array![ u384 { - limb0: 0x6d5f844e581e4da2bb8460a3, - limb1: 0xa39d26630a4b83dd90c26f97, - limb2: 0x5582dcfdd208b7269fce946d, - limb3: 0x1915bd7bb289b5d46f4130e6 + limb0: 0x59e4b172b7e3176486d232d5, + limb1: 0x6271bb8695a0a034e6064fad, + limb2: 0x369f6f0ccc661356c3830971, + limb3: 0xdb558bf88a6eb8586f491bc }, u384 { - limb0: 0x32af086fcf7bdab1d111c9d9, - limb1: 0xa41c58b79680918b1cd47d37, - limb2: 0x4cce841a031b18e765997189, - limb3: 0x424f6ac025d8380bd06e293 + limb0: 0xc1b132d52ca963d31280faf8, + limb1: 0x694505a0370e1ce435443a6, + limb2: 0x4113be1cb0ba3b7af91bb239, + limb3: 0x2c5148e20e94d4b873b1488 }, u384 { - limb0: 0x560c16598d3b6a9e1c71be2c, - limb1: 0x7576cfdee4c22d843e575486, - limb2: 0x5e6f8814a22b73284c7ac7a8, - limb3: 0xbaf9bd25bedbb9074cdc491 + limb0: 0x3e650f69a39e7331f8fd8b8a, + limb1: 0xaac7c4732cdbdc06545cf3f2, + limb2: 0x8167969489ef80af981f41d8, + limb3: 0x8663353754d094491ae17c9 }, u384 { - limb0: 0xe056e1136186d368aee0d82d, - limb1: 0xf64be7917b9799927b319be4, - limb2: 0x47d978e0ffdba66d5e97732a, - limb3: 0x19c63cce97c25a68d4250a02 + limb0: 0x2ce2c5c9c7885d921b47764, + limb1: 0x3268a389e3146596412c93eb, + limb2: 0x9e7ac6f90c3757b6edc2070c, + limb3: 0x9ed9aaa7089b487f4840e5c }, u384 { - limb0: 0x7900c21be25eb6ac74445d21, - limb1: 0x42d34ad6234c61ebcee01f4d, - limb2: 0x64068c3c59e4991b1647a112, - limb3: 0x78982258ef75a86c208a292 + limb0: 0xb06c4cb54b2a58f4c4a03ebe, + limb1: 0x41a5141680dc387390d510e9, + limb2: 0x1044ef872c2e8edebe46ec8e, + limb3: 0xb14523883a5352e1cec522 }, u384 { - limb0: 0x95830596634edaa7871c6f8b, - limb1: 0x1d5db3f7b9308b610f95d521, - limb2: 0x579be205288adcca131eb1ea, - limb3: 0x2ebe6f496fb6ee41d337124 + limb0: 0xe84343da45e71ccc7e3f3838, + limb1: 0xde4a5a6d468f7213a46d3cfb, + limb2: 0x81ffbc10d4b785ee5fca59d5, + limb3: 0xf1a15c9fa13359e49f959cd }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -12056,10 +12006,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x113ed3f072bf0dc2f92c090a, - limb1: 0xa2275f296a47c67d8d8c3bff, - limb2: 0x41bcd32d19f2b94cdcd08939, - limb3: 0x1456050d8dadc238fe3c1dd6 + limb0: 0xb4be4b4be2c6cad0af64c4b6, + limb1: 0x6d3371aad7025db0b22c414b, + limb2: 0x2c0990100c82561571a00259, + limb3: 0x9508be88a1f4470694ad73f }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -12071,66 +12021,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x13b14fb08367165ed332b3a6, - limb1: 0xef5456e7adb6b7cf752dce36, - limb2: 0xae6512245ad15a15c61c230e, - limb3: 0x1221db48d0759b766b2e2b91 + limb0: 0x47cece434777530f38128657, + limb1: 0x22061964a77e9dd2735e96cc, + limb2: 0x9ccc2955c617359be937a57, + limb3: 0x13a7876612f0bad814ddcae2 }, u384 { - limb0: 0xb315dce39d13c4c9a57c1440, - limb1: 0x5a3232efa2b2b0273d2cf927, - limb2: 0x703d34248de89bf42651f026, - limb3: 0x131a494311190e988b38dac0 + limb0: 0x2bffd948af8f7118e6be0fe8, + limb1: 0xf4792e8fbbf0cbf12d3fbe16, + limb2: 0xd553bd32b0c9a9ae73314136, + limb3: 0x5b1bcada3b557119b307b74 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x59f0a0334fd9ae6d92e1375d, - limb1: 0x10b0a423c225239ac9c34d39, - limb2: 0x26299d014157a6e3a67f4940, - limb3: 0xbb29270d3591ab89af00fed + limb0: 0x2f2270416c8f38bb8d1533ea, + limb1: 0x10aa25f16e2870312a5292e6, + limb2: 0xee2018789a1c5841714bfc2e, + limb3: 0x151c19f50fbf719d5e83488c }, u384 { - limb0: 0xaf821c81a82c6113cb415e9a, - limb1: 0x31d6fb4edf26a7af68f1271a, - limb2: 0x904e243db8519e1e2352821e, - limb3: 0x4aee1595739b7c75127e926 + limb0: 0x450396f4131b49a37c80b403, + limb1: 0xd66ce89fb80d1ab198f3cc8c, + limb2: 0xe33fd7fc1736906fb662788e, + limb3: 0xe2a8e967feaab6992d87e84 }, u384 { - limb0: 0x30e89820228026844b63380c, - limb1: 0xad4717342db42c74aa1a385f, - limb2: 0x68c311059f899e3d391815db, - limb3: 0xb8a676f69b2ada6aa40044b + limb0: 0xde003250f82c2004fb32e1b8, + limb1: 0x37374898e650b814e89aca6e, + limb2: 0xf1f59ff199729d17f4f4eba6, + limb3: 0x158055863af35fadc5bb79f0 } ] .span(), b_den: array![ u384 { - limb0: 0xec1d3ec2999e597b4ccb7942, - limb1: 0xeeefb65cc978f2f5975f38da, - limb2: 0x32fceee2a256d14d316666bc, - limb3: 0x1485494eced6a0a516815eda + limb0: 0xb3f390defe04c3ce04b195b, + limb1: 0x5285edafb9e794dd71765b35, + limb2: 0x5d5003cf441fead81fbeb11e, + limb3: 0x9ae7d99f43379172243465 }, u384 { - limb0: 0x69af738f0051132695f0fbaa, - limb1: 0x9a67267c9d68d454b75be4a1, - limb2: 0x3a5d76e36eb3d8c6b23d9b1a, - limb3: 0x18670137d1646d2d96ac1b95 + limb0: 0xafff6522be3dc4639af83fa0, + limb1: 0xd1e4ba3eefc32fc4b4fef858, + limb2: 0x554ef4cac326a6b9ccc504db, + limb3: 0x16c6f2b68ed55c466cc1edd3 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x13b14fb08367165ed332b3a6, - limb1: 0xef5456e7adb6b7cf752dce36, - limb2: 0xae6512245ad15a15c61c230e, - limb3: 0x1221db48d0759b766b2e2b91 + limb0: 0x47cece434777530f38128657, + limb1: 0x22061964a77e9dd2735e96cc, + limb2: 0x9ccc2955c617359be937a57, + limb3: 0x13a7876612f0bad814ddcae2 }, u384 { - limb0: 0xb315dce39d13c4c9a57c1440, - limb1: 0x5a3232efa2b2b0273d2cf927, - limb2: 0x703d34248de89bf42651f026, - limb3: 0x131a494311190e988b38dac0 + limb0: 0x2bffd948af8f7118e6be0fe8, + limb1: 0xf4792e8fbbf0cbf12d3fbe16, + limb2: 0xd553bd32b0c9a9ae73314136, + limb3: 0x5b1bcada3b557119b307b74 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -12139,12 +12089,31 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x874edcf4a79988ea1000c1c9, - limb1: 0x47aed8debc09c83d5c277674, - limb2: 0x6f90367acf53e3a231668e41, - limb3: 0xc9d265c21438174e0809e0c + limb0: 0x7faefeeaf8dec77fdfc01b5d, + limb1: 0xc8f26cccd4a508c2b48ca804, + limb2: 0x7ee12f89a5fedab8d1562009, + limb3: 0xcf6e90bd59f783d62d15e81 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0x13465fa4aec64f7bfddb39f, + limb1: 0x6d871925494e6a236ab345f8, + limb2: 0x758c8164e2d74d606f84d1df, + limb3: 0x2c9b1133ea97b996240bdbf + }, + u384 { + limb0: 0xaa66ba564daf69775a8711b5, + limb1: 0x58801d4988fb997dcb4e1c38, + limb2: 0x9ae91a99b050061dcb2ca999, + limb3: 0xccb359b3f32bb02369f5106 + }, + u384 { + limb0: 0xc6905c32579f0079c51a506e, + limb1: 0xe94840721291da32e290ed32, + limb2: 0x93a252c230298e1838e81e68, + limb3: 0x319732eb1560088487d3bd9 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 1 @@ -12152,16 +12121,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xa9b7586f8bef63179761b40e, - limb1: 0x29bd6dcebb3fbedb8fb5ba0, - limb2: 0xed1ae5c717696c2f14b1d2aa, - limb3: 0x13c11c9fc86d52d6e3a6f5f6 + limb0: 0x773a7fce03cc1c527a934e1f, + limb1: 0x656885c98a0e019454a4849f, + limb2: 0xa2b5b135c08b71e084c5024f, + limb3: 0x19076e9f088dc6a2452bd54d }, y: u384 { - limb0: 0xd977f815bcb09d814bae0d68, - limb1: 0x4b202a7b9760d1d3cca5ea1f, - limb2: 0xcb8ee6d4fb5fce05830749fc, - limb3: 0x22d8c27ee36050a35e0a477 + limb0: 0x537f160b429b7b512a244d6e, + limb1: 0xc0dc000589a3b91bd39a52ed, + limb2: 0xaab38c3cba8f9faf6a12317c, + limb3: 0xe5043003847eb1cefedfa5d } } ); @@ -12173,57 +12142,57 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x239000264ee57165a8063237, - limb1: 0x4b68386661726329d0714422, - limb2: 0x42c006e33cc8e97d1e781248, - limb3: 0x5f945e99855447c85f5638c + limb0: 0xc4eb125ecc75cee6576eb3af, + limb1: 0xa22797478cbfeadf5fa688d4, + limb2: 0x7a08de43383d2590b02682ad, + limb3: 0x13becb4d718dc6ddec49d663 }, y: u384 { - limb0: 0xb0efbf0cfcfb8679fc94d713, - limb1: 0xfccc3dc4043415b49ff1c2c5, - limb2: 0xb939350a60cf3d8d4d350bc8, - limb3: 0x4c10df6a979f5a47be0cd07 + limb0: 0x873e2674a36c9b33fa3d8e63, + limb1: 0xe923038da8ea7385f3bcc8a4, + limb2: 0xe3e574f906c87fea1cd634c, + limb3: 0x1164b1d491c408b295f2f3cb } }, G1Point { x: u384 { - limb0: 0x56c3fee26f172a5c6090945f, - limb1: 0x50c94f341e6877d6b3dedee0, - limb2: 0xf80c59837af96174ea30b978, - limb3: 0xb5b4833c5822f8915bfb085 + limb0: 0xa9195e0c55788cb3b7892d73, + limb1: 0x1484e05f1f27cc3b59010895, + limb2: 0x41030dc08c1949046a8585d0, + limb3: 0x1946e13228cd2662cd92de8f }, y: u384 { - limb0: 0x48ca3bd8688c8afa58654542, - limb1: 0x3a208724a3722201d9068abd, - limb2: 0xb824601b1826a45a262d242d, - limb3: 0x169f670b6252561245ebee00 + limb0: 0xf0830be7bab804f6c3dda25c, + limb1: 0x381df6c2508ea8139a425757, + limb2: 0xee35530b5a1989d63a18bb4, + limb3: 0x16712d25c87941279065a4d7 } }, G1Point { x: u384 { - limb0: 0x9cea0f8a125a467eb65c83c0, - limb1: 0x32849a411750abe1d53b81d0, - limb2: 0x11e9e4b03c31b96b3fd59652, - limb3: 0x30642ffa9dea712d50de7a7 + limb0: 0xe838ddf995df5a904a2e7d3a, + limb1: 0x38b21c3a5fff326cb417a95c, + limb2: 0x45a631e253700066fca21260, + limb3: 0x8a2997796c2591b21c88c11 }, y: u384 { - limb0: 0x6e5e2f81b89bdf5b0b432bc0, - limb1: 0x2ec0bea15e63a7a8d04adbd, - limb2: 0x41332c38c389261cc533b1a0, - limb3: 0x12a1699359d8e2c629945fec + limb0: 0xdb36a3ded59cb472a32b35b2, + limb1: 0x3b9c8be04f7f87b0878962fc, + limb2: 0xc79c431afe952a92b8608526, + limb3: 0x665d143a2bd2136dd19361e } }, ] .span(); let scalars = array![ u256 { - low: 0xdc0520a487ba3b901e415c4e57030ede, high: 0x61893bfeeb83af16e404d8083fc18c00 + low: 0xd205fb0a0bc6deef64a1f4d6fe111f1, high: 0x41a9a5a7e1e9822e8c59a96b29a9e5b1 }, u256 { - low: 0xdc66a27b6a325333116e8a6429deb984, high: 0x1134b1138513d91e48622a674a294067 + low: 0x8fe23f44f62486de33f25f2b367d5b52, high: 0x6bef62914a71222c6181b9997ff4c7db }, u256 { - low: 0xbdce29ef674610eb8b279c29a274c0d7, high: 0x23a9a4a9c9c5fef1e76f8a76c74f11cd + low: 0x99952df0fb8f6c869150ad81477881c7, high: 0x1b88b2a9fdc80edf1f936831a77ef38 }, ] .span(); @@ -12231,133 +12200,132 @@ mod msm_tests { array![ ( array![ + -0x1, 0x0, 0x1, - 0x0, + -0x1, + 0x1, + -0x1, + 0x1, + 0x1, 0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, 0x1, + -0x1, + 0x0, 0x0, 0x0, 0x0, -0x1, + 0x1, + -0x1, 0x0, 0x0, + -0x1, + -0x1, 0x0, -0x1, + 0x0, 0x1, + 0x0, + 0x0, -0x1, 0x1, + 0x0, + 0x0, 0x1, + 0x0, -0x1, - 0x1, 0x0, -0x1, 0x0, -0x1, 0x0, - 0x1, + -0x1, 0x0, + 0x0, + 0x1, 0x1, + 0x0, -0x1, 0x0, -0x1, -0x1, -0x1, - 0x1, -0x1, 0x0, -0x1, + -0x1, 0x1, + 0x0, + 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x1, + -0x1, 0x1, - 0x0, -0x1, 0x0, + 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x1, - 0x1, 0x1, + ] + .span(), + array![ -0x1, 0x0, - 0x1, -0x1, + 0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, - 0x1, - 0x1, - -0x1, -0x1, - -0x1, - 0x1, - 0x1, 0x0, 0x0, -0x1, -0x1, - ] - .span(), - array![ - 0x0, 0x0, - 0x1, 0x0, 0x1, - 0x0, - 0x0, 0x1, - 0x0, 0x1, -0x1, 0x0, - -0x1, - 0x0, - -0x1, - 0x1, 0x0, 0x0, 0x0, -0x1, - 0x1, - 0x0, - -0x1, - -0x1, -0x1, -0x1, 0x0, -0x1, -0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x0, -0x1, 0x0, - 0x1, + 0x0, -0x1, -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, 0x1, @@ -12369,373 +12337,368 @@ mod msm_tests { 0x1, 0x0, 0x0, + 0x1, + -0x1, 0x0, -0x1, + -0x1, + 0x0, 0x0, 0x1, - -0x1, 0x1, 0x1, 0x0, + 0x0, -0x1, -0x1, - 0x0, - 0x1, -0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, 0x1, - -0x1, - 0x0, + 0x1, 0x0, -0x1, - 0x0, -0x1, - 0x0, + 0x1, 0x1, ] .span() ), ( array![ - 0x0, 0x1, -0x1, 0x0, -0x1, - -0x1, 0x0, 0x0, 0x1, - 0x0, 0x1, - 0x0, - -0x1, 0x1, - 0x0, + 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x1, -0x1, + 0x1, + 0x0, 0x0, -0x1, -0x1, - 0x1, + 0x0, + 0x0, 0x0, -0x1, 0x0, + 0x0, 0x1, 0x1, + 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x1, - -0x1, 0x0, 0x1, + -0x1, 0x0, + 0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, -0x1, -0x1, 0x1, 0x0, - 0x1, - 0x0, - 0x1, - -0x1, - 0x0, - 0x0, 0x0, 0x0, 0x1, - -0x1, 0x0, -0x1, 0x0, - 0x1, -0x1, 0x1, -0x1, 0x1, + 0x1, + -0x1, -0x1, -0x1, -0x1, - 0x0, -0x1, - 0x1, -0x1, 0x0, - 0x0, + 0x1, 0x0, -0x1, - -0x1, - ] - .span(), - array![ - 0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x1, 0x1, 0x0, 0x1, + 0x0, -0x1, + 0x1, + ] + .span(), + array![ -0x1, -0x1, -0x1, 0x0, 0x1, + 0x1, -0x1, 0x0, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, 0x0, + 0x1, -0x1, 0x0, 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, -0x1, + 0x1, 0x0, + 0x1, -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, - 0x1, - 0x0, 0x1, -0x1, + 0x0, -0x1, - 0x1, - -0x1, + 0x0, 0x0, 0x1, 0x1, - -0x1, 0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, 0x1, 0x0, - 0x0, + -0x1, -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x0, + 0x1, 0x0, - 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, -0x1, + -0x1, + -0x1, 0x1, - 0x1, + -0x1, -0x1, 0x1, 0x1, + 0x1, + -0x1, -0x1, 0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, + 0x0, + 0x1, ] .span() ), ( array![ - -0x1, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x1, - -0x1, - -0x1, - 0x0, - 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, + -0x1, + -0x1, + -0x1, 0x1, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, 0x1, + -0x1, + -0x1, 0x0, 0x1, 0x0, + -0x1, + 0x1, 0x0, -0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, 0x0, 0x0, - 0x1, -0x1, 0x1, - 0x1, - 0x0, 0x0, 0x1, - 0x0, -0x1, - 0x0, 0x1, 0x0, -0x1, - -0x1, + 0x0, + 0x1, -0x1, 0x0, 0x1, + 0x1, 0x0, -0x1, - -0x1, 0x0, -0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, + 0x0, + 0x1, -0x1, + 0x1, + 0x1, + 0x0, + 0x1, + 0x1, + 0x1, -0x1, 0x0, -0x1, 0x0, 0x1, -0x1, + 0x0, -0x1, + 0x1, ] .span(), array![ -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, - -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x1, 0x0, + 0x1, 0x0, - -0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, + -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, 0x1, + 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, -0x1, - 0x0, - 0x1, - 0x0, -0x1, 0x1, 0x0, 0x0, + 0x0, -0x1, + 0x0, -0x1, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x1, + 0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, 0x0, - -0x1, + 0x1, 0x0, -0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x1, - 0x0, + 0x1, -0x1, - 0x0, -0x1, - 0x1, 0x0, 0x1, - 0x0, 0x1, -0x1, + 0x0, -0x1, 0x1, 0x1, - 0x0, - 0x0, -0x1, + 0x1, 0x0, - 0x0, -0x1, + -0x1, + -0x1, + 0x1, ] .span() ), @@ -12745,177 +12708,177 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x7be0c255fe566085c9410797, - limb1: 0xe22484effb178dec7f92c388, - limb2: 0xcfee488ee792aabdbcc9ff69, - limb3: 0x146d379395b91ddeca445947 + limb0: 0x516627f62f66139ade147de8, + limb1: 0x1e44188c82aaa402e1749d3, + limb2: 0xa77b83bb7b2eedb45572088f, + limb3: 0xb49670488aae7a02bccb3b1 }, y: u384 { - limb0: 0xf3958b00683c89da3d85288a, - limb1: 0x5b316971335bbda254441834, - limb2: 0xb1cef30d6c917f19ede9c8cb, - limb3: 0x7ecd1e0c69d3d00f5b333b + limb0: 0xadc7d709a90f8b42d440913, + limb1: 0xb4f8fb9cb9d59de7353c3396, + limb2: 0xae0acf35b991b6ef70d05168, + limb3: 0xe6aac1a0919e1fc29a53c73 } }, Q_high: G1Point { x: u384 { - limb0: 0xf37a7c54cdfdefa3946c0101, - limb1: 0xe7559ea638b8351a3ec9f806, - limb2: 0xe127f2921a14121a1bf16a68, - limb3: 0x14e6d36671923613a58d38c7 + limb0: 0x9e0d2211e82b75b6caddaf9, + limb1: 0x64e40bbf86335fc7f1316106, + limb2: 0xb114fd0d74725b1b535109e9, + limb3: 0x252367a4b8aeb62b0baface }, y: u384 { - limb0: 0xca8d5debea1e8e67af1d62c6, - limb1: 0xb15bbb01f0139dab2daa8909, - limb2: 0xe0e4278aa001f97793d68acd, - limb3: 0x718089a1435321d3d7012ea + limb0: 0x3c7cd249d3e1c51efd20a429, + limb1: 0x6e783fd45d2e83f9fe81e786, + limb2: 0x58db74d33ec30b29f13c90b7, + limb3: 0xb7142b29a44bb780a08f835 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x9e7b965e3af6a96327e9dbb6, - limb1: 0xb2f36481df0bcdbddc43540e, - limb2: 0x6ab5c90ea56897aca2e48139, - limb3: 0x523f170656082ed490999b6 + limb0: 0xfb07eba478bb9911c34f9391, + limb1: 0x197e2ff9b1e2a38da95974d3, + limb2: 0xf05a99fdd8b91fe7f2513a9e, + limb3: 0x1d6e2acb9341922cc3dc650 }, y: u384 { - limb0: 0xe6675df5160a7a0f971eba03, - limb1: 0xfdca52c7e8fd673d507ee449, - limb2: 0x79f9496900d70c868aea1f2c, - limb3: 0x6fa791d849b9a904b414ea7 + limb0: 0x400913dbee9a3ea1750f00e0, + limb1: 0x2f53365c2843c21ae6ca891c, + limb2: 0xa1192a43d35fb96f2ccce6dd, + limb3: 0x7abdc96a42725e6cffb2cbd } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x8ad65d6b7313b7fa1db7d8ed, - limb1: 0x36bf51c702a8aacf32752b40, - limb2: 0x44cfc8ecc8ab930a480b24b0, - limb3: 0x6174f81c7e2c3b119472681 + limb0: 0x61923015756b1b5c1cb32a6a, + limb1: 0x9a444ffce584f4870754a900, + limb2: 0x1f1c6bb7c5e1c8776d445157, + limb3: 0x1048191feb4cc152a8413f43 }, u384 { - limb0: 0x26772ba534ce81a76ab1039d, - limb1: 0x3b490357a9c3098437545d08, - limb2: 0x25d0a121e7f5c6ffc973c706, - limb3: 0x79c9523d46b9fd40e10be85 + limb0: 0xa69037c04b6f177b9e6b0143, + limb1: 0x91df923d87ebb6f1f21032e1, + limb2: 0x133cf44eb49749278bfbe2cf, + limb3: 0xd2d5ce6963d8bbdeac12a63 }, u384 { - limb0: 0xa08e6b15ec3a8138ca1d7923, - limb1: 0xb54adaadd7cdd688a6a26a51, - limb2: 0xdb486d3b71dcbaf88afec270, - limb3: 0x37a818f1469de764583089b + limb0: 0xa77c466fce5defec8bebf98, + limb1: 0x39bf0dc1bf82962e23335f6, + limb2: 0xfe622ba9d26f8c404b3564f3, + limb3: 0x64ee29f8fb56ddc934ab0dd }, u384 { - limb0: 0x7f1d3d2d61a616a38a4072e7, - limb1: 0x6730d2a0f6b0f622bb4c933e, - limb2: 0x434bacd764774b84f38512bf, - limb3: 0x1a0111ea397fe69a4b1ba7b6 + limb0: 0xe2a73043edebea7bcca82c0f, + limb1: 0xb39869507b587b125ca82560, + limb2: 0x21a5d66bb23ba5c279c2895f, + limb3: 0xd0088f51cbff34d258dd3db } ] .span(), a_den: array![ u384 { - limb0: 0xcdcca20e4247c102589d62e4, - limb1: 0x69492db76ee8ebef961c07a2, - limb2: 0xdc1d1abbbaab94a510404690, - limb3: 0x1870a95971f51bb1ab0fceb + limb0: 0x7e781d6c9ec7df0290c95117, + limb1: 0xe510184e2d61b02f75260b93, + limb2: 0xe39649900319f6cbb101335e, + limb3: 0x112a5eda3b7c3d049bfd2643 }, u384 { - limb0: 0x203e83295531ad59d8c4f3ff, - limb1: 0x7819c2328d99d15e24de18a, - limb2: 0xd3cdbb7ea2da1cccba9b0e73, - limb3: 0xad8c56482c5200688800de3 + limb0: 0x47efd789cd4649959918a8ab, + limb1: 0x27ec678a11711b07258f9106, + limb2: 0xf9c97978795f02b781f6494a, + limb3: 0x174ba00d3215075071bd40bf }, u384 { - limb0: 0x1d27b285c8a82171f75c05fe, - limb1: 0x7f07398a9563eac0175967e7, - limb2: 0x2a646758e78d25b8071b7f3e, - limb3: 0xcad1d7daa84d9240fa789a2 + limb0: 0x133868f2a5ad2a8a3ff38b33, + limb1: 0x618ac3f441251e9af9e57c02, + limb2: 0x1b90b87d8c68ce7316ae2f58, + limb3: 0x3bb38b9efe4231e76e14cb8 }, u384 { - limb0: 0xcf892f16a550bd3977cb0369, - limb1: 0x1d86fe765b1ed779643997a1, - limb2: 0x69f2cc08ed67e7eee1c1c402, - limb3: 0xb3a1b23d590943d5b2ffa6b + limb0: 0x6c5889a446c9363ac8c423bd, + limb1: 0x444fa27910014ea4c12d7b61, + limb2: 0x21b564e49a7085de6dcf14d1, + limb3: 0xd1188c2f2b785d2d9e1026d }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x1e3b175b87d68a10cffc61f7, - limb1: 0xe2bbe81f7661eaa1af95a86, - limb2: 0x94ce564bd69a5876da557c41, - limb3: 0x33ebb6d2d3f278981e7803b + limb0: 0xa790c0df75ce58b31cc62597, + limb1: 0xf71a296bb167a923ebe73230, + limb2: 0x5991f75c9973191ee08b0c8c, + limb3: 0x9278faddc95d6cfe88f2404 }, u384 { - limb0: 0xe24630cc4bd7e01c4cec5453, - limb1: 0xaadeac00b00cd4284d1e3672, - limb2: 0x3049a10f480d39bbcad99f82, - limb3: 0x19924d54b4391bcb90eb674a + limb0: 0xab00e3f59694c43dbcd01f57, + limb1: 0xd1e5713a3d5a22197a36259, + limb2: 0xb0fdbfc8be5d85820991a2e7, + limb3: 0x188adfd04217360942278b0f }, u384 { - limb0: 0x66f4322850e567cbc4431982, - limb1: 0xe52d33e0a514a6a45a69ac7c, - limb2: 0xc7d7c73727908480bc129f72, - limb3: 0x65b7429c2c44308a1edb13f + limb0: 0x2150a8c9423a84f19ebebdec, + limb1: 0x45fd0b10c1d657d4c953f211, + limb2: 0xc09957df68e86eacfe00227a, + limb3: 0x9f68496dc16ac11917eb313 }, u384 { - limb0: 0x5697ad6306e2114a82723f03, - limb1: 0x5100f7c476944181855c5852, - limb2: 0xc5adc24f157545288da01ffc, - limb3: 0x146b5d468d5d142b75162c7 + limb0: 0xe66e36320f827d294090a11d, + limb1: 0x54d038a401dfe920efd8b2c0, + limb2: 0xa72f20a7b2ccd65604dcd3aa, + limb3: 0xc9060e0bc33a2e4d12727d2 }, u384 { - limb0: 0xe33e4f400344b68a314c7866, - limb1: 0x52022799f1d039db198e8de7, - limb2: 0x539a876f28a648d6d8946fd3, - limb3: 0x117bbbe3c9519823014c4c73 + limb0: 0x3b884267d19c9bb70697e6bc, + limb1: 0x3f891ad204775d55906ffd6f, + limb2: 0x96f54ca9c490383c94251e6c, + limb3: 0x1605b581914455cc01233c91 } ] .span(), b_den: array![ u384 { - limb0: 0x37328839091f040962758b90, - limb1: 0xa524b6ddbba3afbe58701e8b, - limb2: 0x70746aeeeaae529441011a41, - limb3: 0x61c2a565c7d46ec6ac3f3af + limb0: 0x973875b307217c0a4325ef06, + limb1: 0xc5debbf6c824d47597402e50, + limb2: 0x7c1cc9143794424dcfaa7fc, + limb3: 0x10a757947af126ddd9bd49a3 }, u384 { - limb0: 0xcfa60ca59ac7b56763142551, - limb1: 0xb6d59debacb57e336a8b8629, - limb2: 0xbeb412326f127adf6e7270c, - limb3: 0x116203a7d194997fd6e48fd9 + limb0: 0xbc35e28071c26566463a2ab, + limb1: 0x6a1f264561b189b03a3a441d, + limb2: 0x1d42df5bb816284f2d49ecea, + limb3: 0xf2b4a761bd46972e5a20bdd }, u384 { - limb0: 0xc34aca1768a185c7dd706d4d, - limb1: 0x94ec13895edeb4dc3eb99f9d, - limb2: 0x6645f08c39bd4b5b28e8ea3a, - limb3: 0x18b3640c70937df5f3827ed2 + limb0: 0x4ce1a3ca96b4aa28ffce2ccc, + limb1: 0x862b0fd104947a6be795f008, + limb2: 0x6e42e1f631a339cc5ab8bd61, + limb3: 0xeece2e7bf908c79db8532e0 }, u384 { - limb0: 0x5a9d5e691d8bb5e837c9c5dd, - limb1: 0x783454efe4b353b10856662b, - limb2: 0x409c9e080bd3e8dba3c243d9, - limb3: 0x146e653ab3e1bc163c553ee3 + limb0: 0xcd3243fe45eeb7edb3da8ab5, + limb1: 0x27ecfcf08004fe7a3c83f91b, + limb2: 0xe3d48373a3ed773b81336125, + limb3: 0x116e5e11935a871b6d49e08b }, u384 { - limb0: 0x203e83295531ad59d8c4f403, - limb1: 0x7819c2328d99d15e24de18a, - limb2: 0xd3cdbb7ea2da1cccba9b0e73, - limb3: 0xad8c56482c5200688800de3 + limb0: 0x47efd789cd4649959918a8af, + limb1: 0x27ec678a11711b07258f9106, + limb2: 0xf9c97978795f02b781f6494a, + limb3: 0x174ba00d3215075071bd40bf }, u384 { - limb0: 0x1d27b285c8a82171f75c05fe, - limb1: 0x7f07398a9563eac0175967e7, - limb2: 0x2a646758e78d25b8071b7f3e, - limb3: 0xcad1d7daa84d9240fa789a2 + limb0: 0x133868f2a5ad2a8a3ff38b33, + limb1: 0x618ac3f441251e9af9e57c02, + limb2: 0x1b90b87d8c68ce7316ae2f58, + limb3: 0x3bb38b9efe4231e76e14cb8 }, u384 { - limb0: 0xcf892f16a550bd3977cb0369, - limb1: 0x1d86fe765b1ed779643997a1, - limb2: 0x69f2cc08ed67e7eee1c1c402, - limb3: 0xb3a1b23d590943d5b2ffa6b + limb0: 0x6c5889a446c9363ac8c423bd, + limb1: 0x444fa27910014ea4c12d7b61, + limb2: 0x21b564e49a7085de6dcf14d1, + limb3: 0xd1188c2f2b785d2d9e1026d }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -12924,26 +12887,26 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x4a72bdb9dda8d602554d32a3, - limb1: 0x8ff8904e9cf7dfae7ee30908, - limb2: 0x16b44d21027a577b37d304a2, - limb3: 0x165a623129de498b392d22cf + limb0: 0x7e6a71a5317d64f9a17e2c04, + limb1: 0xebf81842266e110af9c13b7e, + limb2: 0x5536e9908e7f2ed0eb45a9b8, + limb3: 0x16ef60fc2899f1a18ec5fa63 }, u384 { - limb0: 0x3a0a89b7b7cfb02f7d79b1b5, - limb1: 0x49cd1827a1ce3f741e230ba0, - limb2: 0x258f3bd7fcc4b69c8504d4ed, - limb3: 0x11bf8bee16715afc326be56a + limb0: 0xebfe0f13602bc86a8e957336, + limb1: 0xe676e5cc34ca3fcb2fedad3a, + limb2: 0x2ee1eeb1ce88ef84f763e42f, + limb3: 0x133450a6952b19f18aa98381 }, u384 { - limb0: 0x5dd71a60b7025370ec1f50f2, - limb1: 0x4dad443d3e9782106aedfb9a, - limb2: 0x1a69b058f0cd2e96e1d7c1e9, - limb3: 0x138fd40dee714ac1fe54ed71 + limb0: 0x1bdbbaa5f7a32ccc4610f7ef, + limb1: 0x82f74f1c2d4775eb32ac83c5, + limb2: 0xabcd2a30a46c8547f387bb1d, + limb3: 0x19a1dd9a312a16272458f15d }, u384 { - limb0: 0x31af7f10597c1b657452e8f9, - limb1: 0xb39869507b587b12408ceeba, + limb0: 0xcf152f74099e5062943b3a0d, + limb1: 0xb39869507b587b126ed592ba, limb2: 0x21a5d66bb23ba5c279c2895f, limb3: 0xd0088f51cbff34d258dd3db } @@ -12951,107 +12914,107 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x86b4a5089f7ad8c4b6e2b81a, - limb1: 0x9aaa56c98b088bc679791cd9, - limb2: 0xc1e481d7ff2e1bad162850be, - limb3: 0x5224fb239c06af98eddd823 + limb0: 0x309866b091db19f6aacf96a8, + limb1: 0xde45c8009f51491eec8a41dd, + limb2: 0x7c97b3f4b17ff519425dcc46, + limb3: 0x8b56a0ce0d69134c77f62e2 }, u384 { - limb0: 0xbd691d6bdd423325bdc73d23, - limb1: 0xac63308a26c54875f60beb80, - limb2: 0xac09097c9ea4275448889a28, - limb3: 0x185982c30d23cc9e11906c47 + limb0: 0xd784cc6f4ffcfbd13febce4d, + limb1: 0xf6924e107dfe3dd150511a65, + limb2: 0xf9c261e019085fc4547759b6, + limb3: 0x15c12252cb2a8da17a3d1c93 }, u384 { - limb0: 0xf090bdd401993a8300e05713, - limb1: 0x23d34a25de54d9580f8f47d4, - limb2: 0x48751b03f6b5a8dc6f8e9bc7, - limb3: 0x9bd3b8c94ac71488032be99 + limb0: 0x7b223dd7d53e5d0cc4f59830, + limb1: 0x9c0e8ad5b06189e921500398, + limb2: 0x2883f3c23231b8e0a73b4d3f, + limb3: 0x192bb4e1e17058b606dbe98e }, u384 { - limb0: 0x57ef7517d5a92e1baca009ff, - limb1: 0x1855e4c01d7e304ba5026323, - limb2: 0x58b92205bae68092829a5903, - limb3: 0xac07f50f9b77c087fe71aeb + limb0: 0xb3dddf7957ac927a3a2ac6ac, + limb1: 0xe14fd84251f8991cfe13642e, + limb2: 0x181beb92a12d18776ff01376, + limb3: 0x1608b94d2fd7821054f2bb50 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x7d461264a0f15365b45ecee7, - limb1: 0xca581423ed4a21c9e0c4589, - limb2: 0xd83384322f29024a630cc09b, - limb3: 0x73bb12e977ab4d15bdc6144 + limb0: 0x894bd4809a79dcfceacb9ce5, + limb1: 0x52024ce0632c94fcc76a3fef, + limb2: 0x7e67e36f7022a606fb08e90c, + limb3: 0x14dfc7dc8fdb797b002148bf }, u384 { - limb0: 0x6a66c0a8f389d0023c87be1c, - limb1: 0x80e6ab4b69651cb4258d4325, - limb2: 0x49bc06daeac3ab2237a1c372, - limb3: 0xc8c81ee1f830cc00451ec44 + limb0: 0x3f79608916dc175b284b8b6a, + limb1: 0xefbbb9cfe5a747e5dce9ce90, + limb2: 0x1fbaccfc82245226e361e3d0, + limb3: 0xb12a75d99d20664daea0d3f }, u384 { - limb0: 0x125dcee078605e5142716084, - limb1: 0x2a6943fa5516b184486a8570, - limb2: 0x991159b1c86ec9b03191eccc, - limb3: 0x6f65d1d4eb052a6edaa3a51 + limb0: 0xc68ca2ce994ccfe9b42fa820, + limb1: 0xd0791052022660a01b23e5eb, + limb2: 0xce57e48fed7118ee38ef47ba, + limb3: 0x43dafecb8bf50df9cca8bce }, u384 { - limb0: 0x8a1b8dd401446ae957d0dad, - limb1: 0x2e5bb75164ded13e93b9f590, - limb2: 0x3d9e2beb3239b7e00231aea2, - limb3: 0x11b73daa8c444b30bfd56b26 + limb0: 0x47b829279ad3b84822fe235b, + limb1: 0x5abc92ba445c854ba4c83698, + limb2: 0x90985884fbc6c346c3420330, + limb3: 0xe94438e514d1f0c05271dc1 }, u384 { - limb0: 0xada0d10ce16ec5415a1bbf5f, - limb1: 0x5ca2d140f092ef9947642a94, - limb2: 0x5c1e08b05fdb5e279247c0e7, - limb3: 0x18dc884ae62ef56db9b92f02 + limb0: 0x221b6adfc4f7490f4af33307, + limb1: 0x3294af504efc26984a3bb6be, + limb2: 0xa93d2c7b0df3a0c9d67b5651, + limb3: 0x1eebf0be139f0b81f178b9 } ] .span(), b_den: array![ u384 { - limb0: 0x1ad294227deb6312db8ae068, - limb1: 0x6aa95b262c222f19e5e47366, - limb2: 0x792075ffcb86eb458a142fa, - limb3: 0x14893ec8e701abe63b77608f + limb0: 0x110d9ac28d6d67daab3eaff5, + limb1: 0x11e64d6186942e57937d0776, + limb2: 0xaf1322fb618888e015f21e5c, + limb3: 0x8d4964949da5e38d2e1e3d3 }, u384 { - limb0: 0xe1a875b0470bcc96f71df48b, - limb1: 0x7bfa4a45b7023f6b7c2bae06, - limb2: 0xe6411f6c4d2abac247933064, - limb3: 0x1362d54d880f7ea964eeb9fb + limb0: 0x4a1731be11f6ef44ffb03933, + limb1: 0xa4b6c05f13e614d8e540699b, + limb2: 0x1d2680fa36bb9c82774e2e9d, + limb3: 0x901538c802a82b707a17b2d }, u384 { - limb0: 0x10eef7504c65ea0c0381b1a1, - limb1: 0x281c55f682a26f3c1f911f55, - limb2: 0xde88bf38765f57eccab55c5d, - limb3: 0xcf3dc481931de87b5af52ae + limb0: 0xd88cf76026fc743313d760bf, + limb1: 0x3aa7b373dd734538293c0e65, + limb2: 0xd82cc8829b6100f3c25dfcc0, + limb3: 0x16ab9dc8d941af093a1caf15 }, u384 { - limb0: 0x351e79683c2091336963356b, - limb1: 0x94d117290a5056d0eed6a968, - limb2: 0xe17d5d178650d2722d0ca20b, - limb3: 0x16233b0be71e7481435e9c1a + limb0: 0xec13e496c29063df937bb157, + limb1: 0x2df2b1270320cb2688d3d29b, + limb2: 0x13245bb908ce7468278ee1e4, + limb3: 0x12d51982f3b4e5a739f75900 }, u384 { - limb0: 0xbd691d6bdd423325bdc73d27, - limb1: 0xac63308a26c54875f60beb80, - limb2: 0xac09097c9ea4275448889a28, - limb3: 0x185982c30d23cc9e11906c47 + limb0: 0xd784cc6f4ffcfbd13febce51, + limb1: 0xf6924e107dfe3dd150511a65, + limb2: 0xf9c261e019085fc4547759b6, + limb3: 0x15c12252cb2a8da17a3d1c93 }, u384 { - limb0: 0xf090bdd401993a8300e05713, - limb1: 0x23d34a25de54d9580f8f47d4, - limb2: 0x48751b03f6b5a8dc6f8e9bc7, - limb3: 0x9bd3b8c94ac71488032be99 + limb0: 0x7b223dd7d53e5d0cc4f59830, + limb1: 0x9c0e8ad5b06189e921500398, + limb2: 0x2883f3c23231b8e0a73b4d3f, + limb3: 0x192bb4e1e17058b606dbe98e }, u384 { - limb0: 0x57ef7517d5a92e1baca009ff, - limb1: 0x1855e4c01d7e304ba5026323, - limb2: 0x58b92205bae68092829a5903, - limb3: 0xac07f50f9b77c087fe71aeb + limb0: 0xb3dddf7957ac927a3a2ac6ac, + limb1: 0xe14fd84251f8991cfe13642e, + limb2: 0x181beb92a12d18776ff01376, + limb3: 0x1608b94d2fd7821054f2bb50 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -13060,10 +13023,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xb47eb93015304f8e58948ed5, - limb1: 0xeb3722bb5b66ddeefb83dfab, - limb2: 0x5314b1922580d1216351f4e8, - limb3: 0x5630b2019451db73f501369 + limb0: 0x39fe548b94f53f879fc26627, + limb1: 0x6bb46171e1c51be01e896e7f, + limb2: 0x8175d7be62e9492b6fe1a714, + limb3: 0x253d04fefabf3ea245c9a06 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -13075,66 +13038,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x77a208d2dbe87d2098283189, - limb1: 0x11543b0f7e54ac6564207d95, - limb2: 0x244607e4a94535fdb8ac788d, - limb3: 0x167cde58c25500cc8d626b67 + limb0: 0x2b9dcfd69cc5cacb65755ec0, + limb1: 0x6bb49375c23178206b27de4e, + limb2: 0x857e3f40aa2c7ac68132a9aa, + limb3: 0x8bbbe492de43746536042d4 }, u384 { - limb0: 0xd0b1ed4c6b0966f943a9789f, - limb1: 0x3418a219d59de970224ab3e7, - limb2: 0x3ab99e0e0971ed43283439dc, - limb3: 0x19f75efd9c0d1433a7a07cee + limb0: 0xac6b423a22c0af92d0023c21, + limb1: 0xe8ce96e7be9af2ce84212a24, + limb2: 0xa1dc15cc174bd081ade2ce37, + limb3: 0x15d7f8c334c0e214ce22e696 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x56eb5da4c6fa5134384777c7, - limb1: 0x8a8aae22bda83eb57df3670e, - limb2: 0xf9c57349dc2f377373839bc6, - limb3: 0x192da105b2d1e7cb2c7af2cc + limb0: 0xc4268fe6026dc6f58985d6a9, + limb1: 0x297b9f6d66eb50b525a6a8c6, + limb2: 0xd91be299c878218fe67397aa, + limb3: 0x4961364b24031d3717343bc }, u384 { - limb0: 0x568fab693d26af416d155ee9, - limb1: 0xd540a082bb5d50858e4d656d, - limb2: 0xabf46c1d94a67f46907dae66, - limb3: 0x99c744ef3025a740f81270 + limb0: 0x445dbb3775bbac283ea3de70, + limb1: 0x4af9a49cddd9469acc001b64, + limb2: 0x1366fdb23d72c2439bc9c00, + limb3: 0xb0ac3206beb0e5b540a2bf4 }, u384 { - limb0: 0x1948fd002d9f6af69accc633, - limb1: 0x9a3d9bbda2d8c304e553b6ab, - limb2: 0xa0458f12dc8132579f5bd3c8, - limb3: 0x91797495132698f312e69fa + limb0: 0x2dc98c0edaf66f718ec2fa7f, + limb1: 0x66790c67119be09e4c54232b, + limb2: 0x5152b2bdecfd0b688de8a868, + limb3: 0x12f641feec35c56730e7fd32 } ] .span(), b_den: array![ u384 { - limb0: 0xca8c234c41a4f48260a1c623, - limb1: 0xfbe745b153fcf29347df659, - limb2: 0xc735190c77aef5680822a9f6, - limb3: 0xbf043a45cd44f635436b679 + limb0: 0xfd233f5ab9182b2d95d5d055, + limb1: 0x47a17b361214ea5d8df37939, + limb2: 0xd2ad502b443a9f95114593ea, + limb3: 0x8ede73a7e10f67f0265639b }, u384 { - limb0: 0x2ecbb5327e289be50ea6e27b, - limb1: 0x9ad010847264c3542d26cfa3, - limb2: 0x210371b1f861d27dc641af32, - limb3: 0x19da4637c3b49cffbd2efc96 + limb0: 0x9db108e95d05be4b4009f083, + limb1: 0x6da7e3bc1658e8cdb480a896, + limb2: 0xbd8d50aa2fc95f77dcfc00a1, + limb3: 0x95cad4e2683d4845738a337 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x77a208d2dbe87d2098283189, - limb1: 0x11543b0f7e54ac6564207d95, - limb2: 0x244607e4a94535fdb8ac788d, - limb3: 0x167cde58c25500cc8d626b67 + limb0: 0x2b9dcfd69cc5cacb65755ec0, + limb1: 0x6bb49375c23178206b27de4e, + limb2: 0x857e3f40aa2c7ac68132a9aa, + limb3: 0x8bbbe492de43746536042d4 }, u384 { - limb0: 0xd0b1ed4c6b0966f943a9789f, - limb1: 0x3418a219d59de970224ab3e7, - limb2: 0x3ab99e0e0971ed43283439dc, - limb3: 0x19f75efd9c0d1433a7a07cee + limb0: 0xac6b423a22c0af92d0023c21, + limb1: 0xe8ce96e7be9af2ce84212a24, + limb2: 0xa1dc15cc174bd081ade2ce37, + limb3: 0x15d7f8c334c0e214ce22e696 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -13143,12 +13106,19 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xbaf5971475ca25b2db2e6f82, - limb1: 0x6828953a8689dbf37e70f7ff, - limb2: 0xef6a77db7acbf88ecb8ebaec, - limb3: 0x3f3e3b77f2c428f360f0c4a + limb0: 0xd7ad140db07332a2dbe6ae57, + limb1: 0x5bd72de1e0de9ce8bffa260b, + limb2: 0xf157b2f2d493812ed1f4f6c3, + limb3: 0x751babf8a2828b3f6b31d37 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0x2e1fca279bf7457b2b8a2ab9, + limb1: 0xd98ae7eb05f0a82eee55ddd4, + limb2: 0x480b7de9ae05d367fd3e5b0c, + limb3: 0xe85746059e8c5c63af4ef9 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 1 @@ -13156,16 +13126,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xf68e4405a996e7d10edbf98f, - limb1: 0xdeb795e78160c903414f43b4, - limb2: 0x7de2b5b9bced49cbde157b5f, - limb3: 0x1842c4d18bfb6beb923874c3 + limb0: 0xde11b024fe1cc93378ef3db7, + limb1: 0xa8fbf786d4f8db4a588adc0d, + limb2: 0xcc75c6f6cc70af6acc9f22d8, + limb3: 0x15f837f9182d49e576a52cd8 }, y: u384 { - limb0: 0x3dcafad1bb0e4417fedc09e6, - limb1: 0xae5d11a31e63a04f2e928b8e, - limb2: 0xaca5f256aac36a071fb453ce, - limb3: 0x18298a4d2df0abdd5cb9f2e9 + limb0: 0x1862aa6d91c7faeaf0474a00, + limb1: 0x2ed96b9139da00b300213386, + limb2: 0x6a5b4b2e719c2ee70aeac528, + limb3: 0x16889471f9cadaba06ac05dd } } ); @@ -13177,74 +13147,74 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xfa3128cbecb07dbee7bb6129, - limb1: 0xb9270366b249c467c3314c19, - limb2: 0x15f76d304423a810da510ba3, - limb3: 0x12837b91315693a438a860f7 + limb0: 0x330cbaf17ca9ea4cd5cfa869, + limb1: 0xf247bc052822916267bca05f, + limb2: 0xf520b45a74fd8f61db4d3870, + limb3: 0x9b473c77bc0ef0e90ac7341 }, y: u384 { - limb0: 0xf95acfb21ccc8020ec4af849, - limb1: 0x438cf399ded73272f8e1be9e, - limb2: 0xe18fba617635b5d02572c2d6, - limb3: 0x6419d25b21c91cb7e816a17 + limb0: 0x474fc890b2e2af26942f5e02, + limb1: 0x1cac8d15a0a7df2fadf2401d, + limb2: 0x7100eb80fb03a77352e4b971, + limb3: 0x2a9d00a2f4da1cda6e9b034 } }, G1Point { x: u384 { - limb0: 0x888c7d5930049fcb4caf74d8, - limb1: 0xdfb36d5be8f11be9a561ddd4, - limb2: 0x61a3932a88ddf701ca978256, - limb3: 0x1825c0a7cbe4778ca87156cb + limb0: 0x1e748274f5927a9b9cbef55d, + limb1: 0x58991b87eb4dd65d8d7a82dd, + limb2: 0x73fa22608f5a99ee4c65fa6c, + limb3: 0x13a0221c0e092f7c42db6fc6 }, y: u384 { - limb0: 0x688b9c389c72628bb4a75c05, - limb1: 0x4c564ec83401b6120cd1e6a1, - limb2: 0x46922ec0e65b03ca8230d85c, - limb3: 0x544221fbeadbaa22a0d5621 + limb0: 0x30d5862748463b51b7f772eb, + limb1: 0x119794da280b697436488181, + limb2: 0x2f0b9d1d48b97b25c0b592ba, + limb3: 0x1896f8bcf05a09edd01165ce } }, G1Point { x: u384 { - limb0: 0x2a39ae6e29dff313f0525d1f, - limb1: 0xcf44809ef1497ef516b156ad, - limb2: 0xb309cf3aadcc2da786cd5f58, - limb3: 0x166fae0c1707ec6fc8e05d65 + limb0: 0x3666ce59a2b1a481a2cc1294, + limb1: 0x9306f38ac7a51103506f551d, + limb2: 0xf6e354144ca9099a2b658bd6, + limb3: 0x18e119f2ed26cab15f630591 }, y: u384 { - limb0: 0xcad978d35fc759b4a64d73a1, - limb1: 0x63879da02f01a662269b81e9, - limb2: 0xcd5cf2c0f3edbd89f502a685, - limb3: 0x4a909d0eb362d49dfd2f82b + limb0: 0xe3d219a5d8292e6dd7ab7311, + limb1: 0x8c6847c3410650556f42ef7a, + limb2: 0xff85b0aca692242364953b5b, + limb3: 0xe2d615b03a91524b6004ce } }, G1Point { x: u384 { - limb0: 0x9224aa8b08eff34e92a92e69, - limb1: 0x28cd307e465afe68da19daa0, - limb2: 0x4f13906441ac14f0a36fdc02, - limb3: 0x692fba29ad39fa54602328 + limb0: 0x68268e6d10bae456d3ff879c, + limb1: 0x77c9caa0d3575bc2454c6f73, + limb2: 0xd1e6682301e000b86b7cf009, + limb3: 0x17709428b07c96064594ff0c }, y: u384 { - limb0: 0xd8a7c2476fceba33692ec2c7, - limb1: 0x14c0d019fda0921ca6b7c81a, - limb2: 0x4eedaef34bd441ed231223a4, - limb3: 0xcac242fcd7cbeaf64589f3d + limb0: 0x6e06a70834de2ac6d1af0a37, + limb1: 0x6d1f38b57e775827cd40f466, + limb2: 0x2b459ad2c536933e513bbfe8, + limb3: 0x109cbf1c1f6c37880d019568 } }, ] .span(); let scalars = array![ u256 { - low: 0xfa999f9b86de3365d8a230de02969326, high: 0xa6a6d6bddfae808afd8643211035083 + low: 0xa7c0211cfb0a434ec711d9f63ce0ffa8, high: 0x569c65c7d9c95da705f36cfc56fd4e50 }, u256 { - low: 0xecb3d561bdf0b015f305ee95afb120f4, high: 0x2e3e5e3101a4f7a165264961ab4414ae + low: 0x961614f7bd1b859e729ace46f5413dde, high: 0x17228117ca528a9520ddcbc343e654c0 }, u256 { - low: 0xf520f49ef1c8461dbc24fd0a8aa1e4, high: 0x51f7c017df8693ce453432cdffeb5d5f + low: 0x2d3a34881a929ffb11bedc7dabfa4ed3, high: 0x6c63c11a63fd80e3e1a4355c7e3be5e0 }, u256 { - low: 0xe695f8baba2338fe4ae302f3b31e9be8, high: 0x495328ebc069c542240397213a082921 + low: 0x1768958b1d3839bb29a0c7eb5d138388, high: 0x786b9ff9776051fc9f34a6705ef4f52 }, ] .span(); @@ -13252,40 +13222,35 @@ mod msm_tests { array![ ( array![ - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, 0x1, 0x0, 0x0, + -0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x1, 0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, 0x0, 0x0, + -0x1, 0x0, - 0x0, - 0x1, -0x1, - 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, + -0x1, + 0x0, + 0x1, + 0x0, 0x1, -0x1, 0x1, @@ -13293,128 +13258,135 @@ mod msm_tests { -0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, - 0x1, - 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, 0x1, 0x0, + 0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, + 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x0, -0x1, - 0x1, + -0x1, -0x1, 0x0, 0x0, - 0x1, + -0x1, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, 0x0, -0x1, 0x0, 0x0, 0x0, - -0x1, - 0x0, - -0x1, 0x1, - 0x0, + 0x1, + 0x1, -0x1, -0x1, -0x1, + 0x1, + -0x1, + 0x1, -0x1, -0x1, ] .span(), array![ 0x0, + -0x1, 0x0, - 0x1, 0x0, 0x0, - -0x1, + 0x0, + 0x1, 0x1, 0x1, -0x1, + 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, + 0x1, + -0x1, + -0x1, 0x0, 0x1, + 0x1, -0x1, 0x0, 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, - 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, 0x0, + 0x0, 0x1, 0x1, - 0x1, + -0x1, 0x0, 0x0, - 0x1, 0x0, 0x0, - 0x1, - -0x1, - 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x1, + 0x0, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x1, - -0x1, -0x1, -0x1, + 0x0, -0x1, 0x1, 0x0, - 0x1, + 0x0, + -0x1, + -0x1, + -0x1, -0x1, - 0x1, - 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, - -0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, - 0x0, + 0x1, 0x1, ] .span() @@ -13422,505 +13394,503 @@ mod msm_tests { ( array![ 0x1, + -0x1, + 0x0, 0x1, 0x1, - 0x1, - -0x1, 0x0, + -0x1, 0x1, 0x0, 0x0, -0x1, -0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x0, 0x1, - 0x0, 0x1, -0x1, - 0x1, - 0x1, -0x1, 0x1, - 0x0, -0x1, -0x1, - 0x0, - 0x1, 0x1, - -0x1, 0x0, -0x1, -0x1, - 0x0, 0x1, + 0x0, -0x1, -0x1, - -0x1, + 0x0, 0x0, -0x1, 0x1, 0x0, 0x0, - 0x0, 0x1, 0x1, -0x1, - 0x0, - 0x1, -0x1, 0x1, -0x1, - -0x1, - 0x1, - -0x1, - 0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x0, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, 0x0, + 0x0, 0x1, + -0x1, + -0x1, + 0x0, 0x0, -0x1, + 0x1, + 0x0, + 0x0, -0x1, + 0x1, ] .span(), array![ 0x0, 0x0, 0x1, - 0x0, 0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, 0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x0, - 0x0, - 0x0, + -0x1, 0x0, 0x1, -0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, 0x0, + -0x1, + 0x1, 0x0, + 0x1, 0x0, + -0x1, 0x0, -0x1, 0x1, 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x1, - 0x0, -0x1, 0x1, -0x1, + -0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, - 0x0, - -0x1, -0x1, + 0x0, 0x1, -0x1, - 0x1, 0x0, 0x0, 0x0, - -0x1, 0x1, 0x0, -0x1, 0x0, + -0x1, + 0x1, + -0x1, 0x0, 0x0, 0x0, 0x0, 0x0, - -0x1, 0x1, -0x1, - 0x1, 0x0, + -0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, -0x1, ] .span() ), ( array![ - 0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x1, - 0x1, - 0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, + 0x0, -0x1, + 0x0, + 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, + 0x1, + 0x1, -0x1, 0x0, 0x1, 0x1, + 0x0, + 0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, - 0x0, 0x1, -0x1, - 0x0, + -0x1, -0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, 0x1, -0x1, + -0x1, 0x0, 0x0, - 0x0, - 0x1, - 0x0, 0x1, - 0x0, - 0x0, -0x1, 0x1, - 0x0, - 0x0, - -0x1, -0x1, 0x0, + -0x1, 0x1, - 0x0, - 0x0, -0x1, -0x1, -0x1, + 0x0, -0x1, -0x1, + 0x1, -0x1, 0x0, - -0x1, 0x1, 0x1, + 0x0, -0x1, 0x0, + -0x1, 0x0, 0x1, 0x0, - 0x1, 0x0, - -0x1, - -0x1, 0x1, -0x1, 0x1, -0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x1, 0x1, + -0x1, ] .span(), array![ - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, -0x1, - 0x0, + 0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, - -0x1, -0x1, 0x0, 0x0, 0x0, + -0x1, 0x0, 0x1, + -0x1, 0x0, 0x0, 0x1, - -0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x1, - 0x0, -0x1, + 0x0, 0x1, -0x1, + -0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, - -0x1, 0x0, 0x0, 0x0, + 0x1, 0x0, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, + -0x1, + 0x0, + -0x1, + 0x0, 0x0, - 0x1, 0x0, 0x0, 0x0, - 0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x1, 0x1, 0x0, + 0x1, + -0x1, + -0x1, + -0x1, -0x1, - 0x0, -0x1, - 0x0, 0x1, 0x0, + 0x0, 0x1, 0x1, - 0x1, + 0x0, + 0x0, 0x1, ] .span() ), ( array![ - -0x1, 0x0, - -0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x0, 0x0, - -0x1, 0x1, - 0x0, 0x1, -0x1, -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x0, + -0x1, 0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x1, -0x1, - 0x0, 0x1, 0x0, - 0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, 0x1, - -0x1, - -0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x1, -0x1, 0x0, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, + 0x1, + -0x1, -0x1, 0x1, 0x1, 0x1, + 0x0, + 0x1, + -0x1, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, - 0x1, 0x0, -0x1, 0x0, - 0x1, 0x0, + 0x1, + 0x1, 0x0, 0x1, + 0x1, + 0x1, + -0x1, + 0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, - 0x1, - 0x1, + -0x1, 0x0, -0x1, -0x1, ] .span(), array![ - 0x1, - 0x1, 0x1, -0x1, -0x1, 0x0, - 0x0, + -0x1, + -0x1, 0x1, 0x0, + 0x1, -0x1, + 0x0, -0x1, -0x1, 0x0, - 0x0, - -0x1, 0x1, - 0x0, -0x1, + 0x0, + 0x1, -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, + 0x1, + 0x1, 0x1, - 0x0, 0x0, -0x1, 0x0, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x1, 0x1, - 0x1, + 0x0, -0x1, -0x1, -0x1, - 0x0, -0x1, + 0x0, + 0x1, 0x1, + -0x1, 0x0, 0x0, -0x1, -0x1, - 0x1, - 0x1, + 0x0, 0x1, 0x1, 0x0, + 0x1, 0x0, + -0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, 0x1, - 0x1, - 0x0, - -0x1, - -0x1, - 0x0, - -0x1, -0x1, + 0x1, -0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, ] @@ -13932,201 +13902,201 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xaab75359d6a3f06b6d7da498, - limb1: 0x3bb5ef3483c90b95379095c4, - limb2: 0xc1b6757c5b022963d5fb4f7b, - limb3: 0xf01e581bd93d2e5cc21d211 + limb0: 0x9d5572af13a56048483af426, + limb1: 0xd0200c2c7929c8a4f51b40bf, + limb2: 0xb52a1364145776e0c88c88a8, + limb3: 0x4413e525783466c49afc310 }, y: u384 { - limb0: 0x8aafa7b6f25547bdbf5e0796, - limb1: 0xb53ed6cf080449fb1f42d243, - limb2: 0x4af896b2e79303c942b7643e, - limb3: 0xa13669fb2eedb815fd51296 + limb0: 0x2bb3946db3a773ba7226ad19, + limb1: 0x3d82fade92ab31ea8a27d7bd, + limb2: 0x34a980dbf1777e7f34901881, + limb3: 0x175162974bbb3adf117cc0dd } }, Q_high: G1Point { x: u384 { - limb0: 0xa88ecb401017063d62db6191, - limb1: 0x9fb9e93b8aa84c44c322962d, - limb2: 0x9682c8ae507d675d65807803, - limb3: 0x20b1797dd9a4c5c6d58aa4b + limb0: 0x9f9f5e7106bc94070f28b952, + limb1: 0xc78b232e90f842def8031720, + limb2: 0x115cf9d2a2b48a7286e3ce0c, + limb3: 0xf420bc7c4fdc57bd779cfa3 }, y: u384 { - limb0: 0xad883729a38a7731edfdf803, - limb1: 0x93d505b172cea3f7623a0414, - limb2: 0x55d8dab63eed995f5ecd8427, - limb3: 0xf95e66a2a539e8064975e97 + limb0: 0xf8fdb361bc38b979c73bfe7, + limb1: 0xda6efb8711cf0e65f690dcb7, + limb2: 0x5b639723222f89abb3c879c1, + limb3: 0x19fc3c1a10cd7a7a77f9c8fa } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xe2ed8df3287c80b0b5d10083, - limb1: 0x2b2fd2907755bf86cc019427, - limb2: 0x190c066f0fb97d18f3b29921, - limb3: 0x17f29486fa87fc4e167657e2 + limb0: 0x3b531429b7014402bacfce2b, + limb1: 0xdd40a52dbc3c8f240fac563e, + limb2: 0xa31b5119f6a3d9682c50fd16, + limb3: 0x134d856344b13b2578cf2fdd }, y: u384 { - limb0: 0xcc2b80402be280048ed84b7a, - limb1: 0x2688fea428d1a4677ae15b60, - limb2: 0x3a51c77880b322acf554a6a, - limb3: 0xf978de171a83b44cd5da12e + limb0: 0x63fd25d4cb31363566e61c11, + limb1: 0xd1c27b0d1e5fd35b88fae891, + limb2: 0x861216279b35702287a35469, + limb3: 0xb45a62ca9d6be36ad41ee50 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xe829beef4abc11689cdacd78, - limb1: 0x4653e5fd7c0c890fe2f6e025, - limb2: 0x4cc56e131bfd03e9501a24ee, - limb3: 0xf434c2a018756d41f86a6e5 + limb0: 0x7a55e81f9cc499b1f1eacad3, + limb1: 0x77d848dc4f846b436ff50ebf, + limb2: 0x43444efe0410ac76b29273fa, + limb3: 0x1cfe9352eb4064e4f7d7c23 }, u384 { - limb0: 0x40f8369a9b9fa7c75589c8a, - limb1: 0x573a0ce64bd110904be333fd, - limb2: 0xddef18978bf1b430154d0246, - limb3: 0x16e7198b15b91806a2bb9153 + limb0: 0x56f3fff873b4b684a57655a4, + limb1: 0x64d5bab3b90b919358b890ad, + limb2: 0x2d55ebbeac0ca1131e0936eb, + limb3: 0x221655a90eb30d37fd959ee }, u384 { - limb0: 0x438b9f32a35aed308c9dfc4f, - limb1: 0xb4e16bee2eb1077e97a5b740, - limb2: 0x9fe935f40f314157da0d3eff, - limb3: 0x320c8a43bcc23354ee98ca3 + limb0: 0x5dd0bd461083d1f4f367c34b, + limb1: 0xedcde1bfad9dffae8d1d7fd3, + limb2: 0xb669dd64d504f27417687655, + limb3: 0x15c7f5dffcc9c45c019c17ad }, u384 { - limb0: 0x5ce78dc82831211fc06cfe78, - limb1: 0x39c29c86c0e3fc573839a651, - limb2: 0xc3c2d74ba5ec1e229ba1b722, - limb3: 0xa40ed5529171f7ea154c8fa + limb0: 0x5a7a330bc7809f9659ab48e0, + limb1: 0x3df47965d5b0d3f230d70b8b, + limb2: 0x52030ecbfe90346539f4e956, + limb3: 0x14ee1921ef3e9e319d6d93d5 }, u384 { - limb0: 0xafa07686b24585b59d7b9949, - limb1: 0xb39869507b587b10be685704, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0x717c4f5a984b820c1ce27ebd, + limb1: 0x6730d2a0f6b0f623acfbd1e0, + limb2: 0x434bacd764774b84f38512bf, + limb3: 0x1a0111ea397fe69a4b1ba7b6 } ] .span(), a_den: array![ u384 { - limb0: 0xb5a4c376ddb5030d4741a482, - limb1: 0x2c1b0d30d2091d87c2ef401f, - limb2: 0x35b1c377f0c43ceea1193e46, - limb3: 0x4223caec83723ec0e3fce8d + limb0: 0x9f8e4b56d5fb22ba5a3c0cca, + limb1: 0x4aeab2a252feb65cb6c4bff4, + limb2: 0x4e7eea9a05ca5b1092db40ee, + limb3: 0xc0bcef80b129e8fdd41568f }, u384 { - limb0: 0x9b7febe8b6e452caf65218c8, - limb1: 0x30125a7fa625d9b8126a26b7, - limb2: 0xd6bc130264d8d80effa21a49, - limb3: 0x7b48ed85e84b5637f6fb2a1 + limb0: 0x5354b70c076507c4850fe64d, + limb1: 0x2dd8a130745c2162fd4475cb, + limb2: 0x722de386b62b65feb5ba948c, + limb3: 0xee99dc8b9dfc3da0a72dd2a }, u384 { - limb0: 0xc75eb2ff8c3b3c0c6e9fbf04, - limb1: 0xdd595ee51509266b3f3b92b, - limb2: 0x8630263ecde04f43b1327fef, - limb3: 0x4dfb5eb9db88e26d758adb9 + limb0: 0x9f8da9330cfa5c3f2d288222, + limb1: 0x37fd03f0b892c9950567de6a, + limb2: 0x1657ec6b932dde5879021d55, + limb3: 0x909c42f238795acc6408311 }, u384 { - limb0: 0x1d532afa8b0ba1162a2e79ad, - limb1: 0x25bc0dc8ce2b6fda9b5e117f, - limb2: 0x6681cad396b70df59a9b832c, - limb3: 0xfab938824942fabf11e02df + limb0: 0x6d0e01ac03652c6fee67d5d9, + limb1: 0xdffd0f0eb64bd86f901a1625, + limb2: 0x953221373d8821ecd3c8e8c0, + limb3: 0x5c765084616fc82237a69bf }, u384 { - limb0: 0xdb7cad86c1d30ba7db1aa48b, - limb1: 0xd021396f841b6f4be9c10ef9, - limb2: 0xd1bfdde77a61230528f3322c, - limb3: 0x17804827ea7b95e861f29476 + limb0: 0x37ebf322aeadb1f6ce697e90, + limb1: 0x76f1a89eb32d3b65faa1d76e, + limb2: 0x26200d072aa4839046f21397, + limb3: 0x161cc557670ed4ba6a3ef421 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x2a80c4b37c9456305920ff86, - limb1: 0xd1f21f94ed31b1bbd24f17c3, - limb2: 0x1c3c365a2c0fe6fd7f2738f7, - limb3: 0x183c14a44d44ee87f4f4e376 + limb0: 0x4f97faa58a9a8eea18b25582, + limb1: 0x7fcd1dc8907212108c1b293d, + limb2: 0x9c915079b65a7d7375c56e39, + limb3: 0x94d0bfc813b5d7ee2d4fba5 }, u384 { - limb0: 0xd19a8c1137b023d937595f1e, - limb1: 0x7b8b29e95ae9b89b60105fb5, - limb2: 0xac2eb4f51325887a86e6cfe8, - limb3: 0x19ece3c65f0d720ebbe0e379 + limb0: 0xf0d36a0431176fc6d9187519, + limb1: 0x850c69035837170a42a1f829, + limb2: 0xeeb14532976f53b9c1a5323b, + limb3: 0xff328b9cf5d96fdeedd6f4f }, u384 { - limb0: 0x5117aea39f28e5b2489d7ab9, - limb1: 0x1154eb3431795b79a24cd92b, - limb2: 0x16f54a06029631ee788c4053, - limb3: 0x941b961c94ba6d044e1db31 + limb0: 0xc08f91d4ab8b398c0793bbca, + limb1: 0x3df6a7c859e9a0cd89103e1f, + limb2: 0x5b0855cde0f1c37888194112, + limb3: 0x193af6e97bfab7dd7f703522 }, u384 { - limb0: 0x2999e2468a8c7b4fb90a41f1, - limb1: 0xecc2af4b6143ef388b6a34a3, - limb2: 0x92f3c115633c18559790766f, - limb3: 0x13eb4abc87803c20119a91e5 + limb0: 0x621f52b820027d4687b0a9df, + limb1: 0x55a2d35dfc915004512f7b33, + limb2: 0xf6d78a7a5c3bf3f07361ba, + limb3: 0x19b380f881b8f53abf7e5b56 }, u384 { - limb0: 0x755fa4cd98e1c6ae7746db1e, - limb1: 0x161b4d95f83b31745b729b77, - limb2: 0x6cd675f0c4311493231b95b8, - limb3: 0x10ad51d0e155f878051a8ae8 + limb0: 0x9dd3c3aa4e1f55843e9558d5, + limb1: 0xd41b1c6d2f105aaab5b90219, + limb2: 0xbe53d4a5e0f501921f4bd5d, + limb3: 0x5f017d6bdd7ae99c9745d23 }, u384 { - limb0: 0xd276ebcf825ed58edab74cf7, - limb1: 0x4fecbc1c47370f9b08a74731, - limb2: 0xdb29fe3e0a256fdd83603447, - limb3: 0x1289f0529cbcb8c82928d6c4 + limb0: 0x6104f11188fcdddd64b6dd1c, + limb1: 0xd326a2ce722c1053e918faa8, + limb2: 0x14f7baae7613b4bdcb4a3e60, + limb3: 0x7de359abf2493f78e17b141 } ] .span(), b_den: array![ u384 { - limb0: 0xd6930ddb76d40c351d069208, - limb1: 0xb06c34c34824761f0bbd007e, - limb2: 0xd6c70ddfc310f3ba8464f918, - limb3: 0x1088f2bb20dc8fb038ff3a34 + limb0: 0xcce52d5b9ded8ae968f0887d, + limb1: 0xc479f7e85549e34ebc66ffd3, + limb2: 0xf6affd90b2b220bd57e7f0f9, + limb3: 0x162e29f5f2ca93a529e9b286 }, u384 { - limb0: 0xbcabafa321924b2bd948b875, - limb1: 0x5918975da1e670bc2afc9adf, - limb2: 0x17a49f322eec14b70b035665, - limb3: 0x4d129774092eef3b2a322d1 + limb0: 0xeaaadc30a9961f12144043de, + limb1: 0xe900df7fe40e9943b7b9d72f, + limb2: 0x4220346c0fbf00f0efe02cb1, + limb3: 0x7a4534e747f42339394253d }, u384 { - limb0: 0x1d7acbfe30ecf031ba7efc10, - limb1: 0x375657b94542499acfcee4af, - limb2: 0x18c098fb37813d0ec4c9ffbc, - limb3: 0x137ed7ae76e2389b5d62b6e6 + limb0: 0xcce2a4cc79ea70fcb4a25ddd, + limb1: 0x78c33d21eb9a302ff6f379ab, + limb2: 0x161404d6e8402ddcf0836295, + limb3: 0xa25fed2549e7018cde6648e }, u384 { - limb0: 0xc8496f6195e58765effc35e0, - limb1: 0xf4a99f121d54f0a9f30f861e, - limb2: 0x4921951782b1ddbb247d2577, - limb3: 0xece66fae78815673c808a9e + limb0: 0xa27252072990d47a13dbb983, + limb1: 0x63ae1c3c357d21f6d881188b, + limb2: 0x5ffbc29f9773973eee79d132, + limb3: 0x928512ee9eea9fe200f55d7 }, u384 { - limb0: 0xf576a2049033816a62bdaaf3, - limb1: 0x3b04c85ad280b47b5d6a62a2, - limb2: 0x53d8841a20f78194c8dfaabe, - limb3: 0x17b279b95bf3593625e70d5a + limb0: 0x1f088397941ecf9fbeb6e08c, + limb1: 0xd40ccbc85cfe2c8e8bc7d388, + limb2: 0x40cb111d335791b0f6f3aaab, + limb3: 0x19597d67a99b62f4d21bb68c }, u384 { - limb0: 0xc75eb2ff8c3b3c0c6e9fbf08, - limb1: 0xdd595ee51509266b3f3b92b, - limb2: 0x8630263ecde04f43b1327fef, - limb3: 0x4dfb5eb9db88e26d758adb9 + limb0: 0x9f8da9330cfa5c3f2d288226, + limb1: 0x37fd03f0b892c9950567de6a, + limb2: 0x1657ec6b932dde5879021d55, + limb3: 0x909c42f238795acc6408311 }, u384 { - limb0: 0x1d532afa8b0ba1162a2e79ad, - limb1: 0x25bc0dc8ce2b6fda9b5e117f, - limb2: 0x6681cad396b70df59a9b832c, - limb3: 0xfab938824942fabf11e02df + limb0: 0x6d0e01ac03652c6fee67d5d9, + limb1: 0xdffd0f0eb64bd86f901a1625, + limb2: 0x953221373d8821ecd3c8e8c0, + limb3: 0x5c765084616fc82237a69bf }, u384 { - limb0: 0xdb7cad86c1d30ba7db1aa48b, - limb1: 0xd021396f841b6f4be9c10ef9, - limb2: 0xd1bfdde77a61230528f3322c, - limb3: 0x17804827ea7b95e861f29476 + limb0: 0x37ebf322aeadb1f6ce697e90, + limb1: 0x76f1a89eb32d3b65faa1d76e, + limb2: 0x26200d072aa4839046f21397, + limb3: 0x161cc557670ed4ba6a3ef421 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -14135,155 +14105,158 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xc5cc6ea9c7dbfe882e48deb1, - limb1: 0x5caf3abb6974315ee12807a, - limb2: 0xe7cb830e21f10f60a969353a, - limb3: 0x125a71dc721b1022ec4a7164 + limb0: 0x72f9af4bbf0b4fa540c06c04, + limb1: 0x6338ff4f664a31f1e495856a, + limb2: 0x175d166f62442f50b3ad6388, + limb3: 0x15a7b011ede0e2432e042d4c }, u384 { - limb0: 0x98cfb48cf59ac71d44babef1, - limb1: 0x654f5ca3643cae82253bddd3, - limb2: 0x504c24f22fa51586d04d9025, - limb3: 0x57535e7ebc836e3b8ecdad3 + limb0: 0xdb43534157775d94bb7b8390, + limb1: 0xd8af9267428f5d748cb6274c, + limb2: 0x3ee7f04defb3005236af5c62, + limb3: 0x122a7f2fa475f5be08190600 }, u384 { - limb0: 0x1022df6f72115ac0df6cbf41, - limb1: 0xa42913176a82e4f34e4d77b8, - limb2: 0x8445fa307d0faba30c005f56, - limb3: 0x12830dfcd87d5bc098984ef0 + limb0: 0x95759199f86fb8b49e00184d, + limb1: 0x538b6973f2dd6265cdf8687, + limb2: 0xb34935c49427e962d012bbbc, + limb3: 0x14e64302e04a5a2bb07abc5d }, u384 { - limb0: 0x695b28ab9e84194c95f25444, - limb1: 0x19862604092c4e13311824ca, - limb2: 0x323a15d5bf4856209b0e62f, - limb3: 0x7d58335156563c878f5266c + limb0: 0x6b8c8a9057022d11f5020ef8, + limb1: 0x8c970be0c8d24f8ff04987d9, + limb2: 0x5a59d623c1d3b75832bc56a0, + limb3: 0x1072a039c657a7414ee42da8 }, u384 { - limb0: 0xdb9baa43c3259bde8ceec2f8, limb1: 0x473ba1e5, limb2: 0x0, limb3: 0x0 + limb0: 0x82c9f977cd36a1dfb92ecf12, + limb1: 0xb39869507b587b1269daafca, + limb2: 0x21a5d66bb23ba5c279c2895f, + limb3: 0xd0088f51cbff34d258dd3db } ] .span(), a_den: array![ u384 { - limb0: 0xd86e765ebf16d1a318facd49, - limb1: 0x459b17468c4bb437d972cbc3, - limb2: 0xae1d1e7c2c9566c4cda974b2, - limb3: 0x1352bfa17a6f2046d9396931 + limb0: 0x432608694fac45d719592099, + limb1: 0xa44b424fe63f3dfb6f4ae2e6, + limb2: 0x956de2fa07bc19fc4bfae220, + limb3: 0x8b9b12147fa01fd06c3e6ad }, u384 { - limb0: 0xfbb0b918ceec1fcf1f68970f, - limb1: 0x69c515e9f17305fd9bb82c4b, - limb2: 0xd4bb9edbc0c2b5e95da73720, - limb3: 0x7dc220c3fa95ccd650f9b0b + limb0: 0x421681d2b370c8bfbe76ba2, + limb1: 0x7b24131cc575364c88af65af, + limb2: 0xcec07fdf460c74cada0fa3e8, + limb3: 0x800a1bec54b12a61ec01016 }, u384 { - limb0: 0x1e7352e8b52d36a984ce2ac1, - limb1: 0xcc629adfd5e38722c2f85, - limb2: 0xc93499124e4f427625859910, - limb3: 0x326ba57267dd5c3237969f7 + limb0: 0xcd5b655838636ed3fe8d0afc, + limb1: 0x8c0e6f9c4bcd9cd69d4afb30, + limb2: 0x2aa2c5a5e965cd9a9598ad1b, + limb3: 0x794be0a13d8d0304187515c }, u384 { - limb0: 0x71d0b1620213f310ae3dd657, - limb1: 0x66fe0f2dfec6f40f86e85420, - limb2: 0x13db69368d9260ead4382205, - limb3: 0x1457f0eccfc7193fdab9af64 + limb0: 0xcd92e0d0e404302142e6a30d, + limb1: 0x60a3d04c2768953e8a28ad93, + limb2: 0xadec7dff146286b76775ca44, + limb3: 0x66caa77ffefad7064bc650d }, u384 { - limb0: 0x2c5135a0ce60f5d5e5bd3ce7, - limb1: 0x4ec6cc7868b38783f830e92, - limb2: 0xb9a7ddde206e9986a5e8f6e5, - limb3: 0xa76042790f535d775a01486 + limb0: 0x35a20760bb967e38077bb964, + limb1: 0x7f86919c9b5ec12bf7ba010d, + limb2: 0xc9ed26989c476ffe889ace33, + limb3: 0xb1bf7e1f99455aadc74e78e }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xde891bd7a79297b7ac7e0f73, - limb1: 0xdbc5692cec5a3d32f8c6e94e, - limb2: 0x1bd5e72ed553a2626e5e9b1e, - limb3: 0xf29aa2edffaa84de677c131 + limb0: 0xb3e33a63fb5e5b9d97f65fd6, + limb1: 0x72750b18e868d4cdd5aea3df, + limb2: 0x166f602cb238feca94bb5be4, + limb3: 0x82a05298da4516cc53861d2 }, u384 { - limb0: 0xa72ff6476b59629a4050c09, - limb1: 0xc757fbccd29ee2f526c7af07, - limb2: 0x6dad9831674eb583099f2fa6, - limb3: 0x10d3ea5c1f9cdf16ec733841 + limb0: 0xe9c78da8b832bc4a594ae06d, + limb1: 0xb3081731dc927563be9dd3fa, + limb2: 0xe9917a51dc2b890f85c54cd3, + limb3: 0x1ec85b9560fe84eecbd8c06 }, u384 { - limb0: 0xb16f38441a0eb8edd0e76ce0, - limb1: 0x983464f7282fc3fe19ae5210, - limb2: 0x6c5ae610b378b2e99c6623c3, - limb3: 0x7994b59feb370ff5170a108 + limb0: 0xd63c5859d848738b70ef9813, + limb1: 0x4201cf4eaf3f50c581efc54c, + limb2: 0x1bc3ba599878e34da68e3391, + limb3: 0x79a1893dda634562e9f5942 }, u384 { - limb0: 0x1da7e16f0cdf9a8252243171, - limb1: 0x75593a5f40b1f9fc010d859d, - limb2: 0x6889096c3205825b167d5197, - limb3: 0x16b7b8b8ac5d1b4fea093aa5 + limb0: 0x99526078767a97a8841a017b, + limb1: 0x52a9097085fbd3ac3d897990, + limb2: 0x6a0b9017f525c3fdad01bce1, + limb3: 0x4f042c10c686ba65b5ec727 }, u384 { - limb0: 0x86eb5a7793115271768a4f50, - limb1: 0x8dc0f0b6f82c2f374630da20, - limb2: 0xe4e69b38388da86df00b0d70, - limb3: 0x622ff40902c5c7e52d10a3c + limb0: 0xb4785fe24312a79c3a5593d6, + limb1: 0xebf099bd26eea09974f36f1c, + limb2: 0x5f839f50f41e1df98fa486f1, + limb3: 0x188faf935e4aabb1e8ea9c89 }, u384 { - limb0: 0x18f2bb8b62f8d7bfb5454437, - limb1: 0x37f9f8b1c8464bef9eabe102, - limb2: 0xb516c384e4a105097bb03f10, - limb3: 0x9be1d5ec2513513165241b9 + limb0: 0x6e6f426a618793ed403212d2, + limb1: 0xae5ee0964d3004635d52086c, + limb2: 0xf0782eaa5e67acf50c6f3118, + limb3: 0xf9c4a7813aad1f2eacfd27b } ] .span(), b_den: array![ u384 { - limb0: 0xff11d97b885d468c63ebdfce, - limb1: 0x480ab7d843cce49728732f11, - limb2: 0x31dd2041e96704094f9bad4a, - limb3: 0x1948dab176bcb3e6ceae555a + limb0: 0x5b4421a584b2175c6564d7b9, + limb1: 0x29fc369ea24c01c99e7f8b9a, + limb2: 0x126bdf10ba791c6c3c6675c3, + limb3: 0x8e5b29ae6682159cff3f300 }, u384 { - limb0: 0x3d6ee46381b17f3c7da2b191, - limb1: 0x3fe38506cf1b21d25034b131, - limb2: 0xfa2ce979e938c208317c9c2, - limb3: 0x56f7646c5258c9b4922c479 + limb0: 0x5f31a074f2dd322fef9e03dd, + limb1: 0x855f79d21f23e30e041196bd, + limb2: 0xf7b652a5b3ba87a674b97ce2, + limb3: 0x6017510dbac63fe2fe498a4 }, u384 { - limb0: 0x79cd4ba2d4b4daa61338ab04, - limb1: 0x3318a6b7f578e1c8b0be14, - limb2: 0x24d26449393d09d896166440, - limb3: 0xc9ae95c99f7570c8de5a7df + limb0: 0x84199561278ebb4ffa348145, + limb1: 0xc908ebd038857d36567fecc4, + limb2: 0x673f69c0411feae562dda1ae, + limb3: 0x451e63e15e35a26bb019dba }, u384 { - limb0: 0x8bb53be799699de5d1f326a4, - limb1: 0xac00dc1ba354a20999101c49, - limb2: 0x33a7bcd0357907e143fac489, - limb3: 0x16af4d960d0bd17762cd2f9f + limb0: 0xc81d8bad25be065c24f40222, + limb1: 0xbfa9b0df8d309cd179419936, + limb2: 0x9d42e1ef4cee954f64cf872, + limb3: 0x86b49170e38d1244e99d32e }, u384 { - limb0: 0xfba18f9c4e70f726b65de000, - limb1: 0x1645f66714eef1ba7b186695, - limb2: 0x780f697cde05d07f01c5fff5, - limb3: 0x17b320c049fe4d90f0744570 + limb0: 0x780185a0a593056c19d6fbdc, + limb1: 0xaadcb44d458e4eb42a3f69e6, + limb2: 0x6fddc092ee3b9dbb1570b737, + limb3: 0x6e5d72389c9c1cfa5c5ee5 }, u384 { - limb0: 0x1e7352e8b52d36a984ce2ac5, - limb1: 0xcc629adfd5e38722c2f85, - limb2: 0xc93499124e4f427625859910, - limb3: 0x326ba57267dd5c3237969f7 + limb0: 0xcd5b655838636ed3fe8d0b00, + limb1: 0x8c0e6f9c4bcd9cd69d4afb30, + limb2: 0x2aa2c5a5e965cd9a9598ad1b, + limb3: 0x794be0a13d8d0304187515c }, u384 { - limb0: 0x71d0b1620213f310ae3dd657, - limb1: 0x66fe0f2dfec6f40f86e85420, - limb2: 0x13db69368d9260ead4382205, - limb3: 0x1457f0eccfc7193fdab9af64 + limb0: 0xcd92e0d0e404302142e6a30d, + limb1: 0x60a3d04c2768953e8a28ad93, + limb2: 0xadec7dff146286b76775ca44, + limb3: 0x66caa77ffefad7064bc650d }, u384 { - limb0: 0x2c5135a0ce60f5d5e5bd3ce7, - limb1: 0x4ec6cc7868b38783f830e92, - limb2: 0xb9a7ddde206e9986a5e8f6e5, - limb3: 0xa76042790f535d775a01486 + limb0: 0x35a20760bb967e38077bb964, + limb1: 0x7f86919c9b5ec12bf7ba010d, + limb2: 0xc9ed26989c476ffe889ace33, + limb3: 0xb1bf7e1f99455aadc74e78e }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -14292,10 +14265,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x2c75e0654578305f3057edc1, - limb1: 0xf53d478be8df3b6a33a1f15, - limb2: 0x5e2f0ff931c2c5caf8e7cc3f, - limb3: 0xa3d9a0e2be23f4d9b16d20d + limb0: 0xb9851e77e47d7f311d2a4e7a, + limb1: 0xd6d634ee1102656f809b8afa, + limb2: 0xc3fd96529ce5f72c65c8f1a0, + limb3: 0x9a03893b289ba6b8690dcb1 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -14307,66 +14280,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xa81d1d4a9498239f9cc2b9d3, - limb1: 0x226798f0aefa7f421cd8b43d, - limb2: 0x402ae47526f62bd1660e6f0, - limb3: 0x11246a026a0ed3e0dc9a9911 + limb0: 0x15810320a09dd5f19bdc1f8e, + limb1: 0xbd868033ee0b486cf364d50f, + limb2: 0x40e968027de74af32b7c6535, + limb3: 0x146fa115b0cfd6d770f77de4 }, u384 { - limb0: 0x25d7a6cc816b7911e7534897, - limb1: 0x9c4716d4f4b2ea588f87d5a9, - limb2: 0x93bcddba0440670e9a52019a, - limb3: 0x365cb615d9defc74ca588 + limb0: 0x87b58d64b64027f63606cdd9, + limb1: 0x2995dce5a02d1a4535a8929e, + limb2: 0xd21f0ec22f96332f33d55a5b, + limb3: 0x117292a96950cc9345ee4feb }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x2e12bb177f2e154f27caa5a5, - limb1: 0x135f4e71eebb8b9d96d7426, - limb2: 0x7bc5a048c01e2f986e0d8630, - limb3: 0xbc2618dd7375e5a91753692 + limb0: 0x90eaa2264c3a576f3c72c9b0, + limb1: 0xac36db8634f43ac8b3ca0ebc, + limb2: 0x7e2d02be4d064cd7dbb4d3fc, + limb3: 0x11d988c0d4fb5f9ce2b02be6 }, u384 { - limb0: 0xa48be4d3f82e82e5cf1fff33, - limb1: 0xa01afd3606ca62c34492fa46, - limb2: 0xfa00fd46bb82cfaae624cdee, - limb3: 0xd93dc0221cb06dd716e29a7 + limb0: 0x407eb8450694fd894da30dce, + limb1: 0x36e0a89736fe478007ae9383, + limb2: 0xd7e15cbe39b6e973144090bb, + limb3: 0x2622154f67f2ed03a5a844e }, u384 { - limb0: 0x266669a65489eb5783325c32, - limb1: 0x196cd294065220744a4c587, - limb2: 0x3a9c6d4d9544707e4abe76bd, - limb3: 0xa652bcf7c510609cc69fe2a + limb0: 0x83447519e7e4c4b3c70bf6e, + limb1: 0x812c47f0e7aa9fe6d361c476, + limb2: 0xd80494134db6819ed89c1169, + limb3: 0x8be6beeaa4d4f72cbf56760 } ] .span(), b_den: array![ u384 { - limb0: 0x3dcc752ade628e7e730b91f6, - limb1: 0xbb3cbe80ce8810c0360ad0f9, - limb2: 0x89735f6e80cef3ea72797641, - limb3: 0x108f8435353b824edc3314d7 + limb0: 0x42080c83547a57c66f717e37, + limb1: 0xc08788ecd41a3f47718f5440, + limb2: 0x39c29983ca37493dd3625c98, + limb3: 0x3bb4e9816bfa78ee28b006e }, u384 { - limb0: 0x975e9b3205ade4479d4d225c, - limb1: 0x711c5b53d2cba9623e1f56a4, - limb2: 0x4ef376e811019c3a6948066a, - limb3: 0xd972d857677bf1d329622 + limb0: 0xbc2e359365029fd8d81be20e, + limb1: 0xd7f5ce5493527ccc994a4a7c, + limb2: 0xc1e4e159f56a35b2e84b43ed, + limb3: 0x11c826d1324365188181f042 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xa81d1d4a9498239f9cc2b9d3, - limb1: 0x226798f0aefa7f421cd8b43d, - limb2: 0x402ae47526f62bd1660e6f0, - limb3: 0x11246a026a0ed3e0dc9a9911 + limb0: 0x15810320a09dd5f19bdc1f8e, + limb1: 0xbd868033ee0b486cf364d50f, + limb2: 0x40e968027de74af32b7c6535, + limb3: 0x146fa115b0cfd6d770f77de4 }, u384 { - limb0: 0x25d7a6cc816b7911e7534897, - limb1: 0x9c4716d4f4b2ea588f87d5a9, - limb2: 0x93bcddba0440670e9a52019a, - limb3: 0x365cb615d9defc74ca588 + limb0: 0x87b58d64b64027f63606cdd9, + limb1: 0x2995dce5a02d1a4535a8929e, + limb2: 0xd21f0ec22f96332f33d55a5b, + limb3: 0x117292a96950cc9345ee4feb }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -14375,35 +14348,17 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x48e3e4625096be3b9e829a14, - limb1: 0x66cb937a7f93922b5e5abe08, - limb2: 0xc9a9fed9bd19ea5c7708b7f2, - limb3: 0x4d5916ce9597fd2ba3ac4bb + limb0: 0x6a0db3518e21b72aba1b57f1, + limb1: 0x26206a881b7d3b7fe3dfb59d, + limb2: 0xe5d5017ed8e865ab5212fef1, + limb3: 0x1ad546ba1c6b653d3d716b5 }, g_rhs_sqrt: array![ u384 { - limb0: 0x7aab2e5838af79da263b3a98, - limb1: 0xcf96d4668dbd2228e06f5aa9, - limb2: 0x22eb9251c0334ad66eae6fe5, - limb3: 0xcf62cd64dd782e8879ee3d4 - }, - u384 { - limb0: 0x520782ace4733d655add23e, - limb1: 0x3ff5e9a0ca3dab105f8b32ea, - limb2: 0x6a9718ae3650a974eee3561a, - limb3: 0xaa0f12bdd2035df751cd72c - }, - u384 { - limb0: 0x6c4b6736490d2d4729f2dc96, - limb1: 0x5796ffebd3a45c3ae664cebb, - limb2: 0x358f89e4b0af7d387417dbc7, - limb3: 0x70a80dfcfedaed1bb3761b0 - }, - u384 { - limb0: 0x9b240fb11ba559659b85b46e, - limb1: 0xb4bb064c85253c7459b8bfbb, - limb2: 0x9b3dc96e40cc3ef9fc3fd7f1, - limb3: 0x4b402d7b2ac62e91269a824 + limb0: 0x6446e322ced02881d516c0e8, + limb1: 0x7bc2cd0181dbe83fec40354, + limb2: 0xd3569cd10942014be2f67993, + limb3: 0x38bf9b0ee3a471c7f07bfd2 } ], }; @@ -14413,16 +14368,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xaf9b20f13d8157d864fbc39c, - limb1: 0xf2f7e6e5b3e762e087e7d629, - limb2: 0xbf1a8ec394e4f54d0417b305, - limb3: 0x120ec29e277a4208d882cb92 + limb0: 0x9265b80710e8126964d22ebb, + limb1: 0x467cd44ab326b9d173fbed20, + limb2: 0xaccf0ccd070d33e9b8b62394, + limb3: 0xf73652e3f79e844ad0532f5 }, y: u384 { - limb0: 0x90ecf4068fa5d288aa648a1e, - limb1: 0x15bd41b0c21368fc08c96edb, - limb2: 0x3577ebfc3a58b0d65865aae1, - limb3: 0x129393fc6c022cf7e94d19a0 + limb0: 0xf7c6a821b79d4809ab2e9de4, + limb1: 0x13eb7ab975faf3ed7ce0fe10, + limb2: 0x361056fef4c57cfb1a221f76, + limb3: 0x9572b4e3c9b823170170d7d } } ); @@ -14434,91 +14389,91 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x419cfa99fa75b73dfc69451, - limb1: 0x90f6b03124b3ada03641b136, - limb2: 0xd63b716e31879fa1d9e40083, - limb3: 0xf9317020571df25d47f8610 + limb0: 0x6be95a4c9eaa7da914d2c30, + limb1: 0x35771fe01b0cb1a201e52248, + limb2: 0x8494d42730d469f92b94bcb6, + limb3: 0xb6d04ac4ceb125c78b9b795 }, y: u384 { - limb0: 0x12e014ec04195edb5d80196a, - limb1: 0x70693a1a3b175940a9cdc0ef, - limb2: 0x774a1b26da0bc92e61429d6f, - limb3: 0x166eca43dc4ab35eb7620d59 + limb0: 0x6126108903532823250ed818, + limb1: 0x282d399fe5adc1101b6d5042, + limb2: 0x23b7902a532b83bcef6a6e0f, + limb3: 0x88c7dbbed8344d4b597ba08 } }, G1Point { x: u384 { - limb0: 0x90ae5ec475dfad2f54c4d73c, - limb1: 0xe4e1dce2e5dd186725513b53, - limb2: 0x6ab2435a9209c67f79de0474, - limb3: 0x79f7ea111ce28a77c0b051b + limb0: 0x38e2944e0fb5d786806aedf3, + limb1: 0xaf33f9f6604df51dcb26fc82, + limb2: 0x33075ad7d9c4b172bc6e3ff7, + limb3: 0x11bbe9db4c4d9eb496ee6e70 }, y: u384 { - limb0: 0xe042559d975f37f741fdd752, - limb1: 0x505fbfd56d2f613085e0511b, - limb2: 0x2a8f034ff88eb3911a45df4d, - limb3: 0x9cbcae2ca9d06fb13932394 + limb0: 0xa94432e3857ab4265b6dcf44, + limb1: 0x6d31c8f3b04cdbc80cccddfe, + limb2: 0xe312ecad9a9e81d832983a97, + limb3: 0x11df4de01cdcf0455fe02f84 } }, G1Point { x: u384 { - limb0: 0x63c4365280dd89affc2bfde, - limb1: 0x9737a82f09eaf29fa6a22186, - limb2: 0x52ff0af4910f850929a5ffd7, - limb3: 0x136659365c49ed72bc7ba5e9 + limb0: 0x559cb31f38cf6b6bb43981b1, + limb1: 0x47e4d530a8069559516c8421, + limb2: 0x23c93cef1732469b3fd6a1e4, + limb3: 0x169c5fa4215e4335cff9c2d8 }, y: u384 { - limb0: 0x50215915284291ee5842200f, - limb1: 0xbf5a67077e53479f33f420d5, - limb2: 0x39621fa38f899b09c6304c26, - limb3: 0xf762c2e66d4a825f02b2f8a + limb0: 0xbf77776953bdd154c0d28ddb, + limb1: 0xbb268822f58f121df53e5a4f, + limb2: 0x6d659ef88bb9c9e8a68b68a, + limb3: 0xb2ed378591b798de4673f05 } }, G1Point { x: u384 { - limb0: 0x73962084465bfe693fc8f80, - limb1: 0x2e9b0709b5ee8a591d164c0d, - limb2: 0x63a464b008ed6dd2268f7d3e, - limb3: 0x728f58823e401362d17e619 + limb0: 0x2ff93eaf1ea3393d917c8b9a, + limb1: 0x5a6eb73fb57bb5546ecd43ff, + limb2: 0x92cc931886223bc6d3476700, + limb3: 0xa433c7ac4eacf2b7b2bc50a }, y: u384 { - limb0: 0x658bcb77242407aeab1a6943, - limb1: 0x4afe3055896cf40f00f844f2, - limb2: 0xbb319f46d8ed1d7489af1660, - limb3: 0x15403f606ad5f278c2e1331f + limb0: 0xcd88ecfe2cbd2f42081e935f, + limb1: 0xdb51cb9fdec1fc5aee0503eb, + limb2: 0x1613978c61c6d886650e5a75, + limb3: 0x6ca4747a2e7e1887eadf41d } }, G1Point { x: u384 { - limb0: 0xa897394c5820f5c17bea45ac, - limb1: 0xb61abac28f8c7893bf5bd2f9, - limb2: 0xe4740e3a9967ce198240395, - limb3: 0x11d84d1490975075e23b0108 + limb0: 0x751a0a2e9d75ebc9be7abcf7, + limb1: 0xd489ecf4ea239ab83ac165cc, + limb2: 0x929576ad8c75458ba5a7b8ff, + limb3: 0xac4194fb8eb381a439f4e6b }, y: u384 { - limb0: 0x9912431444e191f3c9c50414, - limb1: 0x8fae427173c340207932fff4, - limb2: 0xde062f732d919c2a34725a1e, - limb3: 0x12181cae157ed2ee130c0e6a + limb0: 0x34ea39e75d9d01d11567a6c9, + limb1: 0x80a96c17ca9d2b19587fabed, + limb2: 0xf3145feeaa7c1eac684b0295, + limb3: 0x144010e9fde603eedb6b3285 } }, ] .span(); let scalars = array![ u256 { - low: 0xb5c25d429626d8c4344af454f0a61c5e, high: 0x4427e8b636abf8ce7e3f52c0cbf404d + low: 0x15f8e2e29447eb0892122793d9d9f4fa, high: 0x21ee8dcd68aa6994de914c458f444b0d }, u256 { - low: 0xdefa786415ac15c3a217cf253be95767, high: 0x5f1ff57e0e96ed9b5d158e442fcf3b87 + low: 0x6fb6b43c4829a9a73a260f1c087e8b1c, high: 0x4fbafc1d50faa548b59b0418a9cac3f0 }, u256 { - low: 0x3baa17f92c623ac3ad7027cfa358cb1d, high: 0xb16ae399ccd3e1f4c2abdaa9c5c11eb + low: 0xc29a242aa530fd94a0e47059acb601fa, high: 0x1f2f86f975a88c8a3f9e63a63727b26a }, u256 { - low: 0xc061c99b831a352ade6c8762b475e15e, high: 0x71048fa4e0a10d2bc57c799848d002be + low: 0xe0233304afe6468853da0232e9ec00d7, high: 0x2748d4d533d1b72d8c292c844d583695 }, u256 { - low: 0xdcf035b7552c6e86953a1155a62ddc4, high: 0x55335a328420b8d9b261d0d2a1c2d9bf + low: 0xb8e2d65f76ed61616fe4d7331c1e17c8, high: 0x63e961c29cb17806a9048c0491a32fde }, ] .span(); @@ -14527,166 +14482,166 @@ mod msm_tests { ( array![ 0x1, - 0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, - 0x0, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, - -0x1, 0x0, + 0x1, + 0x1, -0x1, -0x1, -0x1, -0x1, - 0x0, - -0x1, 0x1, - 0x0, -0x1, + 0x1, 0x0, - -0x1, + 0x1, 0x1, 0x1, 0x0, 0x1, + 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x1, 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, + 0x0, -0x1, -0x1, + 0x0, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, + 0x0, 0x1, -0x1, 0x0, - -0x1, + 0x0, 0x1, 0x1, -0x1, -0x1, - -0x1, + 0x0, + 0x1, 0x1, 0x1, - 0x0, 0x1, 0x0, 0x0, -0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x1, -0x1, 0x0, - 0x1, 0x0, + 0x0, + 0x0, + 0x1, 0x1, -0x1, -0x1, ] .span(), array![ - 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x1, 0x1, - -0x1, 0x0, 0x0, + 0x0, + 0x1, + 0x0, -0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, -0x1, + 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x0, + 0x1, -0x1, -0x1, 0x1, -0x1, + 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, 0x1, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, + -0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x0, 0x0, -0x1, + 0x1, 0x0, + -0x1, 0x1, + -0x1, + -0x1, 0x1, -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, - -0x1, 0x1, 0x1, - 0x0, 0x1, -0x1, 0x0, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, - -0x1, -0x1, + 0x1, + 0x1, 0x0, 0x1, + -0x1, 0x0, + 0x1, + 0x1, + 0x1, 0x0, -0x1, ] @@ -14694,317 +14649,316 @@ mod msm_tests { ), ( array![ + 0x0, -0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, 0x1, 0x1, - 0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x0, -0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x0, + -0x1, 0x0, -0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, 0x0, 0x0, - -0x1, 0x1, -0x1, + -0x1, 0x1, - 0x0, - 0x0, 0x1, 0x1, - 0x0, + -0x1, 0x1, - 0x0, + -0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, 0x1, -0x1, 0x0, - 0x1, + 0x0, -0x1, 0x1, + 0x0, + 0x1, 0x1, 0x1, -0x1, -0x1, 0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, - -0x1, - 0x1, + 0x0, 0x1, 0x1, - -0x1, - 0x0, 0x0, + -0x1, 0x0, + -0x1, 0x0, -0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x1, ] .span(), array![ + 0x0, + 0x0, 0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x0, + 0x0, -0x1, -0x1, 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x1, + -0x1, 0x0, -0x1, -0x1, - 0x1, - 0x1, -0x1, 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, + 0x1, -0x1, 0x0, 0x1, 0x0, + 0x1, + -0x1, + 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x0, 0x0, 0x1, - 0x1, - 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x0, - 0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, 0x0, 0x1, - 0x0, -0x1, - 0x1, - 0x0, - 0x1, - 0x1, - 0x1, -0x1, - 0x0, -0x1, 0x0, + 0x0, -0x1, - -0x1, - 0x1, - -0x1, 0x0, + 0x0, + 0x1, -0x1, 0x1, 0x0, -0x1, - -0x1, - 0x1, 0x0, 0x1, - 0x0, - -0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x1, + 0x1, ] .span() ), ( array![ - -0x1, - -0x1, -0x1, 0x0, - 0x1, -0x1, - 0x1, + -0x1, 0x0, 0x0, 0x0, - -0x1, + 0x1, 0x1, -0x1, + -0x1, 0x1, 0x1, + -0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, + 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, + 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x0, - 0x1, 0x1, 0x0, -0x1, -0x1, + 0x0, + -0x1, -0x1, 0x0, -0x1, - 0x1, -0x1, 0x1, 0x1, 0x0, 0x1, + 0x1, + 0x0, 0x0, 0x1, - -0x1, - -0x1, 0x0, 0x0, + -0x1, + -0x1, + 0x1, 0x0, 0x1, + 0x1, + 0x1, -0x1, - 0x0, -0x1, + -0x1, + -0x1, + 0x1, + 0x1, + 0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x0, -0x1, - 0x1, 0x0, 0x0, 0x1, -0x1, -0x1, - 0x0, - -0x1, 0x1, 0x1, 0x0, 0x0, - -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, 0x1, + 0x1, + 0x1, + -0x1, + -0x1, ] .span(), array![ - 0x0, - 0x0, - -0x1, 0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x0, 0x1, - 0x0, + 0x1, 0x1, 0x0, 0x0, 0x1, - 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x0, 0x0, -0x1, - 0x1, - -0x1, 0x0, + -0x1, + -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x1, + 0x0, 0x0, -0x1, 0x0, 0x0, 0x1, - -0x1, 0x0, + 0x1, + -0x1, -0x1, -0x1, -0x1, -0x1, - 0x1, -0x1, 0x1, -0x1, -0x1, - 0x1, + 0x0, 0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, + 0x0, + 0x0, 0x1, -0x1, 0x0, @@ -15012,70 +14966,67 @@ mod msm_tests { 0x0, -0x1, 0x0, - 0x1, - 0x1, + 0x0, -0x1, + 0x0, + 0x0, 0x1, + 0x0, -0x1, -0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x1, -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, - 0x0, - 0x1, ] .span() ), ( array![ 0x0, + -0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, - -0x1, 0x1, -0x1, 0x1, + 0x0, -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, + 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, - 0x1, - 0x0, 0x0, 0x0, - -0x1, 0x0, -0x1, -0x1, -0x1, - 0x1, 0x0, - -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x0, -0x1, 0x0, - 0x1, - 0x0, -0x1, 0x0, 0x0, @@ -15083,290 +15034,297 @@ mod msm_tests { -0x1, 0x1, -0x1, - 0x0, - -0x1, -0x1, 0x0, + 0x0, 0x1, -0x1, - -0x1, 0x1, - 0x1, - 0x0, 0x0, - 0x1, - -0x1, -0x1, 0x1, 0x1, + -0x1, + 0x0, + 0x1, 0x1, 0x1, -0x1, 0x0, 0x0, 0x0, - -0x1, - -0x1, 0x1, 0x0, + 0x0, -0x1, + 0x0, + 0x1, + 0x0, 0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, ] .span(), array![ + 0x0, -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, - 0x0, + -0x1, 0x0, 0x1, -0x1, 0x0, - 0x0, + -0x1, 0x1, 0x1, -0x1, - 0x0, + 0x1, 0x1, -0x1, - 0x0, - 0x0, + -0x1, 0x0, -0x1, -0x1, - 0x1, 0x0, + 0x1, + 0x1, + 0x1, -0x1, 0x0, 0x1, + 0x1, + 0x0, + -0x1, + -0x1, + 0x0, 0x0, 0x0, -0x1, 0x1, + -0x1, 0x0, -0x1, -0x1, 0x0, -0x1, - -0x1, + 0x1, -0x1, 0x0, 0x1, 0x0, - 0x1, -0x1, -0x1, + -0x1, + 0x0, 0x0, -0x1, 0x1, 0x1, -0x1, 0x1, - 0x0, - 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x0, -0x1, 0x0, + -0x1, 0x0, - 0x1, -0x1, 0x1, - 0x1, 0x0, + 0x1, -0x1, -0x1, 0x0, - 0x0, -0x1, - 0x1, - 0x0, - 0x0, - 0x0, - 0x1, ] .span() ), ( array![ + 0x0, 0x1, -0x1, - -0x1, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x0, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + -0x1, 0x0, - 0x1, - 0x0, - 0x1, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, + -0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, + 0x0, 0x1, + 0x1, + -0x1, -0x1, 0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, - 0x1, 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, -0x1, - 0x1, 0x0, - -0x1, 0x1, -0x1, + 0x0, 0x1, - 0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, + 0x0, 0x1, 0x1, 0x1, 0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, -0x1, 0x0, + -0x1, 0x0, 0x1, + 0x1, 0x0, 0x0, 0x1, - 0x1, - 0x1, - -0x1, - 0x1, - 0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, + -0x1, + -0x1, ] .span(), array![ -0x1, - -0x1, - -0x1, - 0x0, - 0x0, - 0x1, 0x1, 0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, - 0x0, + -0x1, + 0x1, 0x1, 0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, - -0x1, - 0x0, 0x1, 0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, 0x1, 0x1, + 0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x0, + -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, - -0x1, 0x0, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x1, + -0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, - 0x0, - -0x1, -0x1, 0x0, + -0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, + 0x1, -0x1, - 0x0, - 0x0, -0x1, 0x0, - 0x1, 0x0, - -0x1, 0x0, 0x0, - -0x1, + 0x1, 0x1, 0x1, 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x1, ] .span() ), @@ -15376,225 +15334,225 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x21eaeab5a71c50598eebb215, - limb1: 0xf324495f4afae74da4bc8666, - limb2: 0x79c72d7e9dac762cfec0b2dc, - limb3: 0x8f016faaa6998c28002c569 + limb0: 0xacdcf6f8c26618f0057f872d, + limb1: 0xf80b925351f635347a00324, + limb2: 0xc8772f7fa336705d785fd50f, + limb3: 0x14bf56348a9c10fcbaf2f6b6 }, y: u384 { - limb0: 0x4550779cbe455b76d540107c, - limb1: 0xd76ae9084ea00381ce5861d9, - limb2: 0x42a9e559d3b341f9d4718a95, - limb3: 0x20c550833302d8fecc9672c + limb0: 0xec29b557c125a5a5b21664ff, + limb1: 0x5e867b2d077eaa8fa3ecd6d, + limb2: 0xabe48342658b7460f08bb3fe, + limb3: 0x14766bfee463653b9ffe197b } }, Q_high: G1Point { x: u384 { - limb0: 0xcd09aab725947a9f8c8e921d, - limb1: 0xc56fe70b5c99359797da9441, - limb2: 0x2ace86540e0256d23a938bca, - limb3: 0x5b024eab82932c11af6d673 + limb0: 0xb6532935df10a963edb57ea3, + limb1: 0xd4f2e8177c6b1a616d1a032c, + limb2: 0x5de6c87880128b6dc7e43bb5, + limb3: 0x3b38c65f77852fe8aae64c0 }, y: u384 { - limb0: 0xf31323b5cd016c7e81fea7d4, - limb1: 0xe520e28e2ca3cfb21d488ff1, - limb2: 0x6df168b14347b24c90f96838, - limb3: 0xdc8c5ac05bae5c3c3be12b4 + limb0: 0xf425a39fd4f6088b55623c5f, + limb1: 0xeb43123ad64792cb6d72ad00, + limb2: 0x3ce61bb9102669b46f25acb6, + limb3: 0xaa864ff0b41a632f9e49233 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x95c786ebe46dbb1f3a7887b7, - limb1: 0xff7abdb7ed3a4043449e8601, - limb2: 0xc2482cb501966c971e97fe3b, - limb3: 0x35111cc215c26cf39542c2e + limb0: 0xb0b913d57fc2cb3a5b391332, + limb1: 0xe1ecc34145b707696915e1f, + limb2: 0xb5355f9210a6174d9fc3d2cb, + limb3: 0x167528e0e94706503cf8d29c }, y: u384 { - limb0: 0x97f82db5b367726811a597d7, - limb1: 0xbc026fae876b62bdaaf22cf, - limb2: 0xc23499f12806d45b562459a, - limb3: 0xde2a1bc9a873ee218a0f956 + limb0: 0x1ef6e5bc02cefda1ff0feaa7, + limb1: 0x5471849b6a1884ae4767bb90, + limb2: 0xbfe9185c96b5fef0a1c468ee, + limb3: 0x143e7dc3b2b7cf439b9f1ea5 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x14ffe2977a4ddbb531ce1d18, - limb1: 0xdc61c663de274609868a4411, - limb2: 0xeff51422146d4ddf8222d0f2, - limb3: 0xecd605e408f413d4eabecb9 + limb0: 0x47973c4f590c2fb4ae48ef7a, + limb1: 0xf312d8142f5aa51c89001b30, + limb2: 0x1577082faad1a85ffbbb816e, + limb3: 0x2b236744cbb72151dc8e4e }, u384 { - limb0: 0x6ece531b402d665008487372, - limb1: 0xa3edcc7639a65044fe4fd510, - limb2: 0x110434ae46ccf60363ade9ce, - limb3: 0x18d3cbbe1d928fa9135f57f + limb0: 0x38c0fdbb0dba692635bc0ed3, + limb1: 0x1c85f40821223761d9382fdd, + limb2: 0x44d55e64040d2f841bc0b2b0, + limb3: 0x48b62d55efec3692e91a8a1 }, u384 { - limb0: 0xc5c7fd9473e74a05a1b52ea7, - limb1: 0xc69de1e4c26a0226a2ad2463, - limb2: 0x1708e4596eb770a8bdcb35bd, - limb3: 0x94a036a799723a58e0812b1 + limb0: 0xa63871fa00f5f7cf2ad1e65, + limb1: 0x47a3d40774db802903f2293d, + limb2: 0x1d0317d8f6313dc51cc7d52e, + limb3: 0xab58b8ce0119396e84830f }, u384 { - limb0: 0x8a24429b129f1cc692f28f63, - limb1: 0xc9297c0936af2c397013bbde, - limb2: 0x29831203258e252be19c73ca, - limb3: 0x13fb8d517655930c1f61cd67 + limb0: 0x9aca17b4c5a9726895caa3ff, + limb1: 0x9123ab26ca0a5ba104335854, + limb2: 0x3526ed1867d17753bc7441de, + limb3: 0x734093c16e5618a560db03 }, u384 { - limb0: 0xd11df2440a570d7a4100f50b, - limb1: 0x383b59e79784a49482240a3a, - limb2: 0x3c9419088fa548adfa23c8b6, - limb3: 0xdeae28fea8f16dfe768768 + limb0: 0x9081533a3e31f828d141bda6, + limb1: 0x758c17bacd56a7f7fa55954e, + limb2: 0x4ba78fe697bdfd3c089eb57c, + limb3: 0xa91aead7f6cc7f83ea9304a }, u384 { - limb0: 0x1bbb241ca02709f25ea610de, - limb1: 0xb39869507b587b10cfc7c3a7, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0x7a325e19a4bbfe9859a7ae6, + limb1: 0x6730d2a0f6b0f622da8baaec, + limb2: 0x434bacd764774b84f38512bf, + limb3: 0x1a0111ea397fe69a4b1ba7b6 } ] .span(), a_den: array![ u384 { - limb0: 0x52b87b31c03233666ef0f8c0, - limb1: 0xe78e5df6bfef6ea1d93ae1ad, - limb2: 0x83966fd788927a64bebfc920, - limb3: 0xc7b2e77c32bc410af7db76 + limb0: 0x91fc59dcef12db337aaf67e4, + limb1: 0x28ba0ec8a143eaa4b3832b5f, + limb2: 0xc3ee606bba8adcc229207b9, + limb3: 0x1499e75017bbc0c1563125b1 }, u384 { - limb0: 0x9bed6ec144232e47c96e636e, - limb1: 0x873e510fc03f9635a9e0707c, - limb2: 0x56dfe5c45eb4419241af761, - limb3: 0x49a8cc3b344ce7374ff524c + limb0: 0x331884efa6bcc1286f7b435e, + limb1: 0xd5457c0e25fc7a4afb2884ec, + limb2: 0x767683418882d48975f25fbf, + limb3: 0xdafeb27cd8255348b683345 }, u384 { - limb0: 0x8cf12aa7d37d3535186bbc62, - limb1: 0x22569af0ce18b5ee77709ec1, - limb2: 0xdbd2991047a6bd6f2a02318, - limb3: 0x11ba5b17da70ba5a2cf09826 + limb0: 0xf0763bab1dd789f50e110cd0, + limb1: 0xba72c2f06a657a0f97dcb5a5, + limb2: 0x6ba079856afe89de36244e2, + limb3: 0x198e2bf47d6e9a568d1497ea }, u384 { - limb0: 0x53edbd174bd1636bee7effa7, - limb1: 0x4b1417b5a91852561ad46294, - limb2: 0xf1f255e22a64211de7c34026, - limb3: 0x145f031d49d91601816dd131 + limb0: 0x561a6397f03d406fbfeb1ebf, + limb1: 0xa786c1da7b611a1955796d6a, + limb2: 0x8991d92d4bb5ff36bb0b0427, + limb3: 0x4c6b3dc9de005eb4a362267 }, u384 { - limb0: 0x674a467f58699182378e7dba, - limb1: 0xcd9912f8b89c45834b9c69f9, - limb2: 0x62e18ce6a2a2acfd5076417b, - limb3: 0x10ff8b833c92dec35c3e509b + limb0: 0x53e829c5716a0a45db2989cc, + limb1: 0x320f509889b5952224b4d1bc, + limb2: 0xd8ed905faa4e3ea4f623fe30, + limb3: 0xe4a7358ae19406faea540e1 }, u384 { - limb0: 0xa73c0821acc518c02cde4d55, - limb1: 0x50a837743f213f8ad8a04c7f, - limb2: 0x4a4373b6889496839fb2ffbd, - limb3: 0x178ed4dda10d42044f71982 + limb0: 0xde21e316570cd73be4963f1a, + limb1: 0x31b9fe22e2a3e9176b08b01e, + limb2: 0x43f00e29ba43da5cb4ebb75c, + limb3: 0xa784d7e22f68ddfd30eabce }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x277248c816d3a3dfb2dfdf3f, - limb1: 0xc2aef43975a82ae42c8c471b, - limb2: 0xe2e5cba8a3eaf5bea4115c55, - limb3: 0xb8241e913225781f31bb014 + limb0: 0xc92c334085d6dcd36ae97872, + limb1: 0x63dc01b03dbd0ac58b55f25a, + limb2: 0xe4a1cdaa18688978db404b0d, + limb3: 0xabaa3399b09a7daa452c24c }, u384 { - limb0: 0x624a7da1c25a6fd368aae509, - limb1: 0x144681797b4b777587a23f01, - limb2: 0xb0b1df82a64c8d07391c0466, - limb3: 0xee0fcaa2a74b47034e4490 + limb0: 0x5d6fc8b2bb48c40dfaec5cf2, + limb1: 0xb57378de8f73cf523441ad7e, + limb2: 0xaffbe530d6619639b69f7820, + limb3: 0xff82af1d37d229b1767d90a }, u384 { - limb0: 0x2e4845ddb28be069c789d7d6, - limb1: 0xc8a876446ae3e6a480035a83, - limb2: 0x6f90dcc64d9527cef9ed86d4, - limb3: 0xea9036aaa22c55f284906a7 + limb0: 0xb8e5ec8506f4bcb62aeee5fd, + limb1: 0xb3124afbba38fd357f78f3d4, + limb2: 0x61db48611a95eca140734a81, + limb3: 0x1131db27da32dd7647e6fa15 }, u384 { - limb0: 0x9796dd82d0515bf2cbf10ce6, - limb1: 0xbec473427767f83838228c0d, - limb2: 0x68b4ccc17340bb1bba725b4b, - limb3: 0x12bd9ded7496216ad77fe3bc + limb0: 0xacdd97e4298d5e6caae388b8, + limb1: 0x19ee4cb1d1a195cf62bc367c, + limb2: 0x8d1d18ccd3c7dac6874ddc4d, + limb3: 0xb955135244c89ec497e3f2 }, u384 { - limb0: 0xa771783592e80a5c2a2a6544, - limb1: 0x9a05aef6ac3bb75538a692b2, - limb2: 0xe3f0c41925eab3cd1b1092cc, - limb3: 0x1453f3a42c37f3c9c777a75d + limb0: 0xefe0245990da21deb7befd6c, + limb1: 0x403569b82267451110ba85d3, + limb2: 0x282f70b25349e045c60bc1f4, + limb3: 0xc2f9835936037c20337a068 }, u384 { - limb0: 0xfe141aee2e5e579c277f0aa0, - limb1: 0x901e2f8ebbc6f2048bb06f26, - limb2: 0x19d2924e9e03e8ffd9a6e23b, - limb3: 0x168a1f9f16c293b9a53b1ffd + limb0: 0x6d4595f6c6cd8399e90ea3ad, + limb1: 0xf506ead707c294e4b00d3aef, + limb2: 0x61a6f318dcf14553f255697e, + limb3: 0x185227882b5987f0a4c03dc0 }, u384 { - limb0: 0xb231c4979c6444235fb750b0, - limb1: 0x43aa6359a083ebd13320f14f, - limb2: 0x29d82254afc60e51eb91d06c, - limb3: 0xa2ff3f453a733ee1c1590e4 + limb0: 0x9e2772af89fb3b01cceb3a07, + limb1: 0xbf89786e173c4ddada45d979, + limb2: 0xa3726ab058db65b0872f98d6, + limb3: 0xabd0e9349f2af5f04df1317 } ] .span(), b_den: array![ u384 { - limb0: 0x4ae1ecc700c8cd99bbc3e300, - limb1: 0x9e3977daffbdba8764eb86b5, - limb2: 0xe59bf5e2249e992faff2483, - limb3: 0x31ecb9df0caf1042bdf6dda + limb0: 0x33f567748e4e6ccdeabe9f8f, + limb1: 0x6d55c33fa0fcc8267208ad82, + limb2: 0x67189194c13cd4a1afb8e6a6, + limb3: 0x4646781b26f4f3677719fa1 }, u384 { - limb0: 0x6fb5bb05108cb91f25b98db8, - limb1: 0x1cf9443f00fe58d6a781c1f2, - limb2: 0x15b7f97117ad1064906bdd86, - limb3: 0x126a330ecd1339cdd3fd4930 + limb0: 0x69ba13bf26f504a1bdedb822, + limb1: 0x86b44af6aa8ffce3af4a13b3, + limb2: 0x5342b357591cbb1bf0bf5980, + limb3: 0x2bd88cac309879d97697da9 }, u384 { - limb0: 0xd11caa9fd9f6d4d461af9c32, - limb1: 0xbaf8c6814b00eb71a06a7b08, - limb2: 0xb05d4c9548fb1851e37666e1, - limb3: 0x12e7488af6c31c341d8b112b + limb0: 0xaddceead496127d43845333f, + limb1: 0xb43893dec58305d2036ed69b, + limb2: 0x510517db2d59bfe8b2f9db4c, + limb3: 0x18357a13493ab58b52ff6885 }, u384 { - limb0: 0x8e736f8fc17ac11628edf75b, - limb1: 0xde4c44ea803dd58de8886c02, - limb2: 0x817cc0da04bd1c4d833d917b, - limb3: 0x440899df71760782f5c291b + limb0: 0x3911e83cf608dcf27a5c3835, + limb1: 0x5fa4439198175ce5eabce10a, + limb2: 0xef3a9de486095f221b390598, + limb3: 0xdb3a4d855bbf1d433ee0798 }, u384 { - limb0: 0xd66e88bf31cb7450a7a90500, - limb1: 0xef40f7b0b54ebffa9afa1864, - limb2: 0xa5cd848078761047ee9d7d1, - limb3: 0x149696fc32907c4c4fc1454d + limb0: 0x20112c05f866ea3fdc221538, + limb1: 0xcf21192e5f70e28b50a3cbe0, + limb2: 0x53956b1168cd381367783301, + limb3: 0x12d794b612e789beafc5e760 }, u384 { - limb0: 0x29e14b2e86919835cbe4f1b6, - limb1: 0x64f778c1ca9db419d9f1d0c0, - limb2: 0x36caf86b26ccc5e5716c220d, - limb3: 0x179e104f42b40adb40ccfe2f + limb0: 0x655c805060ce6e4a06ab3e2, + limb1: 0xb2f9163a0793322506a77624, + limb2: 0x8fe2e69076d0bb06d006fcd4, + limb3: 0xf6d3e18964904a14317f7b6 }, u384 { - limb0: 0x53edbd174bd1636bee7effab, - limb1: 0x4b1417b5a91852561ad46294, - limb2: 0xf1f255e22a64211de7c34026, - limb3: 0x145f031d49d91601816dd131 + limb0: 0x561a6397f03d406fbfeb1ec3, + limb1: 0xa786c1da7b611a1955796d6a, + limb2: 0x8991d92d4bb5ff36bb0b0427, + limb3: 0x4c6b3dc9de005eb4a362267 }, u384 { - limb0: 0x674a467f58699182378e7dba, - limb1: 0xcd9912f8b89c45834b9c69f9, - limb2: 0x62e18ce6a2a2acfd5076417b, - limb3: 0x10ff8b833c92dec35c3e509b + limb0: 0x53e829c5716a0a45db2989cc, + limb1: 0x320f509889b5952224b4d1bc, + limb2: 0xd8ed905faa4e3ea4f623fe30, + limb3: 0xe4a7358ae19406faea540e1 }, u384 { - limb0: 0xa73c0821acc518c02cde4d55, - limb1: 0x50a837743f213f8ad8a04c7f, - limb2: 0x4a4373b6889496839fb2ffbd, - limb3: 0x178ed4dda10d42044f71982 + limb0: 0xde21e316570cd73be4963f1a, + limb1: 0x31b9fe22e2a3e9176b08b01e, + limb2: 0x43f00e29ba43da5cb4ebb75c, + limb3: 0xa784d7e22f68ddfd30eabce }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -15603,38 +15561,38 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xba7a708712c7c27ee4cbf613, - limb1: 0xf9431a475d3ed2a68faf9b99, - limb2: 0x6445a7a05d3c80ce635587ea, - limb3: 0x9df8886161414db8079efda + limb0: 0x807c438ca0a9f70504d085a1, + limb1: 0x4fdf34fff26f7d61711c83c4, + limb2: 0xe5a35d9402d3fbac91d5cd6c, + limb3: 0x168614a842e4c88ab2a1a4b3 }, u384 { - limb0: 0x1c58a7ca0f94e3160239cfc4, - limb1: 0xd7e18d01e0193af984f6a24a, - limb2: 0x7a00366db5d9d14e4898b1b6, - limb3: 0xf0efb7472b0586e33427d9f + limb0: 0x29c860e9ed43744fbdada1c5, + limb1: 0x7785c0380124ebd2b5cfb9d9, + limb2: 0x5aacef79798f63f7cb736706, + limb3: 0x839c67b0479cb691d77ec6b }, u384 { - limb0: 0xb16d56f553f2c4f81b3af93a, - limb1: 0x6400946b9ecd74dd4b58654f, - limb2: 0xac565e716b963f757edd329a, - limb3: 0x255538165638c3ed80b4834 + limb0: 0xb53c866605aee75bfc583258, + limb1: 0x9a5705e5b3cd4201b1ef1b9c, + limb2: 0x36b48915740fe7aef55965ca, + limb3: 0x9f7c38da7b9849217bd2b7b }, u384 { - limb0: 0x95515db4ca5ff7c8871091bd, - limb1: 0xf4adbc241c817cc5b29f983f, - limb2: 0x5fd3e5b3b0e27dca3108bf41, - limb3: 0x12ff0fcfd7f60b6ba9aee46b + limb0: 0x1b2480b41c42cd1d1832ae8f, + limb1: 0x98955cf8b279e255d6fa3482, + limb2: 0xedd42b6661554c4680aefa4d, + limb3: 0x1bd3b8ba7892bf95891b054 }, u384 { - limb0: 0x5faf7373d7ea538080ef38d7, - limb1: 0xff4cba4ea12f67e1a77e05e, - limb2: 0x7f2abeb54b1a504027458c2, - limb3: 0x5176ffff99aa3b3587d4e88 + limb0: 0x2b31f09c793a1000d83d11e5, + limb1: 0xf6426105a2d75aff70368ff5, + limb2: 0x10d53ff68ac2b293e7ffc5bd, + limb3: 0x68fbd3a17414e6638f99b99 }, u384 { - limb0: 0x257887651ddb40dfd7c50182, - limb1: 0xb39869507b587b12b3c8f530, + limb0: 0xe9e1b8beeec7bacfe31412dd, + limb1: 0xb39869507b587b1234ef3418, limb2: 0x21a5d66bb23ba5c279c2895f, limb3: 0xd0088f51cbff34d258dd3db } @@ -15642,143 +15600,143 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x9fd1565444fe2084ea4db0b7, - limb1: 0xffa7511fac9d0c8de626ebb, - limb2: 0x94698de76361c467cb716dc5, - limb3: 0xa1f06028940a11c386b999d + limb0: 0x28032b79b68969cdd051d55a, + limb1: 0xa79a1217080aaf85f4cca817, + limb2: 0xec031f321e0aedd4118fcdeb, + limb3: 0x1a942b808bb789e2f1c7158 }, u384 { - limb0: 0x83106e21a444bfb9bdd6a2ad, - limb1: 0x7fb919bfdfbf0969ddbb8a8f, - limb2: 0x2f09677d53076831ff314864, - limb3: 0x10366e84a5f429d8f6a502c0 + limb0: 0x9e3821910624a886786d009f, + limb1: 0x71de6a23faa7a2254e740910, + limb2: 0x42475ebd7efc626bb622435e, + limb3: 0x164578b7e97f7624fda8e5be }, u384 { - limb0: 0xc24577df4ca226c973d0b89a, - limb1: 0x7d04e4bb16a7a8d919d73a40, - limb2: 0x91292d34d8a814ab47cd178c, - limb3: 0x154ffa13199a493ed63f2016 + limb0: 0x2ea1ddb6ecca48526e6ef605, + limb1: 0x5f35891406be50b642ad2f60, + limb2: 0x32fd1403e2096e7b1ead6f8d, + limb3: 0x1026cb4e55abbdf79bd09da6 }, u384 { - limb0: 0x46c7521dc69550ff2ad05580, - limb1: 0x39e62a2941243f8392f50762, - limb2: 0xcae036c18cf8d0d825fbf463, - limb3: 0xba64345f5c178376ef088d8 + limb0: 0x7e718c8d1156cb20f0653cd6, + limb1: 0x7f4aec56795c5c60bfda29fb, + limb2: 0x6ff951241cbe8e59bd48146d, + limb3: 0xe4da1d0d3894a8d82226452 }, u384 { - limb0: 0xc4976b9007d97e712206bad8, - limb1: 0xbd0b6e2d518f20aef7f46851, - limb2: 0x608c6bc167d0c50c5a557dda, - limb3: 0x40a49e0493694068261faab + limb0: 0xf242140629af42e65fd65b04, + limb1: 0xf7e91857f5701dfd59bfcc2c, + limb2: 0x2e30ba3488301326df906046, + limb3: 0xd59f4d231e46ff735c4b1e8 }, u384 { - limb0: 0xfc1d48202e4cee7a2f3b6d4d, - limb1: 0x7e5c99c82d82f140e5823ea3, - limb2: 0x993c1ae1183eb5de63e026cf, - limb3: 0x4b8df5dcc513a21aa030878 + limb0: 0x2357b0d9806346c7fc609cf9, + limb1: 0x516fc8fa4a73be526e2b018, + limb2: 0x6b34c85978f073c771e23df6, + limb3: 0x18305627c9a6543b837960e }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xfa074d5648101ab1e0bf071f, - limb1: 0x23dc796139eebab4d602afe9, - limb2: 0x7285c7daab2851314f8bc8d5, - limb3: 0x5f180fb6ed19cf4523e2f14 + limb0: 0x5cabca8ae61b286c6afa4da4, + limb1: 0x7efc3ed481b0b995659df28b, + limb2: 0x93df298c0644c1fd560a6546, + limb3: 0x13ad1ea3766658fb1aa8da74 }, u384 { - limb0: 0xea56061d175d09b380c792e0, - limb1: 0xd42278f21660274fada74ad5, - limb2: 0xab356677b4edfc4b54230e2, - limb3: 0x18d3954710b5c214b60dc1f1 + limb0: 0x2d2df743c0210cc60166ab28, + limb1: 0xe665eaa303152661172d9c, + limb2: 0xb8a34560a92396921953caad, + limb3: 0x1184b4b6e34e5d6b803ec3c3 }, u384 { - limb0: 0x3e63bd75a5b2ada935b242e6, - limb1: 0x430cb9e975819fb9ad0a5845, - limb2: 0x2f8428005ab5a4a9e32ae6f9, - limb3: 0x722c41dc6dbe8902a99cd43 + limb0: 0x2de1ecfe77a541d8e4495df4, + limb1: 0x92e61f6b5981e37c5f84afd9, + limb2: 0x97d4e5a9b8c26e6373ed27b0, + limb3: 0x762a85db0feac7aa6390a1a }, u384 { - limb0: 0x46b384e4a0a0660b34ab50e5, - limb1: 0xbea639c8613cd071f4d7f4ba, - limb2: 0x6e96c99f404a831139fc6453, - limb3: 0xced5e4238c61f7fa4f9549 + limb0: 0x21abcb4dc7919f6cdde2c37f, + limb1: 0x975b7c027e9ba0be242e3868, + limb2: 0x1dafa7e356e11f79a0af1d09, + limb3: 0x12430d9fc66e8f08031471f8 }, u384 { - limb0: 0x2e860b7febe58803f591eb69, - limb1: 0xdecb99dff7640108ef00bf65, - limb2: 0x1ad1ba4bca1f0fefcb13996c, - limb3: 0x1738242521a3c61c727f7c7 + limb0: 0x5011a010a347e0f7f7bf18fb, + limb1: 0xd94aefbcbb5b31aee9c8bea6, + limb2: 0xab905c9d456728c60505cd1f, + limb3: 0x2dce6fb581923962d31d525 }, u384 { - limb0: 0x36d2334a1d9a3121a712e5d6, - limb1: 0x4a2bcf946b44826c592b7701, - limb2: 0xe7c1d711401cd230cac085c, - limb3: 0x14be693660f43f38e95bff78 + limb0: 0x1ceef66c76f676493076d1d7, + limb1: 0x8f11373f2532a8951d8caa73, + limb2: 0x68aaae431a79c47eb12132af, + limb3: 0xea1bda36f34e3c78959f5a5 }, u384 { - limb0: 0x97e480046a5cbe02941e2dfd, - limb1: 0x80007e67ea6a29e609c1dd78, - limb2: 0xc51b2dbff761eb4af31cf42d, - limb3: 0x271c64f2d279442f360db77 + limb0: 0x3c702268d49cd0ec4f91cf9d, + limb1: 0xa92943c0cd9f9742eec30df7, + limb2: 0x1fc1236b420574416945b5f0, + limb3: 0x81fe417091eef92220a0621 } ] .span(), b_den: array![ u384 { - limb0: 0xcdf1595159f98213a9371831, - limb1: 0xd8b901a6f4764cff5addbaef, - limb2: 0xe5a8ac6290fc61a3a40a454, - limb3: 0xe7b061feb829dd69692bec0 + limb0: 0xa00cade6da25a73741475568, + limb1: 0x9e68485c202abe17d332a05c, + limb2: 0xb00c7cc8782bb750463f37ae, + limb3: 0x6a50ae022ede278bc71c563 }, u384 { - limb0: 0xa999b8871d14fee6f75b355e, - limb1: 0x3082c1bd919a395f39962a40, - limb2: 0x358e4446832f09be15bafc13, - limb3: 0xcd7963e24d0da2f445cbb94 + limb0: 0x64e48644ea95a219e1b5027b, + limb1: 0x91e730ad068ba628ddcc2446, + limb2: 0x3f3a746fce8ba71ffdf9d53b, + limb3: 0xb12ad20f97e24c515509fd6 }, u384 { - limb0: 0xf519df7e048b9b25cf43e267, - limb1: 0xbe811b09768bc0f80b58e906, - limb2: 0x7ac1ae4d353a701e44a525f3, - limb3: 0x73cb28db9e9712c77a98937 + limb0: 0x57df76dc3f2b2149b9bc82be, + limb1: 0xae747f0e2d975690cd5cbd83, + limb2: 0x455cf660bf3722e293ab98b6, + limb3: 0xc990964e3af2aa9d90b272c }, u384 { - limb0: 0x58469ecbeb556481958fb161, - limb1: 0x2931787511f8e28eecde8c47, - limb2: 0x39530f3ece5670be7c5719d3, - limb3: 0x4b5ef45ed46b4c55df66d94 + limb0: 0xbf215dae87e6965191e7735c, + limb1: 0xd6641e2f001a34c0b6dd5007, + limb2: 0x25510a13c81690311fa5fa22, + limb3: 0x6dda626e3e0d59fa16eb336 }, u384 { - limb0: 0xe41a1c6209abb97e45f1e362, - limb1: 0xcb5ffd42f4a96019ee12bd7, - limb2: 0x6def69ab8dd330de75022d10, - limb3: 0x65e841b914e9358b51145b7 + limb0: 0x49871aa38e3b41ff7c71759, + limb1: 0x83212641e3062dd2781b39c7, + limb2: 0x7472ede0d6ce17fd4d599efb, + limb3: 0x17ab282c3e1168cd3e845df2 }, u384 { - limb0: 0x16698604bd6e0b230bec323, - limb1: 0xf46793ad60277b8913434d2, - limb2: 0xb2cdebe1d52ba09fe3c8a00b, - limb3: 0xe3265a0115f4b2b332f9a42 + limb0: 0xbc00a11cee5763725ff169e9, + limb1: 0x73917b52995b404ade37efc0, + limb2: 0xdfd03569c5cb3d98e6366765, + limb3: 0x1632e0d8481553067caef5df }, u384 { - limb0: 0x46c7521dc69550ff2ad05584, - limb1: 0x39e62a2941243f8392f50762, - limb2: 0xcae036c18cf8d0d825fbf463, - limb3: 0xba64345f5c178376ef088d8 + limb0: 0x7e718c8d1156cb20f0653cda, + limb1: 0x7f4aec56795c5c60bfda29fb, + limb2: 0x6ff951241cbe8e59bd48146d, + limb3: 0xe4da1d0d3894a8d82226452 }, u384 { - limb0: 0xc4976b9007d97e712206bad8, - limb1: 0xbd0b6e2d518f20aef7f46851, - limb2: 0x608c6bc167d0c50c5a557dda, - limb3: 0x40a49e0493694068261faab + limb0: 0xf242140629af42e65fd65b04, + limb1: 0xf7e91857f5701dfd59bfcc2c, + limb2: 0x2e30ba3488301326df906046, + limb3: 0xd59f4d231e46ff735c4b1e8 }, u384 { - limb0: 0xfc1d48202e4cee7a2f3b6d4d, - limb1: 0x7e5c99c82d82f140e5823ea3, - limb2: 0x993c1ae1183eb5de63e026cf, - limb3: 0x4b8df5dcc513a21aa030878 + limb0: 0x2357b0d9806346c7fc609cf9, + limb1: 0x516fc8fa4a73be526e2b018, + limb2: 0x6b34c85978f073c771e23df6, + limb3: 0x18305627c9a6543b837960e }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -15787,10 +15745,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x4ab73e59c5e6bcab517476f4, - limb1: 0x7a583069046270d7ab45e8c2, - limb2: 0xdb5726b53d46d526ecb95acb, - limb3: 0x1912a2249ff3aaa136708d97 + limb0: 0xccc145fb6d7281c216cfc4a6, + limb1: 0x480ae0248edff2095d39240c, + limb2: 0xfc7c8730f6102560ff90ad6d, + limb3: 0x15b1e342db213fa33ccde977 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -15802,66 +15760,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x3e4d3385955be0fe5598c73d, - limb1: 0x9fa69f0c878729bca402581, - limb2: 0xcdeb5ff71d4cc227b7d9f189, - limb3: 0x19f873fae16949a1c6764714 + limb0: 0x62d0e6e35331a6182595fde3, + limb1: 0xed3a3d49c3efe2d103ad6d16, + limb2: 0x301da7591324b11c7e056b48, + limb3: 0xf1590f4dd8f26ca447a7390 }, u384 { - limb0: 0x4e82ce5caffcca4138f890d7, - limb1: 0xa2462dddacdd80494232e5bb, - limb2: 0x5634f9ce54de881b9a5988b8, - limb3: 0x10ffdb335ffa8d09f6d0a514 + limb0: 0xfb9bc2f4152a8b61b710c381, + limb1: 0xeb4ff0f65c9b617039ac9eb0, + limb2: 0x737b31a43835f44e7f6216fd, + limb3: 0x19d96e8d924073e5ce90180f }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xc1cfc05a9da2fe015d83a346, - limb1: 0xdfa46a812f9cfa8013b99c4, - limb2: 0x81d8237d5d8bc9c4dd24bfc1, - limb3: 0x86ddab62b0e2993df19a81e + limb0: 0xb66b582e0d4a89a9d681df49, + limb1: 0xc7f87ebb608769fdd10f0b8e, + limb2: 0xc32282e066022bef683c56d, + limb3: 0x183c870a883915a77307ea5d }, u384 { - limb0: 0xcc22673579c8d924041ba920, - limb1: 0x57f28a4019fb5e423bb42b55, - limb2: 0x800097d09be616a8e301f00b, - limb3: 0xb70019507f8cac1c930687 + limb0: 0x4999105736bd30761b42afbc, + limb1: 0x7c039df6232ed093cc16b796, + limb2: 0xe20955ff78a8cb176f70904e, + limb3: 0xa22534745b472983db1c682 }, u384 { - limb0: 0xe872a314f9f81c5e0171c34b, - limb1: 0x48816cb767b8ab46aa6119df, - limb2: 0xf46e2f6b324a5ab93ab6b5b5, - limb3: 0x17161a7704486f924848931d + limb0: 0x48500f2f2fc4eeca59cff0fb, + limb1: 0x45b6f5fcc1600c2bd9081625, + limb2: 0x8e9c22e8c570f456d5fd4e59, + limb3: 0x8600f5032681db3bd0a25f6 } ] .span(), b_den: array![ u384 { - limb0: 0xe538ce17277283f956641cf3, - limb1: 0xf2572fe03dcee802ccfc9608, - limb2: 0x6dca795647cd261004d88de5, - limb3: 0x19de9a2cd92572b838862530 + limb0: 0x289b9b8dd8c898609658a236, + limb1: 0xe6874fe5225d9efbd15db45c, + limb2: 0x39df43b583a42d68110b87a4, + limb3: 0x8541fff033ccdf47bb27ed4 }, u384 { - limb0: 0xd76339734bf52904e3e2ee06, - limb1: 0xbab71234c61414dccb7396ef, - limb2: 0xd23c8d8a8a8b8964825bfd63, - limb3: 0xffd48f90cea66f3450b44e4 + limb0: 0xda730bd126ad2d86dc440e03, + limb1: 0x77ad4bf68e5aa3548aae7ac7, + limb2: 0x409c00ab371eeab22f923b9, + limb3: 0x196284779c821bc858ed691b }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x3e4d3385955be0fe5598c73d, - limb1: 0x9fa69f0c878729bca402581, - limb2: 0xcdeb5ff71d4cc227b7d9f189, - limb3: 0x19f873fae16949a1c6764714 + limb0: 0x62d0e6e35331a6182595fde3, + limb1: 0xed3a3d49c3efe2d103ad6d16, + limb2: 0x301da7591324b11c7e056b48, + limb3: 0xf1590f4dd8f26ca447a7390 }, u384 { - limb0: 0x4e82ce5caffcca4138f890d7, - limb1: 0xa2462dddacdd80494232e5bb, - limb2: 0x5634f9ce54de881b9a5988b8, - limb3: 0x10ffdb335ffa8d09f6d0a514 + limb0: 0xfb9bc2f4152a8b61b710c381, + limb1: 0xeb4ff0f65c9b617039ac9eb0, + limb2: 0x737b31a43835f44e7f6216fd, + limb3: 0x19d96e8d924073e5ce90180f }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -15870,12 +15828,37 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x29b8251b8a0769302466111f, - limb1: 0x82ff1c24adee17b852c8baf0, - limb2: 0x2b9a16f34777ebdfa26aaa18, - limb3: 0xbc8cf0c6b10bef899578b14 + limb0: 0x7acefd26ed59773559ce025a, + limb1: 0x8ae06c14c3645a2fc8de4eb9, + limb2: 0x38379e72e28343aff576e5b2, + limb3: 0x590849f3d8ca1339547b998 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0xee4125b3a182e43bff8b37c, + limb1: 0x3c9d677273035afa09c25037, + limb2: 0x38b421f4e8132dee59ba45e2, + limb3: 0x39511bc3dda92e99a855c13 + }, + u384 { + limb0: 0xe7e6d01d0706f95ed980b927, + limb1: 0x52474bcb1296bd9b2c2b6f00, + limb2: 0x36e50e093908508f6a9d1972, + limb3: 0x1469fd52f26c75c53ac1bdb + }, + u384 { + limb0: 0x8a93c8d489b9e82cc8694dbf, + limb1: 0x563ae3fb5db12a13752f9eb2, + limb2: 0x212680bdc90200f49f320bed, + limb3: 0x3720a7d6b295bffa49d13ff + }, + u384 { + limb0: 0x70868f44caf3252179015bc5, + limb1: 0xf5d00b4e4d9d3b0185d75cde, + limb2: 0xfb9a15feab936107993f6e9a, + limb3: 0x70fbc7fe62abc53ed46646e + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 1 @@ -15883,16 +15866,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x61db39a3daf4364ec5ea0425, - limb1: 0x3dbfb7ca82e377c20b0d116d, - limb2: 0x4f76f82baf236d6237c412c0, - limb3: 0xad1b439cac3f8e345be4102 + limb0: 0x2e35edac9bb803daf91dad6f, + limb1: 0x210f32988aeff273744e8fb7, + limb2: 0x288da649bfeec950b451e9d0, + limb3: 0x23b3bd3bfa6b97fff48a478 }, y: u384 { - limb0: 0xbbf91cee78e3796f999eaddc, - limb1: 0x9f716c1da01343d30f913282, - limb2: 0x840912f22bc02ac7c428296a, - limb3: 0x145eeb3b2ab8e4ece15c2d39 + limb0: 0x1a23eadcf99dff13e4f03fcf, + limb1: 0x3b92c4aa7292f0f84ed79dd7, + limb2: 0xdc70f95d35fccb327210aa13, + limb3: 0x116453978d565e5e58bb8033 } } ); @@ -15904,108 +15887,108 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x5c04939426635091126ca660, - limb1: 0xbda0e3b035c1d97bb5c065e0, - limb2: 0x58ff3915b272ef23a96576f9, - limb3: 0x20e7270d0ece788b6ca615b + limb0: 0x773b2a245b6a065456fc32b0, + limb1: 0x897fa9e077a6875f72a03308, + limb2: 0x6ed2a759b25337f80799af12, + limb3: 0x16e3691d46ff680f4a5d3d43 }, y: u384 { - limb0: 0xced168e1685319037c21a42a, - limb1: 0x69167d702ce29b57d3194fe9, - limb2: 0x66b0cc70c61e2d838967ab3e, - limb3: 0x16f7c9f403639d38654106df + limb0: 0x3643c2ccb78e7cd957f8ff9, + limb1: 0xb624cf18952bc4d0584f2ce1, + limb2: 0x5fc57db46b2a4971016c0def, + limb3: 0x10a830698f3f49076ca44648 } }, G1Point { x: u384 { - limb0: 0x5c9ebba037d9e20e0b015fe2, - limb1: 0xa50ee69d70328c0b1a5d1f52, - limb2: 0x16bef11e4aae2702fd9ecde1, - limb3: 0xd7e0fcfd1ed70dc14540e88 + limb0: 0x82a692584e9af88f5d878df3, + limb1: 0x5debf3f3d65d551886f9a860, + limb2: 0xe3fe0d1d92c1cbb678741a2b, + limb3: 0xe120f1cab655c57ac49b63c }, y: u384 { - limb0: 0x6d2e8088072b02e2e67344ad, - limb1: 0x9dbd49bd02c9459482d3e344, - limb2: 0x36e8cd0a2ccae77be954e67, - limb3: 0x2258014713f5f734f2de10b + limb0: 0x54f79c8c1c8d565075df8a72, + limb1: 0x415135ff67feb75e5e18411f, + limb2: 0xaecf268f1d2aa62b2530c456, + limb3: 0x14e7b0a8bd8acffd8947936d } }, G1Point { x: u384 { - limb0: 0x27c7dd54ab8ff4e5ffe549fe, - limb1: 0x127df6d297105fed9f398010, - limb2: 0xb2bae877f2d889c09d653e90, - limb3: 0x112cb186e736915b9bee577d + limb0: 0x4b5ced6888d492b24c240cbf, + limb1: 0xfde7b1b96877321ecb226edd, + limb2: 0xf620f232736aa7b8e7664cda, + limb3: 0xa74ed7ca318fe0b6da2e2fd }, y: u384 { - limb0: 0x461f10c0a69838df8bfd234a, - limb1: 0x426708194ddd48e2b48da7ec, - limb2: 0xb7888e4ff9ffb46aa8a52f1f, - limb3: 0xc8f023e671ebd65d94c177f + limb0: 0xedc22f36c1e1fda8b0ccc5c1, + limb1: 0x38803b2c8ed6d34e65a3b433, + limb2: 0x5f22899e69d7aa490b93f78f, + limb3: 0x22e954621d2d165d5e7c679 } }, G1Point { x: u384 { - limb0: 0x79771c027f121ea0a42ca4c3, - limb1: 0x939eaf233740c2e14bbf861c, - limb2: 0xe6717a87798d79329461d907, - limb3: 0xc48f608dfda925a98dcef09 + limb0: 0x1c09247f64bd52e03c9626c9, + limb1: 0x55bac2422adf5935e8402df8, + limb2: 0x48fc029bc6be742638774f65, + limb3: 0xab6318e0a35ac0196430f55 }, y: u384 { - limb0: 0x2686a3a34f436af8775a575c, - limb1: 0xe89fb05a2770a6828fb5b03a, - limb2: 0x2ba4808eaabf78611dae4e33, - limb3: 0xd0752dc1d7762cb8ec73fcd + limb0: 0xf3b34c19c2bb19af27e6347, + limb1: 0x6026a2cb028356752122f37b, + limb2: 0xfc21b3e673b1f51a2d461336, + limb3: 0x6e0b95b26e0041fe5d57c87 } }, G1Point { x: u384 { - limb0: 0x2bdd09c5ed52aadfd8493e38, - limb1: 0xf4d82fe114a2a5a85c0eb11, - limb2: 0xb2a1947f23be0592deafcb44, - limb3: 0x191122c9eff96401835cf2cb + limb0: 0x24e1dc068b6d56c47387906e, + limb1: 0x24e9434af3dc353869ea42db, + limb2: 0x50bc2c3c2fc3b6f82b6c10aa, + limb3: 0x8d0c82c51c822a0a1a93ed9 }, y: u384 { - limb0: 0x9ec531a03cf034ede13832d6, - limb1: 0x8a1df0279105a185b96fbffe, - limb2: 0x863dc0fa8e7cc6cf07f0f464, - limb3: 0xf1ed64b8c08c100a736686f + limb0: 0xd6d67d5278ef42ddfa1909be, + limb1: 0xcf8007cf2b6de10b5c8115c1, + limb2: 0x59b0bd58cbf4630659d92a5d, + limb3: 0x18240fde8ee20c11855dd292 } }, G1Point { x: u384 { - limb0: 0xd41682e7ae3ee57ac09f3f33, - limb1: 0x38a879e34ebf24d81dc42589, - limb2: 0x6d46efbb18f594d4f4d0fc4c, - limb3: 0x4a0624f926846e40bcc5733 + limb0: 0x9570f8392494bc867d9746d7, + limb1: 0x4f3dcbf7e11e87a992bb72b7, + limb2: 0x5cafbcd3e86e4e6aeeb43e6c, + limb3: 0x69c47ae130cdbd2953cffc9 }, y: u384 { - limb0: 0x7bdc7e2219b0d92d9f312969, - limb1: 0x1067de8c58a7725cd32ef6af, - limb2: 0x8a079490328c0c5cb661794, - limb3: 0x1799e4b77158610781decb42 + limb0: 0xf5ad846e6d0069ebb4dd28c5, + limb1: 0xad32baa97ab7c332f8c8f7f8, + limb2: 0xcaa8813dbadf06b78cb620b3, + limb3: 0x84563f806c5a57e665e2104 } }, ] .span(); let scalars = array![ u256 { - low: 0xe4bacd7874aba9fc8930d17952ab793f, high: 0x42d094150761585b4168705a533c9a31 + low: 0xf7318bd48efc67dacbdd002dc9f51e42, high: 0x4fdcf466cfe4589573c1e1b246107d4e }, u256 { - low: 0x14827a895e6364c630ac79dd0b5aafef, high: 0x2c4171dd864696c1deb4e6c435a7c6ed + low: 0x73510d22e6420d599ffa4c2cc1277947, high: 0x3af373a2c0f07dcf7278052fd5d4c565 }, u256 { - low: 0x4053b188339d78f5d658b1b33012ae1c, high: 0x2691b2aabc5074acbaa172acac33f644 + low: 0x5205ea3ef9a3328c5acb4be938f3bf30, high: 0x1b36ffbf71a3782484d60ea48f9a7bc5 }, u256 { - low: 0x6279d944dc2897c6845398134fee7144, high: 0x6f9ce655580c79fc7b69e69041300879 + low: 0x6fa2e03471a48f4e5833c5ddfeec510f, high: 0x369b12e4625aa63cf8b36ef4be3048f4 }, u256 { - low: 0x4e49df560b648acd3d6e2667b6651d6e, high: 0x12dbe2f1284b9d78d4e2753ef26a5b7 + low: 0xa76c2df0d2c853be63f43eb93aad34d2, high: 0x301654fb602932fe0c2f283d55be9823 }, u256 { - low: 0x702dc88ab97fb3bb7ecc040c75ff93f0, high: 0x34c05ab0cf1accc1eaca38110c26e5d9 + low: 0xe52cb32d7001890ec25fb2014d730631, high: 0x6ed8d28b608152ee632ce9e9eb9bd5f2 }, ] .span(); @@ -16013,170 +15996,170 @@ mod msm_tests { array![ ( array![ - -0x1, - 0x0, 0x0, 0x1, - 0x0, -0x1, 0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x0, -0x1, 0x0, 0x0, 0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x1, - 0x0, -0x1, 0x1, 0x0, - 0x0, - 0x1, - 0x1, - 0x1, - -0x1, -0x1, 0x0, 0x0, 0x1, - -0x1, - 0x1, - 0x1, - -0x1, - 0x0, 0x0, - 0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, + -0x1, 0x1, + -0x1, + 0x0, 0x0, -0x1, + 0x0, + 0x1, 0x1, 0x0, + 0x0, + -0x1, + 0x0, -0x1, 0x0, 0x1, -0x1, 0x0, + 0x1, + 0x0, 0x0, + 0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, + 0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x1, 0x0, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, 0x0, + 0x0, + 0x0, + -0x1, + -0x1, -0x1, -0x1, ] .span(), array![ - 0x0, 0x1, - 0x0, - -0x1, - -0x1, 0x1, -0x1, - -0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, -0x1, 0x1, 0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, -0x1, 0x1, 0x1, -0x1, + -0x1, 0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, 0x1, - 0x0, - 0x1, 0x1, 0x0, -0x1, 0x0, -0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, + 0x0, -0x1, 0x1, 0x1, + 0x1, + 0x1, -0x1, -0x1, 0x0, + 0x0, + -0x1, 0x1, + -0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, - 0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, + 0x1, + 0x1, 0x0, - 0x0, + 0x1, + -0x1, + 0x1, 0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, - 0x0, - 0x0, + 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, 0x1, -0x1, - -0x1, + 0x0, 0x1, 0x1, ] @@ -16184,45 +16167,42 @@ mod msm_tests { ), ( array![ - 0x0, - -0x1, - -0x1, - -0x1, 0x1, 0x1, 0x1, 0x0, -0x1, + 0x1, -0x1, + 0x0, 0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x0, -0x1, - -0x1, + 0x1, + 0x0, -0x1, -0x1, 0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, 0x0, - 0x0, - -0x1, 0x1, - 0x0, 0x1, - 0x0, + -0x1, -0x1, -0x1, -0x1, 0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, - 0x0, 0x1, 0x1, 0x0, @@ -16230,353 +16210,355 @@ mod msm_tests { -0x1, 0x1, -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x1, 0x0, - -0x1, 0x0, + -0x1, 0x0, - 0x1, -0x1, 0x1, 0x1, - 0x0, + -0x1, -0x1, 0x1, 0x0, + -0x1, + -0x1, + 0x0, 0x1, + -0x1, + -0x1, 0x1, 0x1, - 0x0, - 0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, - 0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x0, 0x0, 0x1, - -0x1, - -0x1, ] .span(), array![ - 0x1, - 0x0, -0x1, 0x1, 0x1, 0x0, - -0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, 0x1, - 0x0, + -0x1, 0x0, 0x1, -0x1, + 0x0, + 0x1, 0x1, -0x1, 0x1, 0x0, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, - 0x0, - -0x1, - 0x0, -0x1, - 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, - -0x1, 0x1, 0x0, - -0x1, - 0x0, - -0x1, 0x1, 0x1, -0x1, -0x1, + -0x1, + 0x1, 0x1, - 0x0, - 0x0, -0x1, -0x1, 0x0, -0x1, 0x1, - 0x0, + -0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x0, -0x1, - 0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x0, 0x1, - -0x1, - -0x1, 0x1, + 0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, + -0x1, + 0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x1, -0x1, + 0x1, + 0x1, ] .span() ), ( array![ 0x0, - 0x1, - -0x1, - 0x0, - 0x1, - 0x1, -0x1, -0x1, 0x1, -0x1, -0x1, - 0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x0, - 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, - -0x1, + 0x1, 0x0, 0x0, 0x0, - 0x1, - 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x0, + -0x1, 0x0, - 0x1, -0x1, - 0x1, + -0x1, -0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x1, + -0x1, 0x1, - 0x1, - 0x0, 0x0, 0x0, 0x0, -0x1, - 0x0, -0x1, - 0x0, + -0x1, -0x1, 0x1, + -0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x1, -0x1, -0x1, 0x1, -0x1, - 0x1, + -0x1, + 0x0, 0x0, 0x0, + -0x1, + 0x1, 0x1, -0x1, - 0x0, + -0x1, + 0x1, 0x1, -0x1, - 0x0, -0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x1, ] .span(), array![ - 0x1, - 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, - -0x1, + 0x0, 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, -0x1, + -0x1, + 0x0, + 0x0, + -0x1, + 0x0, 0x0, -0x1, 0x0, + 0x0, 0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, 0x0, + 0x0, -0x1, 0x1, + 0x0, 0x1, 0x1, -0x1, 0x1, 0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, - 0x0, 0x0, 0x0, -0x1, -0x1, - 0x1, - -0x1, - 0x0, -0x1, 0x0, 0x0, - 0x0, + 0x1, + -0x1, 0x0, -0x1, + 0x0, 0x1, 0x1, 0x1, - 0x0, -0x1, -0x1, - 0x1, - 0x0, - 0x1, -0x1, - 0x0, -0x1, 0x1, + 0x1, 0x0, - 0x0, + 0x1, + -0x1, 0x0, 0x0, 0x1, + 0x1, + 0x1, + 0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, + -0x1, -0x1, ] .span() ), ( array![ - -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x0, 0x0, 0x1, + -0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, 0x0, + 0x1, + -0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x0, + 0x0, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x0, - 0x0, 0x1, 0x0, -0x1, -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, + 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, - 0x0, - -0x1, - -0x1, - -0x1, + 0x1, 0x0, 0x1, -0x1, @@ -16586,441 +16568,449 @@ mod msm_tests { -0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, 0x1, 0x1, - 0x0, + 0x1, -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x0, 0x1, ] .span(), array![ + -0x1, 0x0, -0x1, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, - 0x0, -0x1, - 0x0, - -0x1, - 0x1, - 0x1, - 0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, -0x1, + 0x0, + 0x0, + 0x1, 0x1, -0x1, 0x0, 0x0, 0x0, - 0x1, - -0x1, - 0x1, 0x0, 0x0, -0x1, 0x0, + 0x1, 0x0, + -0x1, 0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x1, 0x0, + 0x0, + 0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x0, -0x1, + 0x1, -0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, -0x1, + 0x1, -0x1, + 0x1, 0x0, + 0x1, -0x1, 0x0, + -0x1, + -0x1, + 0x1, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x0, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, ] .span() ), ( array![ - 0x1, - -0x1, - 0x0, 0x1, -0x1, -0x1, -0x1, + 0x0, -0x1, - 0x1, 0x0, 0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, - 0x0, 0x1, - 0x0, -0x1, - 0x0, -0x1, + 0x1, + 0x1, -0x1, 0x1, 0x0, -0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, 0x1, -0x1, 0x1, 0x1, + 0x0, -0x1, - 0x1, -0x1, + 0x1, + 0x0, 0x0, 0x0, - 0x1, - 0x1, 0x0, - -0x1, 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x0, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, + 0x1, -0x1, 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, -0x1, - -0x1, - 0x0, + 0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, + -0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ - -0x1, 0x1, 0x0, 0x1, - 0x0, - 0x0, 0x1, + -0x1, 0x0, 0x1, - 0x1, - 0x1, -0x1, 0x0, -0x1, - 0x1, - 0x1, + 0x0, + 0x0, + 0x0, + -0x1, -0x1, -0x1, 0x0, + 0x0, + -0x1, -0x1, 0x0, - 0x1, 0x0, 0x1, -0x1, + 0x0, + -0x1, -0x1, + 0x1, + 0x0, -0x1, 0x1, 0x1, 0x1, -0x1, 0x0, + -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x0, -0x1, - 0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, + -0x1, + -0x1, 0x0, + 0x0, + -0x1, 0x1, -0x1, + 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, -0x1, + 0x0, 0x1, -0x1, + -0x1, + 0x1, 0x0, 0x0, 0x0, -0x1, - 0x0, -0x1, - 0x1, -0x1, - 0x0, - 0x1, - 0x0, - 0x0, -0x1, - 0x1, - 0x0, -0x1, 0x0, - -0x1, - 0x1, - 0x1, - 0x1, + 0x0, -0x1, 0x0, 0x1, + -0x1, ] .span() ), ( array![ + 0x0, 0x1, 0x1, + -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, 0x1, -0x1, + 0x1, + 0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x1, -0x1, + 0x1, + -0x1, + -0x1, 0x0, -0x1, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x0, 0x0, 0x1, + -0x1, 0x0, 0x0, - 0x1, -0x1, - 0x1, + -0x1, + 0x0, + -0x1, 0x1, -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, - 0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x0, - 0x1, 0x0, 0x1, -0x1, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, + 0x1, -0x1, 0x1, 0x1, -0x1, - -0x1, + 0x0, 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, + 0x0, 0x1, - 0x1, - 0x1, + -0x1, -0x1, 0x0, + -0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x1, + -0x1, + -0x1, ] .span(), array![ + 0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, - 0x1, - 0x0, - 0x0, 0x0, 0x1, + 0x1, -0x1, 0x1, - 0x0, -0x1, -0x1, 0x1, + 0x1, -0x1, -0x1, + 0x1, -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, - 0x0, 0x1, - 0x0, - -0x1, -0x1, + 0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x1, - -0x1, - -0x1, - 0x0, + 0x1, 0x0, -0x1, -0x1, 0x0, -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, + -0x1, 0x0, + 0x1, 0x0, - -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, + 0x0, 0x1, 0x0, -0x1, -0x1, - -0x1, - 0x1, - 0x1, 0x1, 0x0, + 0x0, 0x1, -0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, + 0x1, + 0x1, + 0x0, -0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, - -0x1, ] .span() ), @@ -17030,249 +17020,249 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x80aec8f9f92d3cc1af1dfd5, - limb1: 0xd3c9708fe461c96cdc12571c, - limb2: 0x7a5afec94ada02394dd86531, - limb3: 0xa2afb89ebbacb6aa69f57e9 + limb0: 0xbad1ce71b91007f1e969eaa5, + limb1: 0xc0e52f3c33cd7f002c5b2a0, + limb2: 0x6b16bc9c2af27052248777cc, + limb3: 0x12bba9b5f430a8b66d2ea280 }, y: u384 { - limb0: 0xf8f5f7ec1b3b640c59d77241, - limb1: 0x3cc53668db5969354dafe8c, - limb2: 0x39dce3591375a1e37d19fb0c, - limb3: 0x1067fcfe90fe269960eb7dcc + limb0: 0xdcf009aa59ba5e9d93a0e2d9, + limb1: 0x86a6f5ccc58bcd136f729602, + limb2: 0xa52080398a7d23ff06d247cb, + limb3: 0x11ff8c27161816ca07362fc } }, Q_high: G1Point { x: u384 { - limb0: 0x976aebd2b726536327b4f5c2, - limb1: 0x33d62f1bb284ca96b462dd68, - limb2: 0x267dafe5c6bb27ddde02dbf5, - limb3: 0x1891e65b757bbec956ab311e + limb0: 0x2d587366a83df2b3ea9a85b3, + limb1: 0x237d60fc73b51cb0c702c798, + limb2: 0x1a0a681dbe9c1ecc2888929e, + limb3: 0x147a9fe0c379b7de6b1efe1 }, y: u384 { - limb0: 0xf803dca80686892d1596ece1, - limb1: 0xe2bf44f12afaa56f18c6e577, - limb2: 0x7b5c87947e3b106045a299aa, - limb3: 0xd4e3139c3b285d815da86c0 + limb0: 0xd2cc1001d6ecbd29de6e1c61, + limb1: 0xaaabfa4a92fd6ccdc22bde8e, + limb2: 0xe686d9a65c900e2b3612f640, + limb3: 0xa46672770aab698ae5d3a91 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xd51fc75cc3f17414ff398213, - limb1: 0x94187f57404a478646ba3d69, - limb2: 0xb94a0b15703fd6c33bbfbe8f, - limb3: 0x10de3c4c1da1811c38941e82 + limb0: 0x8035f34eb84cb240e9f56a9f, + limb1: 0xf39fb57107add07ded679ad9, + limb2: 0x699d08979d914227bf92d02d, + limb3: 0x1e766bda3b090ac52fb05ba }, y: u384 { - limb0: 0xed68d336455e9f772f64d5a9, - limb1: 0xb4968e4b20dac0a2782b5599, - limb2: 0x5b1e2f92b5ac8aa97b3c784a, - limb3: 0x11971c0dd93bf08fdcf5feb1 + limb0: 0x3c0bacd439f927369ce3552c, + limb1: 0x78c030b95b458f1faa35e12c, + limb2: 0x2515471df51a0a488d1da1b9, + limb3: 0x26c7cfb1f267b377a1b73a8 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x64d8bea35a2bbefb3247344d, - limb1: 0x9588f624e6c3dd487b07a639, - limb2: 0x4a5ecae17740da06b1ff9fcb, - limb3: 0x1759e2ddb679c5dedd1c6d73 + limb0: 0x8791037e548bb439436431b9, + limb1: 0xe6afbe9fa31504b1ede41c85, + limb2: 0xb4c3e494a36d2901ac73504, + limb3: 0xf7255520bd15652ee6f9b1a }, u384 { - limb0: 0xd302e5645ee47728188b6b5, - limb1: 0x8f1487f6dfb7ce9fbfa5f47, - limb2: 0x83e7fd429e4b057c70bb5f15, - limb3: 0x2a8b1611611e4572d59b635 + limb0: 0x528f55202bfc214aa4592d21, + limb1: 0xdff017d85ad156a208b2e9cf, + limb2: 0xe64a98bff0b9178d27cb9409, + limb3: 0x15a4e3588a9f2cb22b0ac3fe }, u384 { - limb0: 0x7b05483aa2187709c5e2f023, - limb1: 0x5d717ed9bc4b5ad66a5a39af, - limb2: 0xbf171c69e87fb342946b2433, - limb3: 0x1801254c87ddff7a21b0605c + limb0: 0x981a888d33aeb9668db5d19c, + limb1: 0x1b03f2fbaae59203531ab35c, + limb2: 0xe717c12004e4fba4ad11958e, + limb3: 0x1142395593061e641065d0ff }, u384 { - limb0: 0x3fc2c6bbbbba2e2c9c91238d, - limb1: 0x9c15a189c83b4c45c835e647, - limb2: 0x89d41f0cdd554b463e597af, - limb3: 0xaf40ff0474aecbd1081c492 + limb0: 0x66dbb8b0d4ab9848ed0b7808, + limb1: 0x6a7acce5f461289d3de2f05d, + limb2: 0x433d7089c8fad9cf3ba1af53, + limb3: 0xc7ce48e1e785fb2a74d95e4 }, u384 { - limb0: 0x9d582efdf24424627d743049, - limb1: 0x96a23671c80b1124141d8b98, - limb2: 0xe9d1f8da7d127e528edee74a, - limb3: 0x2f25fc1959092d45a5036ae + limb0: 0xaa5956266ba837d74d60db2b, + limb1: 0x40b15b268daae2294481b040, + limb2: 0xd1a0eb0b64ae9ccaec2af004, + limb3: 0x101abf4fc9627ba24c9b5883 }, u384 { - limb0: 0x26cb000e8080bf26a171785c, - limb1: 0xcc20fc51b51ed3879f1027f6, - limb2: 0xf9c6a086d99fff6b4e483ea7, - limb3: 0x9f09a016ab35d02e8653558 + limb0: 0x4d25b87a48aedc44e3ea1135, + limb1: 0xf9c359815348144e1086a9f3, + limb2: 0x87a60b2797f161537a54557b, + limb3: 0xe5ed7a215bbeeba70e03db7 }, u384 { - limb0: 0x19e498c0fbad6c74b3969ed5, - limb1: 0xb39869507b587b1258e40646, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0xc580e78fcebca84e0918a59f, + limb1: 0x6730d2a0f6b0f62351d38322, + limb2: 0x434bacd764774b84f38512bf, + limb3: 0x1a0111ea397fe69a4b1ba7b6 } ] .span(), a_den: array![ u384 { - limb0: 0x651a2b3d7cd2025fc5ab1eba, - limb1: 0xfb954de789080bff23d2a35e, - limb2: 0x6b2f1cfb1e075de9d99a0a34, - limb3: 0x19b71341a530a7dc5a54267d + limb0: 0x1fdbd9900dd261d637654109, + limb1: 0x95c16a69f348bb310d2db92a, + limb2: 0xfbac108b7d6cfc8867cb5424, + limb3: 0x1785456d7aac77822af6670a }, u384 { - limb0: 0x749990c680401b0f4f46cdf8, - limb1: 0xfe6a3faaea943d80d1db4d0b, - limb2: 0xd1745a164650bd786a13b6c8, - limb3: 0x18a4de322a75d35fa031ed4e + limb0: 0x33f53689a20e0995b544e10, + limb1: 0x8dea924957e5b25a3121e7de, + limb2: 0xc80bc187674fa4ec2c173ff6, + limb3: 0xf84a6f04ba83657433efd5e }, u384 { - limb0: 0x10004bad789ebd5eb2f17761, - limb1: 0xe8d5099ef2146ccc2bc96fda, - limb2: 0x96af8de500a735b65862a14d, - limb3: 0xd4eab467ba4ae407b8dc446 + limb0: 0xef10c9681c60244d078e7e5e, + limb1: 0xf87618ae62c53fd2d38dcefd, + limb2: 0x7fe89b9ca9ee8f99f8696e58, + limb3: 0x28b99d0f08750125a1ff94 }, u384 { - limb0: 0xd66c69dd7f4bc68d871d5ae3, - limb1: 0xdf3411a27b5e3fdfe93e2e99, - limb2: 0x9115066cddc52ca96d35484, - limb3: 0x71964286bcc031a6471bd45 + limb0: 0xb0a97b8ad8ebf80e4e3455ec, + limb1: 0xe9948b682eff14d1c50087b, + limb2: 0xf19c38a64917374b6e0c294f, + limb3: 0x686d5f66ccf3a60e7df10a }, u384 { - limb0: 0x8877993e68f0a525acf81ed2, - limb1: 0x9910a808b8d65b40280c8707, - limb2: 0xb892509130b2d4bc433f6c55, - limb3: 0x8562b5fb10c9910a1a91bc1 + limb0: 0x3bcfa8c1d76aebfd73a151cb, + limb1: 0x27bb5406b055f4f2b2fe174d, + limb2: 0xd05314481032ebe0b2ac1391, + limb3: 0xf5643049a88b4894d8b8405 }, u384 { - limb0: 0x110d18631027e0f5ff7525b2, - limb1: 0x15e23baa455fdd1717eeb652, - limb2: 0x6e9a7749fb52085881a21e66, - limb3: 0xe1a581e9640e2c10e391b7c + limb0: 0xae657fd5092a684504763448, + limb1: 0x64d94f93988047d8fe6b2549, + limb2: 0x1dc4abaa41f79f920c1daaef, + limb3: 0x15629a74628b037f91cef0fe }, u384 { - limb0: 0x636f3e3623f855b38aa45869, - limb1: 0x78376ccf2213379b40020ce4, - limb2: 0x6a00a326a0c87858d3efc1c8, - limb3: 0x13259d350df7a7fdf6bc4685 + limb0: 0xeee38ee8e753004ce837f497, + limb1: 0xe17fd67d6131dbf1ce481f88, + limb2: 0x62be646bcf7a98d0ef811e9c, + limb3: 0xbbaf6d3ed4684cb8dccd7e2 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xb45a3ef955e73388a2dbce18, - limb1: 0x800367fb3c1273739ad154ff, - limb2: 0xd5426d731b2f0f4f3acffc40, - limb3: 0xb22f993655a779b8e7057d2 + limb0: 0x630651d9ac8b73cabd412ff8, + limb1: 0xb18a9f2245bc49c2d1819b39, + limb2: 0x36a97d5a05af1fed38bdcf1c, + limb3: 0x17c4ab99e7d528920a773895 }, u384 { - limb0: 0xdc67a2d27e6506cd653af578, - limb1: 0xc1a9a1c61fc7b20b1d55456a, - limb2: 0xace342942ac2a3ff5678eb18, - limb3: 0x91b2d3cb763135fabea7173 + limb0: 0x4f026b5cd7ee554d356cf4e3, + limb1: 0x84d8130efe3d9e87447a9e87, + limb2: 0x1c68f68d40b2031476968abc, + limb3: 0xe0178ac43a2b8f9c70a6cb5 }, u384 { - limb0: 0x6782c335da7a5f8e77aec0a7, - limb1: 0xffa3f7ed578209f98442b798, - limb2: 0x8ad8bd9439ee789dfdd8418a, - limb3: 0x107706afb99ed4893efb593f + limb0: 0x528c6a58fe3b22bdb7abfa9a, + limb1: 0xf3b3a5c4b329d4e430e28718, + limb2: 0x77a2a90299102c13570c4215, + limb3: 0x14c119287da4fd72b86c50dc }, u384 { - limb0: 0x3a30e5d4f52073677ceafc68, - limb1: 0x911e5a1d9f37aecac11901e8, - limb2: 0xe96448553460f103a872d119, - limb3: 0xfc1fd79194df7795e78598b + limb0: 0x3c8d1092332a423f557ecb6c, + limb1: 0x29fd8d5730cc3b36e8f353bd, + limb2: 0x2ef743ba0c11c08555971b1b, + limb3: 0xe2b1d5217338ce737545ff9 }, u384 { - limb0: 0x11c10490c6e5aa3b265fe75e, - limb1: 0x1b234868c4ab21f8ea070091, - limb2: 0x9e8ed187c6f3a01a104a9e60, - limb3: 0x15322b1a0a4593131d1d6963 + limb0: 0xafa20cd09b0ebb6bf0f62989, + limb1: 0x22ce7a10ff512b58ced95154, + limb2: 0xa88c633a7979cf8df2ff6109, + limb3: 0x8ab07785bb01ba930da99d3 }, u384 { - limb0: 0x1df37c668eb15742d050fe4, - limb1: 0xb646a2bf57f027f32c7d0ed5, - limb2: 0x26b3d264fd2cef87809c431, - limb3: 0x124c98239f7f139f4f27ad4d + limb0: 0x23192f0a228446d49b580958, + limb1: 0x748e3212a2728a7f8b083290, + limb2: 0x947a653943ca2423ee8cfe8b, + limb3: 0x10520cf21defb8a4d9bf3083 }, u384 { - limb0: 0x77aa859c028612131b88f130, - limb1: 0xc6bb4c81438121854196613, - limb2: 0xf436483d6f8fa1cec55f0ab4, - limb3: 0x16299dcc75ed41755eabaccc + limb0: 0xed9c8e9729093099208ecc88, + limb1: 0xb8d189266b29f5fad48903f4, + limb2: 0xb5f23b9ed05b102e96f1ca58, + limb3: 0x11105085c0272b99340c4973 }, u384 { - limb0: 0x68709b9188dd452354295b4e, - limb1: 0xff87d497acbd5a36c992ebb6, - limb2: 0xbd1b2214ef47ace65daac673, - limb3: 0x170fa5b5ded8aab7a6d1b7d5 + limb0: 0x97e805a6615778f6483077c3, + limb1: 0xb21224ec4a0da8bf9946634c, + limb2: 0xe9f2f73336320f1586666f43, + limb3: 0x246e3f58818b8888de1852f } ] .span(), b_den: array![ u384 { - limb0: 0x806cacf6c54b097f16ad7ae7, - limb1: 0xb8c2bfbb400d4d9033468d7d, - limb2: 0xe2d96d664ab795188bd8f095, - limb3: 0x18d91747e842eba287fda2d2 + limb0: 0x6b736641094c8758dd960423, + limb1: 0x217331c4e9100a57d8b2e4ac, + limb2: 0x24cd3ba7c84e0f92c49e1854, + limb3: 0x1011dff73e322a39ca86a509 }, u384 { - limb0: 0xbe6a431ad3036c3d3d1c37df, - limb1: 0xc41686c8c63e1396eb693431, - limb2: 0x7bee61d2ebdd1352cdbfa2e5, - limb3: 0x14904309fd5799af9f74be18 + limb0: 0xaa554da2f48582656d51e2ea, + limb1: 0x6948a3e37234dd20872f9f7a, + limb2: 0x9997ac6ed44ffca6c952da5b, + limb3: 0xa1077ecbba10c2876c4a60e }, u384 { - limb0: 0xdd592eb66e7cf57acbc6882e, - limb1: 0xd4f28139daefc6e871cdbf6a, - limb2: 0xd426dde539ae3fcf7a805fb8, - limb3: 0x13889457b92ebcd57ffc1ad + limb0: 0xbc4325a0718091341e39f978, + limb1: 0xe1d862b98b14ff4b4e373bf7, + limb2: 0xffa26e72a7ba3e67e1a5b963, + limb3: 0xa2e6743c21d4049687fe51 }, u384 { - limb0: 0x5c23d2b406031c95e22134f0, - limb1: 0xaa03ef2f891f1f368b735dc8, - limb2: 0x8dd04e78c8a120a4ddd36c9, - limb3: 0x21a800ee160e71155e3cc25 + limb0: 0xe281c7bb7182420f703698b9, + limb1: 0xd0268d43ff0880657e6ddb18, + limb2: 0xc21cf324a1c9d9b61ffbf960, + limb3: 0x1926faeb15e0461a64ee2b36 }, u384 { - limb0: 0x33cff5c0b004afa60327f3ea, - limb1: 0x944b3a8be08bbe3934b5692c, - limb2: 0x2d2642ac402d795f900742a0, - limb3: 0x5fb67dc7ba86a6d909f0ce9 + limb0: 0x8fd5f67083ce908f29da3fe6, + limb1: 0x5e763d222bdb99dcbfc24515, + limb2: 0x82c0b8f8df2cbd650fbd68bc, + limb3: 0x18db8f2e42cb3b47e335be09 }, u384 { - limb0: 0xf18cad3a45404136b0c6b8d3, - limb1: 0x71fc53061a31f4e04e2c4924, - limb2: 0xca82115e2500c00e77e0f567, - limb3: 0x11b5e7ec61a86c101e3ae2cb + limb0: 0x94aac8bd130cc56119684f7d, + limb1: 0x5648df19e0b37cca71366428, + limb2: 0x2d1843bf84672b534e50e1d8, + limb3: 0x7afedafecb4cf308b8acc6a }, u384 { - limb0: 0x502d62b6e1301d5bb1afbc86, - limb1: 0x8a7f4cfc1f983be08d42622f, - limb2: 0xe730d67b2398519f0c032368, - limb3: 0x5aca33df72aef435e0fe037 + limb0: 0xbae3b72ebc38f941ef147d9d, + limb1: 0x2d67d00b11066af036c486a0, + limb2: 0x394a1d7e228a4f0a388b9103, + limb3: 0x155336c4e2672039fa95a8de }, u384 { - limb0: 0x8877993e68f0a525acf81ed6, - limb1: 0x9910a808b8d65b40280c8707, - limb2: 0xb892509130b2d4bc433f6c55, - limb3: 0x8562b5fb10c9910a1a91bc1 + limb0: 0x3bcfa8c1d76aebfd73a151cf, + limb1: 0x27bb5406b055f4f2b2fe174d, + limb2: 0xd05314481032ebe0b2ac1391, + limb3: 0xf5643049a88b4894d8b8405 }, u384 { - limb0: 0x110d18631027e0f5ff7525b2, - limb1: 0x15e23baa455fdd1717eeb652, - limb2: 0x6e9a7749fb52085881a21e66, - limb3: 0xe1a581e9640e2c10e391b7c + limb0: 0xae657fd5092a684504763448, + limb1: 0x64d94f93988047d8fe6b2549, + limb2: 0x1dc4abaa41f79f920c1daaef, + limb3: 0x15629a74628b037f91cef0fe }, u384 { - limb0: 0x636f3e3623f855b38aa45869, - limb1: 0x78376ccf2213379b40020ce4, - limb2: 0x6a00a326a0c87858d3efc1c8, - limb3: 0x13259d350df7a7fdf6bc4685 + limb0: 0xeee38ee8e753004ce837f497, + limb1: 0xe17fd67d6131dbf1ce481f88, + limb2: 0x62be646bcf7a98d0ef811e9c, + limb3: 0xbbaf6d3ed4684cb8dccd7e2 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -17281,203 +17271,203 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x97837c6ffdf095e641e8e85b, - limb1: 0x529b2d25a36946edb43862a9, - limb2: 0x61478b7e8cadd8bb0de23eaa, - limb3: 0x615b063f0ec3ff2892236cd + limb0: 0x1feac3d5cd7ffa72c81e7164, + limb1: 0xe2ee39412f9550c51f38f1f3, + limb2: 0x109aae48239b7b0dc4f23d1f, + limb3: 0x159beb367ffa153c6542a568 }, u384 { - limb0: 0xa9b4b526ea80d07d6f27fefe, - limb1: 0x2d16d091eeee3c4da4377b9c, - limb2: 0x66832810508ef992e05c80d4, - limb3: 0x3ab5c88eee2889cfcb48597 + limb0: 0xa4f6582f74f3d6aa40f4fc52, + limb1: 0xf2213892d00a002bf68f122, + limb2: 0xf92f93724f9b987cafb2bb7a, + limb3: 0x160b66d22e4496a28474485f }, u384 { - limb0: 0x6e02d37546a8aede9b521bd8, - limb1: 0x45c948816d5e5bddf0c110b2, - limb2: 0xab595d46f375071816aeda33, - limb3: 0x4ba0835fcd56e04344961fd + limb0: 0x7826e4b94b0e4e07e3a256c3, + limb1: 0x34fdfd67de62dc1fbc926e2a, + limb2: 0xe22427284f621b8a2bd7beba, + limb3: 0x98221ec150230c5ee12d9e3 }, u384 { - limb0: 0xa1056917ddc8bb94f0755b98, - limb1: 0xfcefa104de378721d58fd175, - limb2: 0x8209a7770da3acbbbc144d99, - limb3: 0xa8ffac4c1a0baab3cdf51b2 + limb0: 0x28ab88711d44d0beba95047c, + limb1: 0xe3d682fa1076faa9267aedcb, + limb2: 0xeda21baa03f9feab8687aaeb, + limb3: 0x60ce8290a5ba7571148862f }, u384 { - limb0: 0x2bec7f912586870828a96efc, - limb1: 0x43c26d070a75f0f69b2ccc48, - limb2: 0xef8d6997261268581bde8fc5, - limb3: 0x19e81e2b2b999024d1f2741f + limb0: 0x1563167791b1f9fa86fffb49, + limb1: 0x803ea116e53d2fa6dee23f75, + limb2: 0x912826efab305d35597bcae1, + limb3: 0x1314a736dc493d0efbe93b2c }, u384 { - limb0: 0x87ce710eda619a6858abca83, - limb1: 0x445920df328f6d0586b00e73, - limb2: 0x74d2fada89a7669bab3002b0, - limb3: 0x47a08bf21034d5fbaadcce9 + limb0: 0xa59d61bcae8a7d706e225f23, + limb1: 0x1c12ae95ef87596d58f8d664, + limb2: 0xa9699d98814664f2fc622f29, + limb3: 0x9dab6d1f672ef9256c168f4 }, u384 { - limb0: 0x4c8e79d3a6174250ce51c873, limb1: 0x343050f9, limb2: 0x0, limb3: 0x0 + limb0: 0x96302249b5d89b3d510f6dfb, limb1: 0x5d67a8b0, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x62b2cd47998fe2b803a375f, - limb1: 0x82445cf701c95c6b650eeb42, - limb2: 0xed8ada79ba6c1fca2203e32f, - limb3: 0xc4d264d7f9736f7696bc37a + limb0: 0x95d88197d0c0e2afb3accc8f, + limb1: 0x885d15703df5fe84be98a389, + limb2: 0x62c6189ef45cc3522db9e94e, + limb3: 0x442cfb4dea69b92cdad159f }, u384 { - limb0: 0x9a2335e0932cd8a13f9e30e6, - limb1: 0x32dad8841c2dacca21f320e1, - limb2: 0xe014fc01722babec79c016bf, - limb3: 0x14f262c757100c30c4cd7870 + limb0: 0x4892963e8e4285773374679c, + limb1: 0x17f5ce2afe81ebe8eb522425, + limb2: 0x4fa1cf327ad38a56cf46b991, + limb3: 0xb4ae6e9c22a2048dd4f5aa9 }, u384 { - limb0: 0x3c25489d6ddcbf80247ded06, - limb1: 0x976d2d31895b4eceb8f7e704, - limb2: 0x2afc881aee544000e729b98a, - limb3: 0x5e96fe96c3e7fa5b1163cbc + limb0: 0xa8b41b6c7e831e1661f200ef, + limb1: 0xd6bb5d4065c72f4d6e33b860, + limb2: 0xc1305efa8f9061fae810a71f, + limb3: 0xcc6a71bf4d235b94048c141 }, u384 { - limb0: 0x252be6556692422653cb397d, - limb1: 0x50d743b14e5fde46921bf05b, - limb2: 0x5a8053b2b43d8be7161461c9, - limb3: 0x1142c31a683be5dde05dd3b9 + limb0: 0xbf8340feade582f695ab138e, + limb1: 0x479adbac2eb504209caa881e, + limb2: 0x8ab5e3d11c096c46b9a1048b, + limb3: 0xe982e43779cccf871f87fb1 }, u384 { - limb0: 0xef857eb5703cc458336fcea, - limb1: 0xe16b8acf3ce7cf3711375be3, - limb2: 0x55c92b2b508d6877e3aeef92, - limb3: 0x1553be1b9bcb79684a5e34c9 + limb0: 0xb96ba23adea934823fe517d9, + limb1: 0xe06a5759352d3b81b0c2dfea, + limb2: 0x8e341c2712aaf8fe8614ca9b, + limb3: 0x17b35fc114fa8e00f7b2c6cb }, u384 { - limb0: 0x7fcfd01863dc0df49835790, - limb1: 0xb5505a12415285152f3117cf, - limb2: 0x685159a8cd00273ab2a176e7, - limb3: 0x14fd57990d0149dae6fbb387 + limb0: 0x9ca34ac848f52882d0bb1b11, + limb1: 0x11fad8e151dd1c1dfbd043b2, + limb2: 0xb2c453c8ced1a4f976c35637, + limb3: 0x61655892f59dcaac5887244 }, u384 { - limb0: 0xd40f3ef30c64d61c7de1427c, - limb1: 0x182aae4353f0367167b18697, - limb2: 0xbdddf20a24e752b443c54b05, - limb3: 0x4beb2638436b49f46b06d50 + limb0: 0xcb08e9f43e26158ae707aede, + limb1: 0x62dff5d3ba08a10ceb5f0a92, + limb2: 0x707f0c12d7599ed1f7faf10b, + limb3: 0x32de4a19bbfab69c92de2cb }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xe387d906efe745d3d0dbb485, - limb1: 0x5f7f11c14d44da80f55b943e, - limb2: 0x6d8652593e0462e5598a02da, - limb3: 0x19d695a07ccce6c5c637ccb8 + limb0: 0x98941fda4973c0ee67eb74de, + limb1: 0x230e9129ab3da3b14cf499eb, + limb2: 0x6eb78190491f10ecee75d6ee, + limb3: 0xbf848b0d644990c9aa638b5 }, u384 { - limb0: 0xef5d060b20292c805162a3d2, - limb1: 0xbfe8611d9dabec06ff8ea8e6, - limb2: 0x6f93ec6d3efeab3a5e271af5, - limb3: 0x9cf92195ce473e8e6fc1793 + limb0: 0x6d7fa0abbad0eec65e4badd4, + limb1: 0x9bf36b9d594da0c6fc900472, + limb2: 0xc0399fbfc18a741f47201c5, + limb3: 0x1235a00a81bdf9df8c04ff46 }, u384 { - limb0: 0xbaa0b453238fa1dd9d72e28f, - limb1: 0xc77bb3b08b4da8ef7b024247, - limb2: 0x84ed932dc49dbee55b49be0d, - limb3: 0x701c81d546165f6b498d674 + limb0: 0xd5b386a710426fc8cffee5a5, + limb1: 0xb60a39589cc0b2a21d354164, + limb2: 0x4ab3ff12c6e2fdfadd842285, + limb3: 0x2fdbef72031a77120b414d9 }, u384 { - limb0: 0x6a23ec815edf230b34e94f78, - limb1: 0xf0e7ce5ba47817a9368909af, - limb2: 0x57978e6146658762915d6f90, - limb3: 0xdc01437c1f32a46e5b5cc8f + limb0: 0x7b04109689b455e84c4b8042, + limb1: 0xc23c417071f13ac0c2bda8e8, + limb2: 0x5b2f287b7f04b86f47c1cd90, + limb3: 0x4c4c81432b3269191bdf243 }, u384 { - limb0: 0x1351d85d1197cdbdb82d8995, - limb1: 0xb4dd9c522329e411d8ba53a9, - limb2: 0x24d8f215c2bc06890932bf4f, - limb3: 0x17d378a47a7bb75fa5e887c4 + limb0: 0xd2bfb7c206f3401c008e7e26, + limb1: 0xba0547d39adecb3baaaeaeb3, + limb2: 0xcad4297e1fd6c0c5558c471d, + limb3: 0x16ce0f43cdc614211d3561e9 }, u384 { - limb0: 0xf1022117ce236ecafb2715e9, - limb1: 0x8288978d72f6b544ddfc7580, - limb2: 0x145f93a6965fc0232e2ccf4d, - limb3: 0x5045661fa3c871cd29cebb6 + limb0: 0xf54cd889e0331185a32f546d, + limb1: 0x32e5b0cf4cdef0be9c46ac98, + limb2: 0xcb86ce4966a24d14007ee557, + limb3: 0x15ae7172fe08655b16363e6e }, u384 { - limb0: 0x7af948b43f3c678815f93f3d, - limb1: 0xede323f820ec550cb4d1f32b, - limb2: 0x566c197860eecfc73749e641, - limb3: 0x145e374fdd9edf75931388b2 + limb0: 0xb9f2f827f9c5f0a1bc29f407, + limb1: 0x5f5c212b0ae1b8eaba0377ff, + limb2: 0x53cb704d4118f863e0fb2224, + limb3: 0x14a03669bb5eedf4eb45f03d }, u384 { - limb0: 0xb35d4babd27598426f7a1d67, - limb1: 0x6f8655372201ae6b1144e398, - limb2: 0xabff73455663dcdd1719c9aa, - limb3: 0x23f7184996c394b886c51a6 + limb0: 0xc4ea8680f958fb3d094a1f2e, + limb1: 0x8b49d2f3d7d7a8ba88e67210, + limb2: 0xb3af8c06e416b74953280d5, + limb3: 0x15267342cd8565182f0c2e11 } ] .span(), b_den: array![ u384 { - limb0: 0x6758b3522c64f8ae00e932d1, - limb1: 0xa1e0a13b10747b89758fad09, - limb2: 0x72dfbd0f853933a3948a79fe, - limb3: 0x1733874bc4dcf5435a936635 + limb0: 0x5762065f43038abeceb3323c, + limb1: 0x217455c0f7d7fa12fa628e26, + limb2: 0x8b18627bd1730d48b6e7a53a, + limb3: 0x110b3ed37a9a6e4b36b4567d }, u384 { - limb0: 0x5490d7831eb66284fe79c397, - limb1: 0x95d8ea2d8ca3d0bc2bc8838a, - limb2: 0xb670e97f9b48cd230c7122be, - limb3: 0x5c6555eafc07cf431e2eaa0 + limb0: 0x70f658fa7f0b15dccdd1f3c5, + limb1: 0xf8a6660b0356b97f8e9c9096, + limb2: 0xfb3b8ff286d6ddd64995d384, + limb3: 0x132a89bccf289a892a21c2ee }, u384 { - limb0: 0xf0952275b772fe0091f7b418, - limb1: 0x5db4b4c6256d3b3ae3df9c10, - limb2: 0xabf2206bb95100039ca6e62a, - limb3: 0x17a5bfa5b0f9fe96c458f2f0 + limb0: 0xf17c6db2400d785987c85911, + limb1: 0xf3bca260a06bc7119a22e183, + limb2: 0xc175cf12d9ca3c66acbd89bf, + limb3: 0x19198a8599c8f04ab6075d50 }, u384 { - limb0: 0x86dec62ae5e506c4cf681d52, - limb1: 0x900ef3d95735f319517aacb2, - limb2: 0x8da922be5dfc6cd79fc63216, - limb3: 0x354fcf874071aa009901b3d + limb0: 0x313d85931458ee8a0a59c571, + limb1: 0xd866dedf0b6822bef3eac407, + limb2: 0x7064e349b93dd632d33d5fc, + limb3: 0xaa164ee4a1a023fff57c4f9 }, u384 { - limb0: 0x10b4958f074009b74c7b79e2, - limb1: 0x1bc5b93d35091115ec209073, - limb2: 0x2a0af55122841fb83a678a0d, - limb3: 0x23d138ce03e5768c1d7acbd + limb0: 0x68f11f2b20eb5780330a1c54, + limb1: 0xfcdbe10bf873015f33ada3d5, + limb2: 0x7b438c7133a2403d19859902, + limb3: 0x2141e453014bde38fabd6fe }, u384 { - limb0: 0x481d3ca458d6c2fd4a8c4b45, - limb1: 0x371c1d97aa9280b719b84644, - limb2: 0x25ee837f4eefa5cd7205ceb, - limb3: 0xbdb988ef3c3f3426bb213b7 + limb0: 0x69ed468de858c021a4dec288, + limb1: 0xb775ee24b68aa9a13ec8c72c, + limb2: 0x48f60146665faa5bcf98ed3c, + limb3: 0xb1eeb5678b9c1ca0b4ee29e }, u384 { - limb0: 0xc414e221de269a984b5098c2, - limb1: 0x4a512a1da76fc1e812360abb, - limb2: 0xeac6f03e3638b3331a47b1e, - limb3: 0xa3c7abe3f96d1c0b003e146 + limb0: 0x3a52e8cfec7ed92231ca245b, + limb1: 0x6be9e05a202692302b7ab26b, + limb2: 0x966674514f89c09a607b5f9, + limb3: 0x14eaedfad1b94054b946329 }, u384 { - limb0: 0xef857eb5703cc458336fcee, - limb1: 0xe16b8acf3ce7cf3711375be3, - limb2: 0x55c92b2b508d6877e3aeef92, - limb3: 0x1553be1b9bcb79684a5e34c9 + limb0: 0xb96ba23adea934823fe517dd, + limb1: 0xe06a5759352d3b81b0c2dfea, + limb2: 0x8e341c2712aaf8fe8614ca9b, + limb3: 0x17b35fc114fa8e00f7b2c6cb }, u384 { - limb0: 0x7fcfd01863dc0df49835790, - limb1: 0xb5505a12415285152f3117cf, - limb2: 0x685159a8cd00273ab2a176e7, - limb3: 0x14fd57990d0149dae6fbb387 + limb0: 0x9ca34ac848f52882d0bb1b11, + limb1: 0x11fad8e151dd1c1dfbd043b2, + limb2: 0xb2c453c8ced1a4f976c35637, + limb3: 0x61655892f59dcaac5887244 }, u384 { - limb0: 0xd40f3ef30c64d61c7de1427c, - limb1: 0x182aae4353f0367167b18697, - limb2: 0xbdddf20a24e752b443c54b05, - limb3: 0x4beb2638436b49f46b06d50 + limb0: 0xcb08e9f43e26158ae707aede, + limb1: 0x62dff5d3ba08a10ceb5f0a92, + limb2: 0x707f0c12d7599ed1f7faf10b, + limb3: 0x32de4a19bbfab69c92de2cb }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -17486,10 +17476,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x8c356d8fddc9f00b4428665c, - limb1: 0x7acdb39ace4c70f9aa5bc9a6, - limb2: 0xc684968fd4d758423496d74b, - limb3: 0x78f6d6a2b14c136982b919c + limb0: 0x3b9d76e7ecd412910f0b45ae, + limb1: 0xafc5ab161642301f6c72abee, + limb2: 0xc2f3791e9eccd5ab6a5785a9, + limb3: 0x654549bd29c73a9b46fed11 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -17501,66 +17491,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x1848e0686429ca1d139b7ee6, - limb1: 0xb0fe93fd5f8a24c4809162c6, - limb2: 0x23294cae884e2b024b322a88, - limb3: 0x6d6d3046f684d2ef0ef859 + limb0: 0x572817546909748484dea48b, + limb1: 0x905b4a775759218d62de43e5, + limb2: 0x45a30b5fd0fbd6cc1e78c487, + limb3: 0x8e61ffa9592b493fe332950 }, u384 { - limb0: 0xf61d4ccff8e63887d910dd81, - limb1: 0x672f6cefa92da2b423ae52a, - limb2: 0xa6cf9eb391f39868cd478afa, - limb3: 0xa92012cdfe28d4f06f7ffcb + limb0: 0x3c5994a59745b0b2b6fba59, + limb1: 0x5013bc337b4e08f56a419d8d, + limb2: 0xbfa43c220849ea910b69aff3, + limb3: 0x16d2012e8997ba70116eb21a }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xd7a7bbb87b9042a4195444d2, - limb1: 0x3c6511da6a52d97b97d3bfcc, - limb2: 0x235680418ddc17190aa9bf63, - limb3: 0x969fb9a90642b3e2d8821c4 + limb0: 0x76acbefc8f1e891fa5f202f9, + limb1: 0x9dbe79d02aef29cb12d60e5e, + limb2: 0xad08cb9ce1fa6e0249c24b93, + limb3: 0xe6a763bb01404dd5531af94 }, u384 { - limb0: 0x50d93e45f308623d33965abf, - limb1: 0x45ccf98a26c42fc4b697613b, - limb2: 0xe3addfbd3e3ddd77792a2f9d, - limb3: 0x175607472dd135885a1fa3b2 + limb0: 0x8a210ba360b1684a074781db, + limb1: 0x83ed4b6da06d0f834fd9286f, + limb2: 0x2e7331d9ea9be6ad27a76be8, + limb3: 0x16669101fe51dd7acc59922f }, u384 { - limb0: 0x392a3dfdfdcdf06cc3bbe190, - limb1: 0x884eaa46feb984999e7780ce, - limb2: 0x425c0ebce54ed0f37388ecba, - limb3: 0x134ed5f417a0cde382ae3abe + limb0: 0x9d41356a09c34bbf1eb02c3, + limb1: 0x967bd483f43b601bf2f146fd, + limb2: 0x21090e11a34b8ab0801d9468, + limb3: 0x7e897d5615dc94cc0124653 } ] .span(), b_den: array![ u384 { - limb0: 0x612381a190a728744e6dfb98, - limb1: 0xc3fa4ff57e28931202458b18, - limb2: 0x8ca532ba2138ac092cc8aa22, - limb3: 0x1b5b4c11bda134bbc3be164 + limb0: 0xab4c5d51ea26d212137ae781, + limb1: 0xda3c573c66b390116ccd0f96, + limb2: 0xd34080a7df780fab865dff5e, + limb3: 0x9976e001ccaebb5adb0fd8a }, u384 { - limb0: 0x272133402999e21f6443cb59, - limb1: 0xb29b089af39a7288ea3f94ad, - limb2: 0x57f2cdf6e357161e41991928, - limb3: 0x1046f2c9460a4ea1d0c45778 + limb0: 0xfb1a652a37d46c2cadbfe963, + limb1: 0xabc78eb092541694d027637, + limb2: 0x34adea01f3c1c7b55317878f, + limb3: 0xd44cefb79df35f16467d148 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x1848e0686429ca1d139b7ee6, - limb1: 0xb0fe93fd5f8a24c4809162c6, - limb2: 0x23294cae884e2b024b322a88, - limb3: 0x6d6d3046f684d2ef0ef859 + limb0: 0x572817546909748484dea48b, + limb1: 0x905b4a775759218d62de43e5, + limb2: 0x45a30b5fd0fbd6cc1e78c487, + limb3: 0x8e61ffa9592b493fe332950 }, u384 { - limb0: 0xf61d4ccff8e63887d910dd81, - limb1: 0x672f6cefa92da2b423ae52a, - limb2: 0xa6cf9eb391f39868cd478afa, - limb3: 0xa92012cdfe28d4f06f7ffcb + limb0: 0x3c5994a59745b0b2b6fba59, + limb1: 0x5013bc337b4e08f56a419d8d, + limb2: 0xbfa43c220849ea910b69aff3, + limb3: 0x16d2012e8997ba70116eb21a }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -17569,29 +17559,23 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xfa5a4a65ce0bb6e9ead46211, - limb1: 0x4b9fdd1aca9cd3c96511ffff, - limb2: 0xd083534cbe2206ca4c639191, - limb3: 0x39a6c67358dbf19bf8e8042 + limb0: 0x3fa8c601134fb6c86cd46526, + limb1: 0xc4df1a6f9b2748c6229020c0, + limb2: 0x1e3a10f42ce434631e01b9a, + limb3: 0x18bbd3a2c4ae72c09bb696a }, g_rhs_sqrt: array![ u384 { - limb0: 0x538bd87bdf9d4ebab3f60788, - limb1: 0x296d1506a5fd689cc0429761, - limb2: 0x5e800168ed01bd6d9dccfec7, - limb3: 0x4a41ba40e93bb9fd24a684d - }, - u384 { - limb0: 0x98955895f0c676dbcd54312b, - limb1: 0xf66ae7898aadacdbb865c361, - limb2: 0x969013dd3e43538cf932569f, - limb3: 0x32a421a860c557edc6d42c + limb0: 0xb2a1fded292db8deb9af175b, + limb1: 0x2d72cae87f37ac96396e952d, + limb2: 0xa1719ebbc1e3175e2293710b, + limb3: 0xa59dacaa856e97396c779e3 }, u384 { - limb0: 0x3b0607fabc7f86b6c1f45d83, - limb1: 0x857b9e9177c4306ae394964b, - limb2: 0x58c06c9acc48bd9dfa5fb1e7, - limb3: 0x8b16170d809687a8be70cde + limb0: 0x42c8c24196269dedb913c23c, + limb1: 0x414845906aea478c2a3feefc, + limb2: 0xc59260e1a84a245058f31a4a, + limb3: 0x5bf81b609a9141a4f539766 } ], }; @@ -17601,16 +17585,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x183d5d8b596c3863ea6a26c0, - limb1: 0x5334064630198b7bdb2ac5d7, - limb2: 0x5fe72752c6a2e02b414622d4, - limb3: 0x1307b2a869c44e6cc5f723e7 + limb0: 0x7b24d198163b17aecac64382, + limb1: 0x7cc8e9dc37a5d2a4eba69987, + limb2: 0x527dcab50a6d101d98108154, + limb3: 0x7f3881cdfbdb1775300ac59 }, y: u384 { - limb0: 0xeeb5e4072607cff39fc5c644, - limb1: 0x5b4d214a17adfda0242280e5, - limb2: 0x69dc2f1e103d6429c4f97738, - limb3: 0x1773dc963fb89bab600afb5b + limb0: 0x3ea465c494406407dd3c3083, + limb1: 0xe083e4d758b48744c13c3091, + limb2: 0x282dc842fb1328d0752a871b, + limb3: 0x1077ae3d10fd3673e9d6b2bc } } ); @@ -17622,125 +17606,125 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xa8575f9202cd19534fdd1e56, - limb1: 0x95e4565a86978cfbb9911bf7, - limb2: 0x481b3ab0623372ee4640ab0a, - limb3: 0x7b40116bec6049cb729abc8 + limb0: 0x14c0a89d5172e076461b9354, + limb1: 0x13c0f2f29feb856cdc4434f3, + limb2: 0x67beb01737e6a87a85c9a556, + limb3: 0xd97282591009ec87350ec56 }, y: u384 { - limb0: 0x9068a13c68df5aab03acf648, - limb1: 0xe0263daeda72e91a78f0c887, - limb2: 0xa376b0024a57211c9558a08, - limb3: 0xc6b716633b6237e9fdea824 + limb0: 0x2c06e2de67cd2010b466038f, + limb1: 0xf629d3c4e1fb7542a3d6e728, + limb2: 0x2aad940fe6f94dd6938c024a, + limb3: 0x108db4d84d11bd7aaea3a9f1 } }, G1Point { x: u384 { - limb0: 0x190069e55c8f391f165ffbd2, - limb1: 0x6e0eb2b1ca649afbdf0d07d2, - limb2: 0x43ca8f1e5073c9ece5a23dc0, - limb3: 0x113523970bc36f14eb6aca00 + limb0: 0xb5348f536e5496dbb8c42ec4, + limb1: 0x762026037d78663364cb841e, + limb2: 0x628e7e4cbf4dd663f4bcce48, + limb3: 0x19076d12ff7dc5f47e1f7031 }, y: u384 { - limb0: 0xa8c5fb0e8babbf8bbde0947c, - limb1: 0x69eba0156c7f37e0bf6d791, - limb2: 0xad8a96c2f518e13e1e9e14e9, - limb3: 0xe9bb3a74ba984c6f4cd9c26 + limb0: 0xb99424443b65c8db0b79e9da, + limb1: 0xb8c12bee454fc0957ab35789, + limb2: 0x404f7f7dc1f00cfd6453ad01, + limb3: 0x14ec11cddb07877e873cfea4 } }, G1Point { x: u384 { - limb0: 0x7928ec943f6af15a2dc209a9, - limb1: 0xf88109dedb30a344420cb1b9, - limb2: 0xc252f8e8820d6ce0ee8a074d, - limb3: 0x44d458a440c66194609c0be + limb0: 0x8a2b0c13d9184fc4a4dfb4a, + limb1: 0x28c3387d43d4c5c9e9d16d6a, + limb2: 0xb0389799a951e15754d4e104, + limb3: 0x13a104caad7aac8410f8ca47 }, y: u384 { - limb0: 0x3c7ceb0ad77d2c3014edf1ca, - limb1: 0x65c317f5666ef4fc9bb2f806, - limb2: 0xda84b26a7c7491becd142f78, - limb3: 0x584f9e32deb91936cacf7d2 + limb0: 0x65a371056ae02ac93efa8232, + limb1: 0x23f32d76a6872d9d8e2d0c77, + limb2: 0xfd744830da9386b1c36c62c4, + limb3: 0x7fee04e7ab53b71799f4775 } }, G1Point { x: u384 { - limb0: 0xbb9dfe90ef596446db1419e, - limb1: 0xcb0c4d152876f085c834efd5, - limb2: 0x46185792325b16a71f283aba, - limb3: 0x12ae7baa434b4abd16c13b65 + limb0: 0x2ee32b1a40af5cc0d8692125, + limb1: 0xa8be0a6c91b7a9151b8fd767, + limb2: 0x35b593f93ac4f5510c62dd61, + limb3: 0x110c0219063af8a746cf16a6 }, y: u384 { - limb0: 0x77b7293a063c3488b9c98583, - limb1: 0x9f351b5a2986d1934badd5bb, - limb2: 0xf9073e49578d22c0bdaada9f, - limb3: 0x17cd5f1527f3a555790abf6f + limb0: 0x302ada0608d6c61843e45e6, + limb1: 0x8de353409ccbcd3da90022d2, + limb2: 0xb9741d38679598f16a5a01fd, + limb3: 0xf71fcc0ec9bb0c21ff37d6d } }, G1Point { x: u384 { - limb0: 0xab31bf94321911ad4597e928, - limb1: 0x306c1cace4d55987221b79ae, - limb2: 0x35549b3317a624da1f0b061c, - limb3: 0x5140bb91878e42125dc17e2 + limb0: 0x605a1d3a0d0f480c7f89fb07, + limb1: 0x9ea52d9f0898c37b7d97fc92, + limb2: 0xedc1eb22366fac596bdb3a23, + limb3: 0x19283ed2530909742da5639b }, y: u384 { - limb0: 0xbd8efe630ee34afcadaeaa9e, - limb1: 0x25681400c9ab57108d38676d, - limb2: 0xf5a0575248bddb67da38ba64, - limb3: 0xa0ec2b5ce13217c0639339b + limb0: 0xdc9d261db944065e25f08021, + limb1: 0x269424dff2fd2ef5c5935102, + limb2: 0x7dd5d689605c3753d1a531af, + limb3: 0x3d015a00c10911775a3dd80 } }, G1Point { x: u384 { - limb0: 0x98c38550e7309dc697c29e57, - limb1: 0x96314c09751849f5470222aa, - limb2: 0xaf662f877d6993343b555525, - limb3: 0x674a3b03d00989d3d56fe8f + limb0: 0xf104dfcdfea0d13520edc44c, + limb1: 0x8d36597f57b5804cd6c029dc, + limb2: 0x98fc635b6fbadcfca1656fb0, + limb3: 0x18709be7a05970a122c6ddf3 }, y: u384 { - limb0: 0x1704a3e4d9e704913fbe9f6, - limb1: 0x5897e67f79b8347ec75d5ad0, - limb2: 0xb043167412ce05f88cb764e0, - limb3: 0xb71916c751b2ec01f995a40 + limb0: 0xee6dc0efc680537065a22dcb, + limb1: 0xbd61c700ad33d653ddf2ff2a, + limb2: 0xcc0bbcb3bb6ce5774e3da6e2, + limb3: 0x7f50619fb4d7487e9475be4 } }, G1Point { x: u384 { - limb0: 0xd357470e3044450ecc0884a7, - limb1: 0xf29528715dbed8a769a98329, - limb2: 0x71be35eb57b5dd1738ffaa3b, - limb3: 0x15b561d2ba4186421c253758 + limb0: 0x35c042510be1bd1bd1fc425b, + limb1: 0x4ea208bb977bc09e611879a7, + limb2: 0xee2dc494649b39866ba2422f, + limb3: 0xe22746643749a8b5c2b9a94 }, y: u384 { - limb0: 0xa98c263d87c2866c197b3f85, - limb1: 0x8b9dcc992f05f5b759610a33, - limb2: 0x298baaacc0be184310561386, - limb3: 0x1636083b9e7462001e2f82ce + limb0: 0x273bdeeef22f3678c1b7985e, + limb1: 0xc99370ca77e1c0bff667d8e9, + limb2: 0x99c6d5c433cd669f784949d0, + limb3: 0xac032bb9982f9c207bfdf48 } }, ] .span(); let scalars = array![ u256 { - low: 0x2c2df3c219518f87b63f83c6c89309e9, high: 0x1be98b523fafa2176a27241fbb9e5a02 + low: 0x9d2fc12147d55b18a9daa9d28de6aacc, high: 0x645645bd34f5cc02945c750306aeab2d }, u256 { - low: 0xff4533febc6ff6ace139d15d48d8b9ef, high: 0x448c0dd1bdee923101a6009ea8dce886 + low: 0xffa5ec97b532339bca8405fbb47e5402, high: 0x2007d01fcebf3c9e58af632a762e817f }, u256 { - low: 0xcbdc014dbedb42e6da313e783e9973b, high: 0x22e0c854a52ba0ce627b585f1f2de275 + low: 0xe8716b5c1dde464e9e8108cfea0c4d5c, high: 0xa82deda1654623273349e6e2e2be0ec }, u256 { - low: 0x908e0372bcbe9a42f89d3fda1e454241, high: 0x5bb7e2d9acc512df3ac49efa5be12d09 + low: 0x7dc42bf3f8bbf88c715295f1479aad5c, high: 0x3ee452c6253b151bbb522915e70e8b8a }, u256 { - low: 0x483c1a4ea91da2cd8bf06f64b4178592, high: 0x73669acad4f0d65dbd6817b638b80611 + low: 0x237c6f4adbf7ff2a78ef3666e414bb0d, high: 0x1e668d18ed4f9d10cd773d0e53a36ea7 }, u256 { - low: 0x4eb9876884a5b1c31095e4973d798f0b, high: 0x2fc4eaa63bcd6aec53ca8c05acb5959f + low: 0xfe8e491f0667845197feab553c6444a1, high: 0x3580d29429a0b62efd55bcbb3bca7ce6 }, u256 { - low: 0x9501e917496dc27b7af2f402a0e624f1, high: 0x1fbdd02cf4bb31523254d812bdfb727 + low: 0xbe128ece381d9ecf1bd93ab3ad3927c7, high: 0x5501a71b468a4bbeea4427da58990f23 }, ] .span(); @@ -17750,18 +17734,16 @@ mod msm_tests { array![ 0x0, 0x0, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, 0x0, 0x1, 0x0, + -0x1, + 0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x0, @@ -17769,230 +17751,234 @@ mod msm_tests { -0x1, -0x1, -0x1, + 0x0, -0x1, - -0x1, + 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, 0x1, + 0x0, + 0x0, + -0x1, 0x1, - 0x1, + 0x0, 0x0, 0x0, 0x1, -0x1, 0x1, + 0x0, 0x1, 0x1, - 0x1, + -0x1, 0x0, 0x1, -0x1, - 0x1, -0x1, - 0x0, + 0x1, 0x0, 0x1, + 0x1, 0x0, 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, 0x1, -0x1, - -0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, -0x1, 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x1, 0x0, - 0x1, + 0x0, -0x1, + 0x0, + -0x1, + 0x1, -0x1, + 0x1, -0x1, + 0x0, 0x1, 0x1, -0x1, + 0x1, ] .span(), array![ -0x1, + 0x1, + 0x1, 0x0, - 0x0, - -0x1, - 0x0, + 0x1, + 0x1, -0x1, + 0x1, -0x1, + 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x1, 0x1, - -0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, 0x0, - 0x1, - -0x1, 0x0, 0x0, -0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, + 0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, - 0x1, - 0x1, - 0x0, + -0x1, 0x1, -0x1, 0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, - 0x0, - 0x1, + -0x1, -0x1, 0x1, + 0x0, 0x1, + 0x0, 0x1, + -0x1, 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x1, -0x1, - 0x1, - 0x1, 0x0, 0x0, 0x0, + 0x1, -0x1, 0x0, 0x0, + 0x1, 0x0, + 0x1, + 0x1, + 0x1, + 0x0, + 0x1, 0x0, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x1, ] .span() ), ( array![ - -0x1, - 0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, -0x1, - -0x1, 0x0, - 0x1, -0x1, - 0x0, -0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, 0x1, - 0x1, 0x0, + -0x1, 0x1, - 0x0, + -0x1, 0x1, + -0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, -0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, - 0x1, + -0x1, -0x1, 0x1, 0x1, 0x0, - 0x1, - -0x1, 0x0, + -0x1, 0x0, 0x1, 0x0, + -0x1, + 0x0, + -0x1, + 0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, -0x1, + 0x0, + 0x0, 0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, 0x0, + -0x1, + -0x1, + 0x0, 0x1, 0x0, -0x1, @@ -18002,37 +17988,38 @@ mod msm_tests { .span(), array![ 0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x0, 0x1, -0x1, -0x1, 0x0, + 0x1, + 0x1, + -0x1, 0x0, -0x1, + 0x1, + -0x1, -0x1, 0x1, 0x1, 0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x1, - 0x1, - -0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, 0x1, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x1, @@ -18040,722 +18027,721 @@ mod msm_tests { 0x1, -0x1, 0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, - -0x1, - 0x1, - 0x1, - -0x1, 0x0, 0x1, 0x0, 0x1, -0x1, - 0x0, - -0x1, 0x1, -0x1, + 0x1, + 0x1, + 0x0, 0x0, -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, - 0x0, 0x1, - -0x1, - -0x1, - 0x0, 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + -0x1, -0x1, 0x1, 0x0, - 0x1, - 0x1, + -0x1, ] .span() ), ( array![ - 0x1, + 0x0, 0x1, -0x1, -0x1, 0x0, -0x1, - -0x1, 0x1, - 0x0, -0x1, - -0x1, - 0x0, 0x0, - 0x1, - 0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, - -0x1, + 0x0, -0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, - 0x0, 0x1, + 0x1, + 0x1, + 0x0, -0x1, + -0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, -0x1, -0x1, -0x1, 0x0, + -0x1, + 0x0, 0x1, 0x1, - 0x0, - 0x0, 0x1, -0x1, 0x1, 0x1, + 0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x1, 0x1, 0x0, + 0x1, 0x0, - 0x0, - -0x1, + 0x1, 0x0, 0x0, 0x1, -0x1, 0x0, + 0x0, + -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x1, + -0x1, ] .span(), array![ - 0x1, - -0x1, - -0x1, - -0x1, 0x0, + -0x1, 0x1, 0x0, + 0x0, + -0x1, 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, - 0x0, 0x0, + 0x1, 0x0, - -0x1, 0x1, -0x1, - -0x1, - 0x0, + 0x1, + 0x1, -0x1, 0x1, -0x1, + 0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, - -0x1, + 0x1, 0x0, + 0x1, -0x1, + 0x0, 0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x0, -0x1, + 0x0, -0x1, + 0x1, 0x0, 0x0, -0x1, - -0x1, - -0x1, + 0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, - 0x0, - 0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x0, -0x1, -0x1, - 0x1, + 0x0, + -0x1, 0x1, -0x1, + 0x1, -0x1, -0x1, 0x1, 0x1, 0x0, 0x0, + 0x1, + -0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, - 0x1, -0x1, - 0x1, - 0x1, 0x0, - -0x1, + 0x1, ] .span() ), ( array![ + 0x0, 0x0, 0x1, -0x1, + -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x1, 0x0, - 0x0, 0x1, 0x0, - 0x0, - 0x0, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, -0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, -0x1, - 0x1, - 0x1, -0x1, + 0x1, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x1, + 0x0, -0x1, - -0x1, - 0x1, 0x0, + -0x1, 0x0, 0x0, + -0x1, + -0x1, + 0x1, + -0x1, + -0x1, 0x0, -0x1, + 0x0, + 0x1, + 0x0, 0x1, 0x1, 0x1, + -0x1, + 0x1, 0x1, + -0x1, 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x1, + -0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, 0x1, - 0x0, - 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x1, + -0x1, 0x1, 0x0, - 0x0, 0x1, - 0x0, -0x1, - 0x0, + -0x1, 0x1, 0x0, - -0x1, 0x1, ] .span(), array![ 0x1, - -0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x1, -0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, + -0x1, 0x0, -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, + 0x0, 0x1, + 0x0, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, 0x1, 0x0, - 0x1, -0x1, - 0x1, -0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, -0x1, - -0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, + -0x1, 0x1, - 0x1, - 0x0, - 0x1, - 0x0, - 0x1, + -0x1, 0x0, -0x1, 0x1, -0x1, 0x1, - 0x0, 0x1, + 0x0, + -0x1, 0x1, 0x0, 0x0, + 0x1, + -0x1, -0x1, -0x1, + 0x0, + 0x1, 0x1, 0x0, -0x1, 0x1, 0x1, 0x1, + 0x0, -0x1, 0x1, 0x1, - 0x1, ] .span() ), ( array![ - 0x1, 0x0, - -0x1, 0x1, 0x1, - 0x0, - -0x1, 0x1, 0x0, - 0x1, + -0x1, -0x1, 0x1, + 0x0, -0x1, -0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, - 0x1, + 0x0, 0x0, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, + -0x1, -0x1, 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x0, + 0x0, 0x1, -0x1, - 0x1, -0x1, -0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, 0x1, 0x0, + 0x1, 0x0, - 0x0, + 0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, - 0x1, 0x0, 0x0, -0x1, + -0x1, + 0x0, 0x1, + 0x0, 0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, + -0x1, 0x0, -0x1, 0x0, + 0x0, -0x1, + ] + .span(), + array![ + 0x1, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, 0x0, 0x0, -0x1, - 0x1, 0x0, - 0x1, - -0x1, 0x0, 0x0, 0x1, 0x1, - ] - .span(), - array![ - -0x1, 0x0, - 0x1, 0x0, + 0x1, + -0x1, + -0x1, -0x1, -0x1, + 0x1, + 0x1, 0x0, 0x0, - 0x1, 0x0, 0x0, - 0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, 0x1, 0x1, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x1, - 0x0, - -0x1, -0x1, 0x0, - 0x0, - -0x1, - -0x1, - 0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, - -0x1, -0x1, 0x0, + 0x1, -0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, 0x1, - -0x1, + 0x1, 0x1, 0x0, -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, 0x0, -0x1, - 0x1, - 0x1, 0x0, + 0x1, 0x0, -0x1, - 0x0, + 0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, ] .span() ), ( array![ - -0x1, + 0x0, -0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, 0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, - 0x0, - 0x1, - -0x1, 0x1, - 0x0, -0x1, 0x0, + 0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, + 0x1, 0x0, -0x1, -0x1, 0x0, - 0x0, -0x1, - 0x1, -0x1, 0x0, + 0x0, -0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, -0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, 0x1, 0x1, + 0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, -0x1, + -0x1, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, 0x0, -0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, -0x1, + 0x1, -0x1, 0x1, 0x0, + 0x1, + -0x1, + 0x0, -0x1, 0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x0, - 0x0, -0x1, - 0x0, -0x1, - 0x0, - 0x1, - 0x1, + -0x1, ] .span(), array![ - 0x0, + 0x1, 0x1, -0x1, -0x1, + 0x1, 0x0, -0x1, -0x1, 0x1, + 0x0, + 0x0, + -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x1, - -0x1, - -0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, - 0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, - 0x1, 0x0, -0x1, + 0x1, -0x1, 0x1, + 0x1, 0x0, 0x0, 0x0, + 0x1, 0x0, 0x0, - -0x1, - 0x1, - 0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, - -0x1, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, -0x1, - 0x0, 0x1, + 0x0, 0x1, -0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x0, + 0x0, + 0x1, 0x1, 0x0, 0x0, + 0x1, + -0x1, + 0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, - 0x1, -0x1, 0x1, - -0x1, 0x1, - 0x0, 0x1, 0x1, - -0x1, 0x0, + 0x0, + 0x0, + -0x1, 0x1, -0x1, ] @@ -18763,166 +18749,171 @@ mod msm_tests { ), ( array![ + -0x1, + 0x0, + 0x1, 0x1, 0x0, 0x0, - 0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, - 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x0, - 0x0, 0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x1, -0x1, 0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, -0x1, 0x1, -0x1, + 0x0, -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, + -0x1, + -0x1, + -0x1, + 0x0, + 0x0, + 0x0, 0x1, - 0x1, - 0x1, - 0x1, + -0x1, -0x1, -0x1, 0x0, -0x1, + -0x1, + -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, - 0x1, -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x0, 0x0, - -0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ 0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x1, 0x1, + -0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, 0x0, + -0x1, + -0x1, 0x0, + -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, - 0x1, + -0x1, 0x1, 0x0, 0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, 0x0, - 0x1, -0x1, -0x1, + 0x1, 0x0, -0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, -0x1, 0x0, 0x0, - 0x0, - 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, 0x1, -0x1, 0x0, - 0x0, - 0x1, - 0x0, -0x1, -0x1, + 0x1, 0x0, 0x0, - 0x0, - 0x1, - 0x1, -0x1, + 0x0, -0x1, 0x0, -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x1, + -0x1, -0x1, 0x0, - 0x0, - 0x0, + -0x1, 0x0, 0x1, - -0x1, + 0x1, 0x1, ] .span() @@ -18933,273 +18924,273 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x7fc20f723e91db826fc8dce6, - limb1: 0x1c1fc68e1066457c213963ee, - limb2: 0x24f92c97fa3d5a6dd5a8a029, - limb3: 0x103dea6a32e747803beb638c + limb0: 0xc84bb581f5eade01ac1aac22, + limb1: 0xfea978b13529b9c6574d282c, + limb2: 0x7a2f46b67e5cb6dd743316c5, + limb3: 0x14ea772cb84cfc46052c539 }, y: u384 { - limb0: 0x6594a4072189cb0cf010be1f, - limb1: 0x2ac2249e11f8e9e0a4c099d1, - limb2: 0xf300db8faed6a2ff23e3a778, - limb3: 0x152bc4606f87923ad83233d + limb0: 0x42380e95f1b58a65137ad680, + limb1: 0xbdbbf180a6c50f09d64074f0, + limb2: 0xae4bcf90a290e437e81abeda, + limb3: 0xf86b11452acd7c37432f23a } }, Q_high: G1Point { x: u384 { - limb0: 0xbce52119d1164784a648d636, - limb1: 0xf7b5db5dd44b0f2662eb0b1f, - limb2: 0x686bfd38466141026f4273f0, - limb3: 0x4eb2679eeee3225d45b80bb + limb0: 0x1dd3496be58f9e882d01c19d, + limb1: 0x251dbc0622a8d107246d79b6, + limb2: 0xceec9f98b1fdbba796d9290a, + limb3: 0x92ba979ce15fc41636050e0 }, y: u384 { - limb0: 0xb9677aaecf377ac9b96146c, - limb1: 0xa3ddddaecc9ba6c002b1f59d, - limb2: 0x5bc722bb8c3fe2d2f06a4ac0, - limb3: 0x37262f7cf4028df3e2b6623 + limb0: 0x3d294637a4fb2d4877d92edd, + limb1: 0xa953ca0180544248091b0099, + limb2: 0x43afdc9475caf7fb7aca28f, + limb3: 0x3e11cd75682680100ce6ecc } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x74d266b7daf003365fb9db1d, - limb1: 0xfbe2ddd450b328472d237a00, - limb2: 0x8586542f490017d91b914d84, - limb3: 0x1184eb658263804cb9563dc4 + limb0: 0x7deb940452bddfbc01e3b802, + limb1: 0x7ce245524cf1086c0be0f1ea, + limb2: 0x275d306fb5e480573b1c6de7, + limb3: 0x100e058e2ff2b38957e03645 }, y: u384 { - limb0: 0x8a328656c8baac393ffe8e9c, - limb1: 0x275d3c42a5dec5e85a595374, - limb2: 0xb8a1d94366e7eeee1b9c1b30, - limb3: 0x9754e01dc2e563ff71147cd + limb0: 0xcee699ae154b3ce1b5062e97, + limb1: 0x321e163f0ae22663204896da, + limb2: 0xd40df5afd533b9259464602e, + limb3: 0x1da40b487a53f63f469966f } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x1f221e74d22461d7c10032a5, - limb1: 0x12cd75e1e684046e1274f85d, - limb2: 0x51c1e12a76d9925115af3a41, - limb3: 0x72b42a592da2549c45f6fed + limb0: 0xce3c538223f6aa969f702de2, + limb1: 0xf4ff6020a022217df06b1a61, + limb2: 0x7a3b937419c509ced2d984c0, + limb3: 0x2e28cdae64804a263db0b19 }, u384 { - limb0: 0x8340973eb370b47ba922259, - limb1: 0x818d15d3cc4673a40a248749, - limb2: 0x61ca5856ae8c847613f86136, - limb3: 0x54c4c418d1724ad7b711970 + limb0: 0xfbf409b7cae3d833fb428a75, + limb1: 0xe8fdce783ee14d3fa877a639, + limb2: 0x7d06394cd041975ff9702e11, + limb3: 0xb5123326f43a15bdbd3776a }, u384 { - limb0: 0xbfff2ecf783729e7a6362489, - limb1: 0x5128a077f6243141a01db808, - limb2: 0x89beaaa10e20021c2065ecc3, - limb3: 0x8206810bcaef678b1b59867 + limb0: 0x7bd17af451d53c38935ab842, + limb1: 0x9075bdfc6ccadf81c632661e, + limb2: 0xf0503c649c7b5c5072c8f26c, + limb3: 0xa2a091741477c0959456304 }, u384 { - limb0: 0x8a00f9c61f2cbc13377d51c, - limb1: 0x96785ba4bf23935b42a9a19, - limb2: 0xcec3dd09a49258e632c50eff, - limb3: 0xda9830da6a60e6d59b24fc2 + limb0: 0xf110445b8dee06a561d1d5ae, + limb1: 0x19e9a1752476da9ed95890f0, + limb2: 0xd3bcf69fda36084a4c25be5a, + limb3: 0x99443be6d493f8a05adcc90 }, u384 { - limb0: 0x1ae51bcb4ed29ab1cfff9752, - limb1: 0xa2d253aac1f14eb857b1ef58, - limb2: 0x47eba3030578340a34159d80, - limb3: 0x703cc91fa16d32c8aba5bea + limb0: 0xab7af28b06cabb8e73d24e17, + limb1: 0x44ef354293b2ec1e78c6529b, + limb2: 0x4c60b55915b3410b09277f6b, + limb3: 0x26aa5e68b070f71e3a17101 }, u384 { - limb0: 0x41c57f375de0b312d9245cc5, - limb1: 0x90a134515a1bc869656badfe, - limb2: 0x4cfefe9339eeab0c62a08a08, - limb3: 0x17f2b1b753fde265e506da1 + limb0: 0x914d9c1878cccecea2042d49, + limb1: 0x648bf24c26e844beda87f683, + limb2: 0x41319883cb4b1525fda00be6, + limb3: 0x9dc30ff77a76b411f12dedd }, u384 { - limb0: 0x4da0845c94e7304c0a748002, - limb1: 0xb99766c03290eaf4d6aa1776, - limb2: 0xe4a89f8ef7b03472f67d6c9d, - limb3: 0x846b7285f6edea80b4bbae7 + limb0: 0x244864b18ba343d5b8f8ded1, + limb1: 0x18c52a0d9a1339189d184627, + limb2: 0x746c8136777b9a9a9d61b0e0, + limb3: 0xf46c414a92e2aa4a10fe0a }, u384 { - limb0: 0x34ec5aa5e1f1ddfdc109b55c, - limb1: 0xb39869507b587b1214338bc9, - limb2: 0x21a5d66bb23ba5c279c2895f, - limb3: 0xd0088f51cbff34d258dd3db + limb0: 0xb5fb92599b201770947a9732, + limb1: 0x6730d2a0f6b0f6227c443542, + limb2: 0x434bacd764774b84f38512bf, + limb3: 0x1a0111ea397fe69a4b1ba7b6 } ] .span(), a_den: array![ u384 { - limb0: 0x9806828aca46b0f2e99afb2f, - limb1: 0xd8fb51f67ca3d8a2b94558fe, - limb2: 0x467fa540e8469aece0d27d2e, - limb3: 0xcf78816ba1412b234fc28b5 + limb0: 0xe670aa2ee1c1f022bdd4b2d1, + limb1: 0xebf0a874229e3efac2f42a78, + limb2: 0xdfb536264480f2d4c9f54a72, + limb3: 0x54719532a2e83dd93334d09 }, u384 { - limb0: 0x219bd3293f00e8e9b3a465f6, - limb1: 0xaadb5e60e441556b925731e2, - limb2: 0xec19c8dee0c3cf8c6bd9be1f, - limb3: 0x10ff5e4767b088b43dcb3b19 + limb0: 0x66875f1efc7b657a3738b49f, + limb1: 0xf0a7db582bebd2f2b81f612f, + limb2: 0x2b38299897fd2e212902d25a, + limb3: 0x18f17115cd8fba69e94fe797 }, u384 { - limb0: 0x267faa78567dde7ef1a4b9d7, - limb1: 0x77a08ab85bb94baaeaa7a48a, - limb2: 0x6d2146e2c13a66ee50b3a9a6, - limb3: 0xb0d72affebdd1de8471133e + limb0: 0x10f066b5a764eff995f224da, + limb1: 0x3375686607c3a7881d57d57d, + limb2: 0x7c395523a9f30846ed5ab677, + limb3: 0x124c82350a61339cc6e231eb }, u384 { - limb0: 0x524d15b3de21f9994986deeb, - limb1: 0x11ca37996f1388c81da55b42, - limb2: 0xea713c0cf0bfef18022d7114, - limb3: 0xaafc2f128ef9da95d215d85 + limb0: 0xf12bdaa8f69a8ae93135d093, + limb1: 0x85228090606913dfefbe67a, + limb2: 0xbb84073d1a34d246a55a2459, + limb3: 0xd9b22dc0dfce50b53bb3c0 }, u384 { - limb0: 0xb611c0016478f4caf9b6fc22, - limb1: 0xc627316b9bb67abc257d9bbd, - limb2: 0xc90cf853d0d9b3d1e0919f58, - limb3: 0x18cce497fb93f79ab9fc03a1 + limb0: 0x7ea28ba2d006ead3924086c2, + limb1: 0x128c4f25b6af90e85e507cb3, + limb2: 0x8ba133a6c9cb7c8ea419f1b3, + limb3: 0x118a55c086754af60425a23b }, u384 { - limb0: 0x3089abda53ced9fa8f179a19, - limb1: 0x55f21c297a770fa26071a3c8, - limb2: 0xe3e3b02a4a62fab4986af24e, - limb3: 0xc76b11cca3e4ccd80dd7871 + limb0: 0xcc3e8830da8338f502bbe57b, + limb1: 0x52114cac4de7fed0f079d62b, + limb2: 0x377e5b52b4ef68a8e835fd42, + limb3: 0x46dd5dc7ae39560ee75e40a }, u384 { - limb0: 0x7e513b13bd0e96fb8436ddb0, - limb1: 0x4e8dd0b67e29c1a73604a309, - limb2: 0xad67293ca6c46eb565245b19, - limb3: 0x1255cce309b6192881e57279 + limb0: 0x61fd6459ff8f6890f31ba51b, + limb1: 0x87c9dfb6d40d38b95fcfe7ab, + limb2: 0x7de56a552264b9c6f2ecf118, + limb3: 0x250eef1acd0aaa51ca42bd5 }, u384 { - limb0: 0xe806cea4b21f55e9e5225c31, - limb1: 0xfff092cdbe0d5b2ee3cfb730, - limb2: 0xfd6b6bd643ca7e1d2b767a82, - limb3: 0x6a36620517c2b6071cb7b95 + limb0: 0xd711f7571074f291bfd873ab, + limb1: 0x969b8b5aa841ac2c64d939d1, + limb2: 0xf46f594cf65df5dcec4a3bae, + limb3: 0xfb0d8ce126f79506c830f71 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xf36136b958424e54e4c0d96e, - limb1: 0xf6cadb8c581060fb7ca88df1, - limb2: 0xbf197618918d80b8092ac11, - limb3: 0x6dbe08de8677d03e007f430 + limb0: 0xf34c3501765b612f0e189b1a, + limb1: 0xf460c589598591015b86fdd9, + limb2: 0xd0262d192bd5bcb2c85ecca, + limb3: 0x11efee7a640cfc53ebc93eaf }, u384 { - limb0: 0x3c136aa8b0e68bfe4db486eb, - limb1: 0x91aa4195189e6986cc87811, - limb2: 0x511f60da145240a1e1b328af, - limb3: 0x163e1a159714424f0000c8d4 + limb0: 0x565b43b87e584ea4cb544eda, + limb1: 0xcf2dbe576c5d202d8b0afbe5, + limb2: 0xdb92ed74ad163cfbc6ef974c, + limb3: 0xca8f75052f1da51722c06a5 }, u384 { - limb0: 0xa884fff08864b77131cd520a, - limb1: 0x83e9e34012c1d36b7fae1765, - limb2: 0xc41ce4f2d89a25447fa18ccb, - limb3: 0x19e9e4236e7d0c97bfaa145b + limb0: 0xf2c277ccbb3daa4704500712, + limb1: 0x9117b318ac0849ea4a252422, + limb2: 0xfc62f5685bc9d51dd06cb96e, + limb3: 0xa58640dde887734c2c50626 }, u384 { - limb0: 0xdbc4b064d5219bf7a7090849, - limb1: 0x33f8eb7d4a1f0d1137d996d9, - limb2: 0xd99f22c01d0f2d4cc63285ff, - limb3: 0x9423b701051c81b388b1370 + limb0: 0x5458c7020a53b4e37e6b5122, + limb1: 0x89b1360de9a6ca58bc2b1807, + limb2: 0x3030dc070ea00b5aa1fac17b, + limb3: 0x11c63ffc65b5510daaac0303 }, u384 { - limb0: 0x32a1b1872b75b01cbac24b98, - limb1: 0x229ab956e3545792b9b99dc3, - limb2: 0x46c13446367ea2dbe21455c, - limb3: 0x161947430db14ff37c9b93c6 + limb0: 0xeb087d9953b6704192fe6368, + limb1: 0x99105f8bbb237d4d2897f720, + limb2: 0xe9efe2ad8376cf560ba3e8f9, + limb3: 0xea3bd3633519e750ba08006 }, u384 { - limb0: 0x86c61d5808f1dc6573c28ee7, - limb1: 0xd197bb4f220669797a470f2e, - limb2: 0x947ba01dd57c29fed3968700, - limb3: 0x11cee57b14a5648aa947c055 + limb0: 0x83eba2df14050a9265fb1cfd, + limb1: 0xcd601c6366d282483e2e5bfc, + limb2: 0xd220424c3721c490ed79000, + limb3: 0xd68f26fd8f4107f165f95c9 }, u384 { - limb0: 0x753db38b818b55b8c0056248, - limb1: 0x485643caa648f74c1bf24baf, - limb2: 0xa14fa05ebb7fb8945a1103b4, - limb3: 0xe9444999baeb836c9152d0d + limb0: 0x38b4deee3f2f262c0c765e62, + limb1: 0x124dbaa7f39601fab895e841, + limb2: 0x14bd8912ca3ce739feaa7362, + limb3: 0x70998e0aafe5bb8ef495db2 }, u384 { - limb0: 0xd71d92192b88856c757c5925, - limb1: 0xf5b7231ed351ece1c57776b1, - limb2: 0x8d3f1bde3bd92c6142e97cbb, - limb3: 0x12298a89ba85be2b5ffc5717 + limb0: 0x1008343a8e657940393aa521, + limb1: 0x3bab33cbd0f54d863118a5cb, + limb2: 0x97d4a52be696d64b9d684ee2, + limb3: 0x2e67443b60ae7d9fc11b48 }, u384 { - limb0: 0x7c6f64f929e78dd4af9c7c6d, - limb1: 0x43d2d01556ccd4edb55bbced, - limb2: 0xdfef32ea61cbc16ee6fa1d45, - limb3: 0xa0d00b7f67d019aceae067a + limb0: 0x279dcf66940c2bb47ea09a27, + limb1: 0x6286986775479ec9cefe1a91, + limb2: 0x7b07a27c9f0e74e1b54a6aa6, + limb3: 0x1d8571b89386b3350976dc9 } ] .span(), b_den: array![ u384 { - limb0: 0xaec60a2b6f1bc3cba66c4211, - limb1: 0xfcbc7538fbde6c66c66963fb, - limb2: 0xd6b2e82c3ca3202e8fc4e1fb, - limb3: 0x19dd0e70aed0642e88d4fb1e + limb0: 0x99c2a8bb8707c08af752cb44, + limb1: 0xafc2a1d08a78fbeb0bd0a9e3, + limb2: 0x7ed4d8991203cb5327d529cb, + limb3: 0x151c654ca8ba0f764ccd3427 }, u384 { - limb0: 0x23c74ca58805a3a6ce924282, - limb1: 0xdd0bd441a3a369660c04c78b, - limb2: 0x29cfc9ccba20a727c85cd2ff, - limb3: 0xffb55492bc2559c60f59cfb + limb0: 0x86217c7cc3f095e8dce3d27b, + limb1: 0x8d0cf57dcb9c695e847984c1, + limb2: 0xe2fd9fdc328ed5f5c97c112d, + limb3: 0x15c28e9889bf35d8c3eca739 }, u384 { - limb0: 0xe8aaa9e19ff879fbc6933cb1, - limb1: 0x77515840783438878bf29229, - limb2: 0x71396eb3a07250344f4993da, - limb3: 0x1234b8d5c17760dfc6a8a543 + limb0: 0xe1199ad72995bfe657c93e12, + limb1: 0xff73fc5631acb1d8380755f6, + limb2: 0x6a4dfadfdedd8a11ce60b45d, + limb3: 0x152fe4ffb685013e85517841 }, u384 { - limb0: 0x7e92d95aced097580fb72185, - limb1: 0x51c28b1a4b900f7af282c60a, - limb2: 0x69ad3bc5e257c043027e1c00, - limb3: 0x3b47006ead2bc23134a4f60 + limb0: 0xab2014d2bc2c1bc782abf51d, + limb1: 0xd3948983ab883f2bee3c464, + limb2: 0xcdc5531aad543bef5f5ddbd7, + limb3: 0x8ade20a2dadbd2068221c0c }, u384 { - limb0: 0x3492d32fe8e8bc159a81abd2, - limb1: 0x26b4d98b785767cbad9da0de, - limb2: 0x31ef6d0924d70c0200bf085, - limb3: 0xc2ea8fe7000ccb5f94caac8 + limb0: 0x4d158dab0e9a10c8803bcfa6, + limb1: 0x546a00c22973427d55d5401, + limb2: 0x8fd9f1ad91c53dccdedb60e9, + limb3: 0x111792593ae5327318937962 }, u384 { - limb0: 0x85fe59e231bb46692e03cce5, - limb1: 0x107561c58339dec2f1633ad, - limb2: 0x7618addd21d7bab6cb554d61, - limb3: 0x8e6134eb4b737dff1afa599 + limb0: 0x909687795772d3cda0e2101b, + limb1: 0x1489c87648b2aca7c0932e2d, + limb2: 0x16e7159719395f659aad98c1, + limb3: 0xa02c7bcbc6fa286359e1a5e }, u384 { - limb0: 0x37960203a45f55875a6355aa, - limb1: 0x166f029083a7acf899b3e76c, - limb2: 0xd62ada795e6bc75ebc2fa53b, - limb3: 0x603c0bea3484e7c83643049 + limb0: 0x79216c10f4d82d2cfda464ff, + limb1: 0x2779a6e4563b74237e3b8528, + limb2: 0xb319b091a3c7b962710de8bb, + limb3: 0xa1d6df4742278e527cc6316 }, u384 { - limb0: 0xa4d8fa9472f74c728e40c23b, - limb1: 0x5eb8aa019d3af15396107882, - limb2: 0x7b6efad57b8c60c19ae676a5, - limb3: 0x19596b2f0804be82360e4a43 + limb0: 0xc6ee68ffe3ddb51a91a3556d, + limb1: 0x376804ad73a35f2d95b163fe, + limb2: 0x937b925475dd71737ab3a82f, + limb3: 0x24a833a23b37c68d4dee8e0 }, u384 { - limb0: 0x3089abda53ced9fa8f179a1d, - limb1: 0x55f21c297a770fa26071a3c8, - limb2: 0xe3e3b02a4a62fab4986af24e, - limb3: 0xc76b11cca3e4ccd80dd7871 + limb0: 0xcc3e8830da8338f502bbe57f, + limb1: 0x52114cac4de7fed0f079d62b, + limb2: 0x377e5b52b4ef68a8e835fd42, + limb3: 0x46dd5dc7ae39560ee75e40a }, u384 { - limb0: 0x7e513b13bd0e96fb8436ddb0, - limb1: 0x4e8dd0b67e29c1a73604a309, - limb2: 0xad67293ca6c46eb565245b19, - limb3: 0x1255cce309b6192881e57279 + limb0: 0x61fd6459ff8f6890f31ba51b, + limb1: 0x87c9dfb6d40d38b95fcfe7ab, + limb2: 0x7de56a552264b9c6f2ecf118, + limb3: 0x250eef1acd0aaa51ca42bd5 }, u384 { - limb0: 0xe806cea4b21f55e9e5225c31, - limb1: 0xfff092cdbe0d5b2ee3cfb730, - limb2: 0xfd6b6bd643ca7e1d2b767a82, - limb3: 0x6a36620517c2b6071cb7b95 + limb0: 0xd711f7571074f291bfd873ab, + limb1: 0x969b8b5aa841ac2c64d939d1, + limb2: 0xf46f594cf65df5dcec4a3bae, + limb3: 0xfb0d8ce126f79506c830f71 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -19208,227 +19199,230 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xe231cac21074ef68e0b51dfa, - limb1: 0x1a8ba7174015cd8b55077f75, - limb2: 0x5300afa2b633d4c79d264b38, - limb3: 0xb6cf176717db142e8d3a975 + limb0: 0x90300294d11e3b18c815655f, + limb1: 0x1a5673d1fb0a1907834ed073, + limb2: 0x6153d29932293ded52eccd2, + limb3: 0x5e25bec7192bb55ab164bef }, u384 { - limb0: 0xf0550047427ce23d40e63b8b, - limb1: 0x46769a3830d73ac09b8a87de, - limb2: 0x9207f2b0fc730b0c3d2221ad, - limb3: 0xdef068b3ab1bc91680aa93d + limb0: 0x2ca25392a318e6c52961f207, + limb1: 0xe0e223a5240a2d20db25e3e0, + limb2: 0x2600167ca92475ef1c8d677a, + limb3: 0x12911ad4cbf6dec8f406605f }, u384 { - limb0: 0xd4db191d62b93dcb42ed0d58, - limb1: 0x5d9ece986dcf4c1616bdf57c, - limb2: 0x360184ab4cb8f71120a780eb, - limb3: 0xa2816797e5ad284938e7614 + limb0: 0x6bd0e1879404bb74cf06a92e, + limb1: 0xd06096354dac04ddad47c4b3, + limb2: 0x376195cbe661e16e153c185c, + limb3: 0x90475ac8187ec943f1dadce }, u384 { - limb0: 0x286603040e0a27137a4b4bd0, - limb1: 0x1df3807477dd4271e226670b, - limb2: 0x41a0c2f321b8de23c7cb7987, - limb3: 0x13c81e01a7f63c3806ebe1e9 + limb0: 0xdff555753c2630f29a46d942, + limb1: 0x39da9e8e4ce1764b4e06998f, + limb2: 0x1eaf888f40a1b6de5ead3b09, + limb3: 0x9af135ba233d81735e4aaa3 }, u384 { - limb0: 0xc901c4ae4c858d103d65d2b0, - limb1: 0xe1f85e9070e4228be531eb79, - limb2: 0xa59045a77b982bc57dea275e, - limb3: 0x9f1753dcd351537d6f670cd + limb0: 0xe0e40e1502a1711758593aee, + limb1: 0x8a5ae677200d75f359f9d03d, + limb2: 0x9fad8bf7d00e0a7af094d54e, + limb3: 0x1988b895b33168642a9af0c1 }, u384 { - limb0: 0x75650fa7905e0debf3750de0, - limb1: 0x2e02af096d99f2be3067a349, - limb2: 0x634150f1b86fe27835b000da, - limb3: 0xc4a77faa4f056a33fa08223 + limb0: 0x63131f6905f06b33d89db6b9, + limb1: 0x8a4dc6b361ea3fb55ccfa713, + limb2: 0xd242ba101ce3da581f400500, + limb3: 0x6e12ccdeb5c4b22944870e9 }, u384 { - limb0: 0x12ebc2e09e67735bf079a842, - limb1: 0x6face0c212441813b4c5f44f, - limb2: 0x131c99996e710a83f1b7df72, - limb3: 0x18d03511ed941a5c0220dab1 + limb0: 0x7c1156a40ec842e99757b09c, + limb1: 0xc396a94a9f25dcc637a9f365, + limb2: 0xe8ec294c989587d9fb085f2c, + limb3: 0x18823dbfe316a0b4bdf81621 }, u384 { - limb0: 0xac24ee8e791e7c7408ccdfdd, limb1: 0x55b696f8, limb2: 0x0, limb3: 0x0 + limb0: 0x76ee83c3f9d04b83cd7489e3, + limb1: 0xb39869507b587b127bfbb673, + limb2: 0x21a5d66bb23ba5c279c2895f, + limb3: 0xd0088f51cbff34d258dd3db } ] .span(), a_den: array![ u384 { - limb0: 0xde5190d6cec6903d854ee7ce, - limb1: 0x8f959dcb38cf62bbf4f8693c, - limb2: 0xf434760b294b346af2be940, - limb3: 0xbfb49daffd9efa065fbde3b + limb0: 0x270f1702c9f1710e6201b1ef, + limb1: 0x3968e1cc051d0b1e17795cab, + limb2: 0x6b5572e11d599055cc7785c3, + limb3: 0xcf6c50eecfa925bb0140067 }, u384 { - limb0: 0x34a979098ee475f140c8968a, - limb1: 0xa915247a2be8c8ee77eb555a, - limb2: 0xb0d9eb3777da6c5ee50da775, - limb3: 0x15db147858ee513c734e8c71 + limb0: 0xf4d32963c9bbd583a6f79251, + limb1: 0xa6b6931c737defe9a53ef5cf, + limb2: 0x980512009126c2ab609ba11, + limb3: 0xbfaeca96f0f9a9eb8a610b6 }, u384 { - limb0: 0xe113a32483c1f6147e4438b2, - limb1: 0x2e10484c128008d83bf432e, - limb2: 0x6425601e0c8d09510f69110d, - limb3: 0xabaf3bea86e96d15ef649be + limb0: 0x40d231972bd7efd4c0583cb, + limb1: 0xb54482ef09e957ce8252219b, + limb2: 0x3d304bae8330cad9531f55c1, + limb3: 0x13908a929a2c911280546072 }, u384 { - limb0: 0x5c3fefef06a92753e5086c11, - limb1: 0xcb385250941c7173e02873fc, - limb2: 0xeb98caffec4c7d2c97a77f2d, - limb3: 0x154455f21fc612fdba92424d + limb0: 0xae9aa6d0ea9714792dc6684f, + limb1: 0x3afe3e1bd9b8bb673a3713be, + limb2: 0xc3f6f3fca80d7b16711fe145, + limb3: 0x6155aaa6a9952b8452ce897 }, u384 { - limb0: 0xc8eb3b1a2c2120d76902b622, - limb1: 0xa10941b8e95d57c997df5868, - limb2: 0xc56f7bd4a3c24ce4a6d2a0a9, - limb3: 0x19f668718a2dcbc89fc8105d + limb0: 0x73f7b471386827df1bc359a0, + limb1: 0x1f9fdffcfc814a9203dcd75b, + limb2: 0x6f8f7e39f6a52ed5f624f117, + limb3: 0x18d20a0c12177fd62ca0a571 }, u384 { - limb0: 0xa72c43803bcd78c2a134e2c6, - limb1: 0xc88409d7ed3dfc89cc1e9b27, - limb2: 0x71446027c2666b3c3e4cb2e3, - limb3: 0x11f2f3113f7b05d1a352b8b8 + limb0: 0xe702e67db55472ceeab9186e, + limb1: 0x5a13a5e28fd00ce63f641fbd, + limb2: 0x6e4af76590da9ea33c20339, + limb3: 0xd22d6ce435d30a3f2ae2fea }, u384 { - limb0: 0x15254c862dfd4f76333fca2c, - limb1: 0xb1042e3e19c44a87e3486793, - limb2: 0xf40201a3c3639a235560b5b2, - limb3: 0xe93dede9b123cbac5eaadf1 + limb0: 0xfb416b154b13103ba9c74dcf, + limb1: 0x799cd4399686da6c7002780c, + limb2: 0xeccc89fee22ca8318ea507bb, + limb3: 0xd11f49fde7d5351dc4e7f4c }, u384 { - limb0: 0xaae3bcfd1f9ae9e7aea262e1, - limb1: 0x245a7dfdfa289184a21e0fff, - limb2: 0xb9f89b35f7a6978891dca6bb, - limb3: 0x11f62a10957540bad95b5e66 + limb0: 0x818a636d20d0320b3ef15e30, + limb1: 0x70274805bac294eb97b8e848, + limb2: 0x9fb2006ac2bcf112c9a4296a, + limb3: 0x7d3d6c70fde4cd3697583ca }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x100c6074b3d0b4328a007cf0, - limb1: 0xa9ad9755e369b215e04caf9, - limb2: 0x354ebda0a9c87345b95cba2b, - limb3: 0x1943200129315c9db52e0063 + limb0: 0x5b4f85cb8a1932371706ce5e, + limb1: 0xf91a1e712f46fbddc046ced1, + limb2: 0xdee45cc350729cdff7ce68a2, + limb3: 0x311d8ebb1f94638d881a3e8 }, u384 { - limb0: 0xe532feb2cdd1933cda20862d, - limb1: 0xf3b18dbfbf93c26ea6c73dd5, - limb2: 0x1e1754ab60fdf86d1cf51119, - limb3: 0xb54a6019082c0f41c412a0c + limb0: 0xaeb2a5cde127264fe2642520, + limb1: 0x3e8a3f594704d1ffa278eac0, + limb2: 0xde14cf0f4d28047a61da9c70, + limb3: 0x1165874c4c314ae29e2ec0fb }, u384 { - limb0: 0xc522adac98905cf767d64835, - limb1: 0x43ddb0e374e35dee8acbbc72, - limb2: 0x7548b61dd6cfeaa62341ca31, - limb3: 0x91393a1bd878d1221e2ac0b + limb0: 0x57912650592b9d58ad5bee5c, + limb1: 0x3aad8325d31acf7d71be2670, + limb2: 0x690709776b811db3d3cb04fa, + limb3: 0x1467df10793c2ddb9d8356de }, u384 { - limb0: 0xb9d139c807f0713bb7498afc, - limb1: 0x8c44c57c388415af4d6af6e6, - limb2: 0xd1e3b94784a765b0c319b165, - limb3: 0x19f218d4dbe31e406e001bc4 + limb0: 0xf28864b22df916a6d075df68, + limb1: 0x864949609a168599eb0f4eef, + limb2: 0x2e2346015aff4f72f48c41ab, + limb3: 0x253298e5898e19ac21ceef }, u384 { - limb0: 0x3262333b6d56eaa17aa27485, - limb1: 0xd1464ddfa00df9e4f7044976, - limb2: 0x485d1c50c6a44b92d406f0ea, - limb3: 0x49a77e712d8aad93dd0ccf0 + limb0: 0x53e8eb25d36876f5819b64f, + limb1: 0x261476f94fdccce328978664, + limb2: 0x88e68cc89e6e15f0ab08b6fd, + limb3: 0x3542a0f8e23e2bbdfef203f }, u384 { - limb0: 0xe5f85000aa9777df2cecd881, - limb1: 0x2b5652eff0bf816c728d9c2e, - limb2: 0xed68df9cbc9aafac8239764, - limb3: 0x112ea0640f64ef54ef293d1c + limb0: 0x2a80b2133908e79d72fb89a4, + limb1: 0xf045159798bab452ec0bbf1, + limb2: 0x233dcfd915934c764eb73b9b, + limb3: 0xfc45e727d1aa0dbec7861d9 }, u384 { - limb0: 0x8a8e97096d874534dfb1bd8e, - limb1: 0xf7d4a0663709e408bda46ed0, - limb2: 0x9b7771931e600fe4c94e961d, - limb3: 0xf5d87d623f36eb8b3ff3cb9 + limb0: 0x1c4f8f892e6640062cfa90dd, + limb1: 0x251acc265255b661ded7db1f, + limb2: 0x34df585b8f2691c1e0d4ffe, + limb3: 0x17f747cacdc54a83e7d0ff52 }, u384 { - limb0: 0xf15e87d4f214a8534c5fee9e, - limb1: 0xe90513fb507251b93b562b0b, - limb2: 0x9c31843be7aa9b508509e045, - limb3: 0xa9e3aa0cf58f05811b9e5f9 + limb0: 0x42fc0cfd7952589b5d188784, + limb1: 0x21cfecfab3c96a5484a80256, + limb2: 0x37a0763b7f9a31b06f58d0a8, + limb3: 0x196a059baa3b3a9bd61c2e4d }, u384 { - limb0: 0x1784b347a7613669520e4e8d, - limb1: 0xe19af960fe195d8c95ea29b1, - limb2: 0xc8e9a7f8ca518b734f370202, - limb3: 0x9428e85cbc6665ac29ea949 + limb0: 0x8175272b9e7964f27491773c, + limb1: 0xb4eb9cdb4c0d70cd86c675c, + limb2: 0xac2f94f91dc190bbdaca128d, + limb3: 0x13b093951dbba6e1d4885e04 } ] .span(), b_den: array![ u384 { - limb0: 0xc7f2435b811b40f6153bf48d, - limb1: 0xd725a48bec8c94cbb535a4f4, - limb2: 0xf9c170ab65db8195c92a9242, - limb3: 0x15ec1581c5e7d7e74cd3d135 + limb0: 0xeae85c0b6dc6c43988071d11, + limb1: 0x7e72b48f1dc336543f3972ad, + limb2: 0x6a0a1ead10eef5d23e59044d, + limb3: 0x19da02517a6a62d4753459e7 }, u384 { - limb0: 0xbea9e4270d94d7c503235a27, - limb1: 0x6ec21a05cb90414d83a9556c, - limb2: 0xf984a657b203ceecb9a76598, - limb3: 0x9691c22b7399122ebe73aa3 + limb0: 0x21f8a58f6cf0560e9bde9e99, + limb1: 0x33a979d0d746c982764fd741, + limb2: 0xe2b597a8bfd26525e4a1d587, + limb3: 0x15eaa0bb82be83e0977c9b21 }, u384 { - limb0: 0xd2fa8c925508d851f911381d, - limb1: 0xa4533f720def0c11f0510cbc, - limb2: 0x4d49d3a0cdbcd9bf4a1f3174, - limb3: 0x10eabd10683a74ab30bd7f43 + limb0: 0xfc388c669cf8fbf530170f2b, + limb1: 0x9f7f93d943927ccdad44866f, + limb2: 0x2ade2833df5d48d671ee1ec8, + limb3: 0x3ef48bbc32907b1ffe8aa6 }, u384 { - limb0: 0x3b555093bb6e2d8d19719811, - limb1: 0x86e46f2aa52e461f19963932, - limb2: 0xf3c36cda3660c56a333aadb9, - limb3: 0x13096be4d27287c86ef1f04f + limb0: 0x3025b246ba4ec2f3191ba880, + limb1: 0xbe31079a754f0296e1a9aba7, + limb2: 0x37e595fc5918312a9d71f818, + limb3: 0xb4b1dce5ddff6a279abfb10 }, u384 { - limb0: 0x93066573576cf94ee4d4c466, - limb1: 0x9076e0d9f69a4f845cb8b702, - limb2: 0xb969272c750671ddb243df1e, - limb3: 0x15b06e959ba5e5f5c6002f0f + limb0: 0xff61fb29c360750016064e25, + limb1: 0x8872c88c8abf41a13a025342, + limb2: 0xba8f96aa51c9f96ec0893370, + limb3: 0x73ecd30d16dff8e3eba07a2 }, u384 { - limb0: 0x69c8b12644fad91f0318c3c9, - limb1: 0xef5eb401920d10485835afd1, - limb2: 0x5f53da36e8c0d3b32e0ca45d, - limb3: 0x4838a44f9dafa490aee357d + limb0: 0x3d70bd10d4114a38f6ea902d, + limb1: 0x4f3175375bc79f1f428aa095, + limb2: 0xd22bafd91e78db783b1d3d28, + limb3: 0x1419c1f734a1866db4d5d0ad }, u384 { - limb0: 0x9cd9220890a1652cb20894c0, - limb1: 0x59b69366171ab9271146124c, - limb2: 0xf1bdcb08cc75032b129b1dba, - limb3: 0x1909baddf8f5219f0ea02f2 + limb0: 0x38f85326a2e55567d4e44a35, + limb1: 0x530fe9c0467238d0bce8f3f5, + limb2: 0xf091c24967d184d2c4a9dab4, + limb3: 0x65b0955718ed2cb202f965e }, u384 { - limb0: 0x607e2f0f7c8fc876238d41a5, - limb1: 0xfce0c1cdedecbb6fc453986b, - limb2: 0xe36ee22654f6c87813b60357, - limb3: 0x13cbdaf533831ae523e292d5 + limb0: 0x1779422647aaf00c17897d0a, + limb1: 0x11db5ad1fa29b1f825687880, + limb2: 0x67c0263638aa5c1735ab7142, + limb3: 0x41f4153de90e5ef3c3f652f }, u384 { - limb0: 0xa72c43803bcd78c2a134e2ca, - limb1: 0xc88409d7ed3dfc89cc1e9b27, - limb2: 0x71446027c2666b3c3e4cb2e3, - limb3: 0x11f2f3113f7b05d1a352b8b8 + limb0: 0xe702e67db55472ceeab91872, + limb1: 0x5a13a5e28fd00ce63f641fbd, + limb2: 0x6e4af76590da9ea33c20339, + limb3: 0xd22d6ce435d30a3f2ae2fea }, u384 { - limb0: 0x15254c862dfd4f76333fca2c, - limb1: 0xb1042e3e19c44a87e3486793, - limb2: 0xf40201a3c3639a235560b5b2, - limb3: 0xe93dede9b123cbac5eaadf1 + limb0: 0xfb416b154b13103ba9c74dcf, + limb1: 0x799cd4399686da6c7002780c, + limb2: 0xeccc89fee22ca8318ea507bb, + limb3: 0xd11f49fde7d5351dc4e7f4c }, u384 { - limb0: 0xaae3bcfd1f9ae9e7aea262e1, - limb1: 0x245a7dfdfa289184a21e0fff, - limb2: 0xb9f89b35f7a6978891dca6bb, - limb3: 0x11f62a10957540bad95b5e66 + limb0: 0x818a636d20d0320b3ef15e30, + limb1: 0x70274805bac294eb97b8e848, + limb2: 0x9fb2006ac2bcf112c9a4296a, + limb3: 0x7d3d6c70fde4cd3697583ca }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -19437,10 +19431,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x86b7209ada9eeae8d61329d2, - limb1: 0xfa30ea3c3b123feaab869779, - limb2: 0x4839ec9e8d8a8435e98e62a5, - limb3: 0x1d882fc9da8142d63bfa888 + limb0: 0x543f86bb84c81757ef53d4bd, + limb1: 0xd9449c4db8f590042828e4a7, + limb2: 0x375f274d0dd3e3750c106ccf, + limb3: 0x3217f54b7237ed7903a7c21 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -19452,66 +19446,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xdbfa24b1a1993a3f58e3a89, - limb1: 0x89c37a21e2df891d1b52f472, - limb2: 0x90afdc30bd82564eed453e4b, - limb3: 0x3f5de179e02254314a07d76 + limb0: 0xc0d8a731aa7af0d5029f31fd, + limb1: 0x20df7f0e6af99cfdc537a444, + limb2: 0x17dfa59471c8d739d5ac5c35, + limb3: 0x7ed18082d89cd17a15410e9 }, u384 { - limb0: 0x7f9c782e0df8b544f9fcf958, - limb1: 0x7398196ed1b2beb68e9d7ade, - limb2: 0x55595b6fd515f2a968b15149, - limb3: 0x391000ac82e3427bd69e936 + limb0: 0x1595228f81b181bbd11a310c, + limb1: 0xc530d14887171cb0ee5d945e, + limb2: 0x4d01dccefc950f86218f7bcd, + limb3: 0xc762e23b7736cf8fdb2090 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x93a1ddc148b4dff9099ea65f, - limb1: 0xfb657b3b4593bc605e6f9b09, - limb2: 0x566fc25bd8316a25070949b8, - limb3: 0xdbf1f3ba54d332ab242d08d + limb0: 0x24db48b49952fe4272c80e73, + limb1: 0x1390887e3408dcd1d4f1f857, + limb2: 0xbe1000f45fae5fedc488bf93, + limb3: 0x1547e15bbdad0163f4ec527e }, u384 { - limb0: 0x753381eac3172b93060a9f96, - limb1: 0x12d795a96ce8b6b8485c235d, - limb2: 0x34d326c92438373cd83e563a, - limb3: 0xa5f4eb1b48ea2b8bfaa487f + limb0: 0x67d489447bd655a50de0b17d, + limb1: 0xcdae39a469adafe2ca2696f3, + limb2: 0x30000598a5737579f95c9187, + limb3: 0x1067caf7033d04ece954c0d5 }, u384 { - limb0: 0x9394800fafeae6e5d0f47e0a, - limb1: 0xa011f76318537d04e6da2dc7, - limb2: 0x2161ad26f4fef7fed2dd1d8a, - limb3: 0x162af4fe4538e47a58ae81ac + limb0: 0xb4533911dfe4ca387cd2124d, + limb1: 0x1e9550602ab22031c8cfc6a9, + limb2: 0xefffa73e245f852065b1bad5, + limb3: 0x4aaa74c0ad763601b759120 } ] .span(), b_den: array![ u384 { - limb0: 0x36fe892c68664e8fd638ea24, - limb1: 0x270de8878b7e24746d4bd1c8, - limb2: 0x42bf70c2f609593bb514f92e, - limb3: 0xfd7785e7808950c5281f5da + limb0: 0x520e9cc6efecc3540a7d1d49, + limb1: 0x1c4d2998b5357dd2f6329114, + limb2: 0x1c32e97a62ac1162632c5e15, + limb3: 0x5b34e367ca74dc43a349bee }, u384 { - limb0: 0xfe71e0b837e2d513e7f3e560, - limb1: 0xce6065bb46cafada3a75eb79, - limb2: 0x55656dbf5457caa5a2c54525, - limb3: 0xe44002b20b8d09ef5a7a4d9 + limb0: 0x56548a3e06c606ef4468c430, + limb1: 0x14c345221c5c72c3b9765178, + limb2: 0x3407733bf2543e18863def37, + limb3: 0x31d8b88eddcdb3e3f6c8241 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xdbfa24b1a1993a3f58e3a89, - limb1: 0x89c37a21e2df891d1b52f472, - limb2: 0x90afdc30bd82564eed453e4b, - limb3: 0x3f5de179e02254314a07d76 + limb0: 0xc0d8a731aa7af0d5029f31fd, + limb1: 0x20df7f0e6af99cfdc537a444, + limb2: 0x17dfa59471c8d739d5ac5c35, + limb3: 0x7ed18082d89cd17a15410e9 }, u384 { - limb0: 0x7f9c782e0df8b544f9fcf958, - limb1: 0x7398196ed1b2beb68e9d7ade, - limb2: 0x55595b6fd515f2a968b15149, - limb3: 0x391000ac82e3427bd69e936 + limb0: 0x1595228f81b181bbd11a310c, + limb1: 0xc530d14887171cb0ee5d945e, + limb2: 0x4d01dccefc950f86218f7bcd, + limb3: 0xc762e23b7736cf8fdb2090 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -19520,17 +19514,17 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x288140f971092a6abfa422e5, - limb1: 0xb1327c1b85f2b3ad9970e00c, - limb2: 0x3ff38c8585b7bdb1e84efc28, - limb3: 0x696b249ea9cb517dfeeca77 + limb0: 0x6c4971cfb92f45ac939751b3, + limb1: 0x8b55a3562a4de846f2b2c08a, + limb2: 0xd40d6c5744d4336ff99823fe, + limb3: 0xbac92c692cf46a76df8aa5a }, g_rhs_sqrt: array![ u384 { - limb0: 0xf3cb8d7d522eb0d773875c17, - limb1: 0x639c15d78077a925b772b1a3, - limb2: 0x25004679fa7785da09c3a82d, - limb3: 0x61ea8b7ce1e4d6ac77fa84b + limb0: 0x34b768a5c84be2c2ddd42424, + limb1: 0x349032a45ac0f715412850d5, + limb2: 0xbd6e49e227d0d9a7b2ce88e9, + limb3: 0x5a642f2cb4340a2d2f87e2c } ], }; @@ -19540,16 +19534,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xf13da2ba195011c912acf0c4, - limb1: 0x374c075167bb1ed281bedf67, - limb2: 0xf011661dfe40a5bb726b6f04, - limb3: 0xdfb285095959e5dea4ab78c + limb0: 0x89644cb7e4a8f56de6bd1bb9, + limb1: 0x2c960f294584897555a8bdb0, + limb2: 0x362904ca5a94ba19c6516e55, + limb3: 0xed5cbda922e2c8fe638e798 }, y: u384 { - limb0: 0x56d370132515260a5ac23c6f, - limb1: 0x64ed3a82835fc476c4601d15, - limb2: 0x802fd589fd366e82be7b16d6, - limb3: 0x117565939042bc74e92340fe + limb0: 0xa14631e5e685cb65db6bec5a, + limb1: 0x61c8e9a04668785a0511fd23, + limb2: 0x54071ab948ee54c6abec634f, + limb3: 0x17584159876770d9ceca6b4a } } ); @@ -19561,142 +19555,142 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xe1c483263f3296d2d4cd6e7f, - limb1: 0x72e32b1bf5b731b2f67844cb, - limb2: 0xb4b7de799e5da27fb54359ac, - limb3: 0x131eac7a219c04065884b469 + limb0: 0x3640174a8982e7b2f87d41c5, + limb1: 0x98c483f2dd0c56de6756da2, + limb2: 0x4424a6648610adb5813c7c39, + limb3: 0x14e7b1c752382ba4b1fadde }, y: u384 { - limb0: 0xfedc6c057343ae0d308209ed, - limb1: 0x3cd09c5869031aa8f7b8ddf1, - limb2: 0xebcb122fb5666361f557e2eb, - limb3: 0x16c9bfac92a6dd84f20df940 + limb0: 0xb163c7832886a34578b8f8a2, + limb1: 0x680290715f555bf885c14d83, + limb2: 0xd544a70800cf0a6f0ee62dfa, + limb3: 0x1766d9a63de5a07b70b9f19c } }, G1Point { x: u384 { - limb0: 0x4b1557509ce02b19e91e3180, - limb1: 0x590371766a0ba583683eb9ac, - limb2: 0x2e5d53aace20d51c95eeb1ce, - limb3: 0xe2f5c4146d7ea61cd36b34b + limb0: 0x45099893884d15de3f92e986, + limb1: 0x883cf6b124de899e88273867, + limb2: 0x62752bbea4ad4435a2626c8b, + limb3: 0x3eed82f1b0abda3d4813640 }, y: u384 { - limb0: 0xe62f11548eaa15451d595b2e, - limb1: 0x65e173b782728f0b00641489, - limb2: 0x3ddac258a0592604f82c41aa, - limb3: 0x16b8d2d6b4bbb4757f2b78a1 + limb0: 0x408c0ec0f7c3bc6d8892bfa9, + limb1: 0xe025247394167db27eeaf8ab, + limb2: 0xd4ac0cc1018f18503e6aa19a, + limb3: 0x7522a72cc536847d89df841 } }, G1Point { x: u384 { - limb0: 0x7ac79d41a0d52b42dbc58183, - limb1: 0xf4647f00e13e631a5695f8ac, - limb2: 0x72ba7b92f47253f6c0162787, - limb3: 0x23c9559c947d58ede4eddf5 + limb0: 0x4a351dadcc0f8a725db148a4, + limb1: 0x6459221a582eec3dfb81a77b, + limb2: 0xc20e5c4e1eeafaa0d90eafe7, + limb3: 0x4c45ecac9c372da7759f991 }, y: u384 { - limb0: 0xbe3d5365660af358e8714541, - limb1: 0xa7201f8b4eec60c1517ad7b0, - limb2: 0x804c63d71ac67c38b38856fe, - limb3: 0xa752ed7a4eb487f2aed68c2 + limb0: 0xa0bc0dd6fd49e207a1b29c7c, + limb1: 0xb2ed295bba639078426338f6, + limb2: 0x8865c33a81b875957fd1bdc1, + limb3: 0x1951908a67e9862b3cc0ccd7 } }, G1Point { x: u384 { - limb0: 0xe91fc29f7cd0fb8674afd7b8, - limb1: 0x26d63dc27aca8e3731784eeb, - limb2: 0xefb4941ad34c98135c6164c7, - limb3: 0x544206e4ab7b6e802129820 + limb0: 0x785c9ee0c19de0036c5ef2d1, + limb1: 0x9ee2f3a1e5fb4b54f738648f, + limb2: 0x31280a9fa4e44d467e031917, + limb3: 0x12a2fdb2c5f8aabdbd6b1450 }, y: u384 { - limb0: 0x2b13a032d6e0a690d0edcc17, - limb1: 0x63a8ff02f6019ab6244b1cd, - limb2: 0x9573ae3245f8b86d7954b4b1, - limb3: 0x111fd2a38152171b97da85e3 + limb0: 0x80cbbf8be68deed13913db90, + limb1: 0x3e00982989460e45838a4c13, + limb2: 0x2ec2346a7abccdb5a0ea194, + limb3: 0x9c1005b2fa9973f900a3b27 } }, G1Point { x: u384 { - limb0: 0xe3dad815400472e8fc11bb35, - limb1: 0x7cecc19b7ae3454c6a0bc8fc, - limb2: 0x443e71449e7d4b327da72fb8, - limb3: 0x16e9aba5ca5501e1e9d268b4 + limb0: 0x67637d407d6d4fe5cc3b858c, + limb1: 0xa3f252e898e40c7b20210963, + limb2: 0x71d6e96c4ddd06c476a31860, + limb3: 0x1726973b6043e821931d1a59 }, y: u384 { - limb0: 0xaeeb26edb5d80b254f14611d, - limb1: 0x57cbd3538abcc326c10dceba, - limb2: 0x2df32b3fc33b3b90adeb0544, - limb3: 0x58e5a41503e976003129272 + limb0: 0xb33da89f19a977b7fc7d312, + limb1: 0x4cc8f1e1ca55722e9190fed2, + limb2: 0x4414365fda636e4918308eff, + limb3: 0x156ff03306e29a0588734cf0 } }, G1Point { x: u384 { - limb0: 0x3452a81b40df4e49fa62c6b, - limb1: 0xf87ce660bf8db0b1bfd4f902, - limb2: 0x51d31acbb222ff9932cdccf6, - limb3: 0x13c36b6f1699bdf04905fafe + limb0: 0x74b3afd51b0c41d57b47833b, + limb1: 0xcd28eba38f6048c38448554, + limb2: 0x353443c527fc108afa355630, + limb3: 0x9d880cdfcbb5964fcbdf781 }, y: u384 { - limb0: 0x9e527da879a05a6e14217f05, - limb1: 0x35ec39ea4584b40369e1cc53, - limb2: 0x6bc8fa4002973e96c6ac9d71, - limb3: 0x1263e9ec9b353e9ce6c21fc0 + limb0: 0x6e5cc3fe3449fffe32e7d4f, + limb1: 0xe589c757afd5b9f07669445c, + limb2: 0x82c9e3841b296385f4fba1d2, + limb3: 0x12ffbb214ea1fe8cdbf48874 } }, G1Point { x: u384 { - limb0: 0x7a21c55e9015e095f6536d98, - limb1: 0x96a70e0524ff1376706b56c7, - limb2: 0xa3daba0e6c0d90fbc56fdfa4, - limb3: 0xd7b48de368bdefbb792f33a + limb0: 0xb1285a048e6082c9ca00bca6, + limb1: 0xdd1cb3cc95a2ec624d051344, + limb2: 0x53831a19fedef481d44d861, + limb3: 0x17b45bf5e65e54e74ae50527 }, y: u384 { - limb0: 0x7c6fbc619863e6a1f152c239, - limb1: 0x7722761287dd481105831dbd, - limb2: 0x2cb135dc1a06b68e5d9cf652, - limb3: 0x400c3ada376806c731f7cd6 + limb0: 0x481dc8fcdae025537466beb, + limb1: 0xd264fe1a4759bf134830fe7e, + limb2: 0x74ea9d275687e0209cebf997, + limb3: 0x9250c67a8279c777958e8a4 } }, G1Point { x: u384 { - limb0: 0x1520d4603de6a9a1451e841c, - limb1: 0x7cb17ffe9231c731b8a6a5f5, - limb2: 0x6f424ebba7600d3d37c5f92d, - limb3: 0xefebaf1a7012f8fa90fa1c0 + limb0: 0x92c65c64e3aa469247a6d447, + limb1: 0x7e6dd4ed3a0ac3ed9f1f4c72, + limb2: 0x3d5ab2ad0895f77a2e027ca8, + limb3: 0x14c3977da27c6c3a646257d6 }, y: u384 { - limb0: 0x2372c606391cd6ad9a216d67, - limb1: 0x4ffdd4a8bebff90dae0f4bc0, - limb2: 0x2e8bce617c0e8552c461d0ba, - limb3: 0x16f5ebcc626ee2974d22e29a + limb0: 0x4bbf95c2ff48b26db594de47, + limb1: 0x61f727137520de58bb08bbfa, + limb2: 0x3a2ac57da61fc569405cf7e6, + limb3: 0x73197bfc800f6111a69b859 } }, ] .span(); let scalars = array![ u256 { - low: 0xf19b43da6253dfe34aaeb212c90ded29, high: 0x2857132909cd3bdf356af7370f2670d2 + low: 0x15b5c990758cee81c803e2eb20971fbf, high: 0x150baf7e7a5997da9c10a72aebdff461 }, u256 { - low: 0x3fe65f90f631681ebf401e04b9f94ec6, high: 0x558f33ca70f2297adceb201357d9af8d + low: 0xb9a17b17c73e59a23af31c851030fe5a, high: 0x7973dc5a818e98de3045c8b9298a181 }, u256 { - low: 0x39d5b552a867a0f0a8e6a772b9cde60c, high: 0x14c74d3cabecfc0b581ba30742965873 + low: 0x318351df84c109dbaea1351de114e46, high: 0x3fecb4be57447e9ec8867d557d2338cd }, u256 { - low: 0x92d6ff735b3a4595045892c14e0e15d3, high: 0x50b22facbb78eb2d0ee5144d8a1d8b42 + low: 0x55103782c34d3bce07302c9cb2b1a13a, high: 0x17a4a5e63cab19724ef857215790008f }, u256 { - low: 0x7db931ce05a0f4215a79b46a26b61b06, high: 0x1ee864330649def50fb2de1ea0b976c2 + low: 0xd3d24bd7bc1722440abd709747f01c70, high: 0x17b7a23912c3909c94e5db2c0c60649d }, u256 { - low: 0xf20e8bda39cc6d88032f594d0b82b61c, high: 0x69151d311109197853a081a6a7647989 + low: 0x6cc430c6fe8d5aafc1365ae7bc0f3f37, high: 0x41c4db701c36b792a0775f7016c2018e }, u256 { - low: 0x245db6ca6f6a219672ef7dce376e22a6, high: 0x5314e9992d4ba5a44fdc13515ba830dc + low: 0x7b23175b6a0d67eee9acfffc3e0169bf, high: 0x50efc1e6d6f43a9fa3936c3e972531a2 }, u256 { - low: 0xc90853fdfc9ea692ba626aee542d19c0, high: 0x13ba97f61f68c6e689c0559bf4fa4a3 + low: 0xb3c31096729e823d1568af61a7fa8995, high: 0x3248a93784ede3f532beb86ac59e8819 }, ] .span(); @@ -19704,274 +19698,297 @@ mod msm_tests { array![ ( array![ - 0x1, - 0x1, -0x1, - 0x1, - 0x1, 0x0, 0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x0, -0x1, + -0x1, 0x1, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + -0x1, 0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x1, 0x0, 0x1, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, -0x1, - 0x0, -0x1, 0x0, - 0x0, - -0x1, -0x1, 0x1, -0x1, 0x0, -0x1, - -0x1, - -0x1, - 0x1, 0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, -0x1, 0x0, 0x0, 0x1, 0x0, - 0x0, -0x1, -0x1, 0x0, + 0x1, + -0x1, + 0x1, + 0x0, 0x0, 0x0, -0x1, 0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, ] .span(), array![ - 0x1, - -0x1, -0x1, 0x0, 0x0, 0x0, -0x1, - 0x1, - 0x0, -0x1, + 0x0, + 0x0, + 0x0, 0x1, + -0x1, 0x1, - 0x1, + 0x0, -0x1, -0x1, 0x1, + -0x1, + 0x0, 0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x0, 0x1, -0x1, 0x0, 0x1, - 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, 0x0, - 0x1, - 0x1, 0x0, + -0x1, 0x1, -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, 0x1, 0x1, - 0x0, - 0x0, + -0x1, + 0x1, 0x0, -0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, - 0x1, 0x1, - 0x0, -0x1, -0x1, + 0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x0, 0x1, 0x0, + 0x0, 0x1, - -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x0, -0x1, 0x0, + 0x1, + -0x1, -0x1, ] .span() ), ( array![ - 0x1, - 0x0, -0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, - 0x0, 0x1, + 0x1, + 0x1, + -0x1, + 0x0, 0x0, -0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, + -0x1, 0x1, -0x1, 0x0, 0x0, - 0x0, + -0x1, 0x0, 0x1, 0x0, 0x0, + -0x1, + 0x1, + 0x1, + -0x1, 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, + 0x0, 0x1, -0x1, - -0x1, 0x1, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x0, 0x0, + 0x1, 0x0, + -0x1, 0x0, + 0x1, + -0x1, + 0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, 0x1, -0x1, + 0x1, + -0x1, 0x0, 0x0, + 0x1, + 0x0, 0x0, - -0x1, -0x1, -0x1, 0x0, 0x0, + 0x0, 0x1, + -0x1, + -0x1, + ] + .span(), + array![ 0x1, + 0x0, 0x1, 0x1, - 0x0, -0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, - 0x1, - -0x1, - -0x1, -0x1, + 0x0, + 0x0, -0x1, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x1, - 0x1, - ] - .span(), - array![ - 0x0, 0x0, 0x1, 0x0, -0x1, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x0, + -0x1, + -0x1, 0x1, 0x0, -0x1, - -0x1, 0x1, -0x1, -0x1, @@ -19979,141 +19996,146 @@ mod msm_tests { 0x0, 0x0, 0x0, + -0x1, 0x0, 0x0, 0x0, - -0x1, - -0x1, + 0x1, + 0x0, 0x1, 0x1, 0x1, + -0x1, 0x0, -0x1, 0x1, 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x0, 0x1, - 0x0, + -0x1, + -0x1, 0x1, 0x1, + -0x1, + 0x0, + -0x1, + 0x0, 0x1, 0x1, + -0x1, 0x1, 0x0, 0x1, - -0x1, - 0x1, 0x1, + ] + .span() + ), + ( + array![ 0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x0, - 0x1, - -0x1, -0x1, + 0x1, -0x1, + 0x0, -0x1, 0x1, + 0x0, + 0x1, 0x1, 0x1, - -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x0, 0x1, 0x1, 0x1, - ] - .span() - ), - ( - array![ - 0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x1, -0x1, 0x1, - -0x1, 0x0, + -0x1, 0x1, - 0x0, + -0x1, 0x1, - 0x0, -0x1, -0x1, 0x1, 0x1, + 0x1, -0x1, - 0x0, + 0x1, -0x1, -0x1, - 0x1, 0x0, + 0x0, + 0x0, + -0x1, 0x1, 0x1, -0x1, -0x1, 0x0, - -0x1, - -0x1, - 0x0, 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x0, - 0x0, -0x1, -0x1, -0x1, -0x1, -0x1, + ] + .span(), + array![ 0x0, 0x0, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x1, 0x0, - -0x1, 0x1, + -0x1, 0x1, 0x0, - 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, + 0x0, 0x1, 0x1, -0x1, + 0x0, 0x1, - -0x1, 0x0, -0x1, 0x1, @@ -20122,156 +20144,122 @@ mod msm_tests { 0x0, 0x0, 0x1, - -0x1, - 0x1, - 0x1, - ] - .span(), - array![ - -0x1, - -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x1, 0x0, 0x1, 0x1, - -0x1, + 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, 0x0, -0x1, -0x1, - 0x0, - 0x1, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, -0x1, -0x1, -0x1, - -0x1, 0x1, - -0x1, + 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, 0x1, - 0x0, -0x1, 0x1, - 0x0, - 0x0, - -0x1, 0x1, + -0x1, 0x0, 0x0, - 0x1, -0x1, + 0x0, 0x1, 0x1, - 0x1, - -0x1, 0x0, -0x1, - 0x0, 0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, - 0x1, 0x1, - 0x0, - 0x0, - -0x1, - -0x1, - 0x1, - 0x0, - 0x0, - 0x1, - -0x1, - -0x1, ] .span() ), ( array![ - 0x1, - 0x0, -0x1, 0x0, + 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x0, - 0x1, - -0x1, - -0x1, - 0x1, - 0x1, 0x1, 0x0, -0x1, + 0x0, -0x1, 0x0, 0x0, + 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x0, + 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, -0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x0, - 0x1, - 0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, + 0x1, 0x1, 0x1, -0x1, 0x0, - 0x1, - 0x1, -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, + 0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, -0x1, @@ -20279,10 +20267,11 @@ mod msm_tests { -0x1, -0x1, -0x1, - -0x1, - -0x1, - 0x0, 0x0, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x0, @@ -20291,63 +20280,70 @@ mod msm_tests { 0x0, -0x1, 0x0, - 0x0, - -0x1, + 0x1, + 0x1, 0x1, ] .span(), array![ + -0x1, + -0x1, + -0x1, 0x0, - 0x1, - 0x1, 0x0, 0x1, 0x1, - 0x0, - 0x1, -0x1, - 0x0, + 0x1, -0x1, -0x1, 0x0, 0x0, - -0x1, + 0x1, + 0x1, + 0x1, 0x1, 0x0, - -0x1, + 0x1, 0x1, -0x1, -0x1, - 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, - 0x1, - 0x0, - 0x0, -0x1, 0x0, - 0x0, 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + 0x1, 0x0, 0x0, -0x1, 0x1, + 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x1, 0x0, + -0x1, 0x1, -0x1, 0x1, + 0x0, 0x1, + 0x0, + -0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, -0x1, @@ -20355,29 +20351,21 @@ mod msm_tests { -0x1, -0x1, -0x1, + 0x0, 0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x0, -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, ] .span() ), @@ -20386,503 +20374,504 @@ mod msm_tests { -0x1, -0x1, -0x1, - 0x1, 0x0, -0x1, + 0x1, + -0x1, + -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, 0x1, + 0x1, + -0x1, + -0x1, + -0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x1, + -0x1, -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, + 0x1, -0x1, - 0x0, 0x1, -0x1, 0x0, -0x1, - 0x1, + -0x1, 0x1, 0x0, 0x1, - 0x1, - -0x1, - 0x1, -0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, - -0x1, 0x0, - 0x1, + 0x0, 0x1, 0x0, + -0x1, + 0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, - 0x1, + ] + .span(), + array![ -0x1, -0x1, - 0x1, 0x0, 0x1, - ] - .span(), - array![ 0x0, -0x1, 0x1, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, -0x1, + 0x1, 0x0, - -0x1, + 0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, - -0x1, 0x0, 0x0, + -0x1, 0x1, - 0x0, 0x1, + 0x0, 0x1, 0x1, 0x0, -0x1, - 0x0, + 0x1, -0x1, -0x1, 0x0, - 0x0, - -0x1, - -0x1, 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, 0x1, 0x1, - 0x1, - -0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x0, -0x1, 0x0, 0x0, - 0x0, 0x1, 0x0, 0x0, + 0x0, 0x1, -0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x0, + -0x1, 0x1, - 0x0, 0x1, -0x1, - 0x1, + 0x0, -0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, ] .span() ), ( array![ - 0x0, - 0x0, - 0x0, - 0x1, - 0x0, - 0x1, -0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, - 0x1, -0x1, 0x0, - -0x1, - 0x1, - 0x1, + 0x0, 0x1, 0x0, -0x1, - -0x1, 0x1, 0x0, 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, -0x1, - 0x0, - 0x1, - 0x1, -0x1, 0x0, 0x1, -0x1, 0x1, - -0x1, 0x1, 0x1, - 0x0, 0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, -0x1, - 0x0, -0x1, - 0x1, + 0x0, 0x1, 0x0, - -0x1, + 0x0, + 0x1, 0x1, -0x1, -0x1, -0x1, + 0x1, + 0x0, + 0x0, -0x1, - -0x1, + 0x0, + 0x0, 0x0, -0x1, + 0x1, + 0x1, 0x0, 0x0, -0x1, -0x1, 0x1, -0x1, + 0x0, + 0x0, -0x1, -0x1, - -0x1, + 0x1, + 0x1, + 0x0, + 0x0, + 0x1, ] .span(), array![ + 0x0, 0x1, 0x1, - -0x1, - 0x1, - -0x1, - -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, - 0x1, - -0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, + 0x0, -0x1, 0x1, -0x1, - -0x1, - -0x1, 0x1, + -0x1, 0x0, 0x1, 0x0, - -0x1, - 0x1, - 0x1, - -0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, - 0x1, - -0x1, - -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, 0x0, - 0x1, -0x1, - 0x1, - 0x1, - 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x1, -0x1, 0x1, 0x1, + -0x1, + 0x0, 0x0, 0x1, 0x0, 0x1, 0x0, + 0x0, -0x1, - 0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, 0x0, + 0x1, 0x0, 0x0, 0x0, + -0x1, + 0x1, 0x1, 0x0, -0x1, + -0x1, + 0x0, + -0x1, + 0x0, 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, + -0x1, + -0x1, + 0x1, 0x1, ] .span() ), ( array![ - 0x0, + -0x1, 0x1, + -0x1, 0x0, 0x1, - 0x1, - 0x0, 0x0, -0x1, - -0x1, - -0x1, - 0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x0, -0x1, 0x0, -0x1, -0x1, - 0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x0, 0x0, -0x1, - -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x0, -0x1, - 0x0, 0x1, 0x1, + 0x1, + 0x0, + -0x1, -0x1, -0x1, - 0x1, 0x0, -0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, - -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x1, 0x0, -0x1, - 0x0, 0x1, + -0x1, + -0x1, 0x1, + 0x0, 0x1, 0x0, -0x1, - 0x1, 0x0, + -0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x1, -0x1, -0x1, 0x0, + 0x1, 0x0, - -0x1, + 0x0, + 0x1, + 0x0, + 0x1, ] .span(), array![ 0x1, + 0x1, + 0x0, -0x1, - -0x1, + 0x1, + 0x0, + 0x1, 0x0, -0x1, -0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x0, 0x1, - 0x1, - 0x1, + -0x1, 0x1, -0x1, -0x1, - 0x0, - -0x1, -0x1, 0x1, + 0x1, -0x1, 0x0, 0x0, -0x1, - -0x1, - 0x1, 0x1, -0x1, - 0x1, - 0x1, + 0x0, + -0x1, 0x1, 0x1, -0x1, 0x1, - 0x1, 0x0, -0x1, 0x0, 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, -0x1, - -0x1, - 0x0, - 0x1, - 0x1, 0x0, -0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x0, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, -0x1, 0x1, -0x1, 0x0, - 0x0, 0x1, + -0x1, + -0x1, + 0x0, + -0x1, 0x0, 0x0, 0x0, 0x0, 0x1, -0x1, + -0x1, 0x1, - 0x1, + 0x0, + 0x0, + -0x1, 0x1, 0x1, 0x1, @@ -20893,167 +20882,170 @@ mod msm_tests { ( array![ 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, 0x1, - -0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, -0x1, 0x0, 0x1, 0x1, - 0x0, -0x1, - 0x0, - 0x0, - 0x1, - 0x0, -0x1, -0x1, - 0x1, 0x0, -0x1, + 0x1, -0x1, + 0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x0, 0x0, 0x1, - 0x1, -0x1, 0x1, + 0x1, 0x0, 0x0, -0x1, - 0x1, -0x1, - 0x0, + -0x1, 0x1, + 0x0, 0x1, -0x1, + -0x1, + 0x0, 0x1, - 0x1, + -0x1, -0x1, 0x1, - 0x0, -0x1, -0x1, - 0x0, -0x1, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, 0x0, -0x1, + 0x0, -0x1, 0x0, + -0x1, 0x1, -0x1, -0x1, + 0x0, -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, ] .span(), array![ - 0x1, 0x1, 0x0, 0x1, - -0x1, - 0x0, - 0x0, - -0x1, - 0x1, - 0x1, - 0x1, 0x1, 0x0, 0x1, + -0x1, + 0x0, 0x1, 0x1, + -0x1, 0x0, 0x0, 0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x0, 0x0, - 0x0, 0x1, - 0x0, - 0x0, - -0x1, -0x1, 0x1, - -0x1, 0x1, 0x0, 0x1, - 0x0, + 0x1, -0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, -0x1, - -0x1, - 0x1, - 0x0, 0x1, -0x1, 0x0, -0x1, - 0x0, 0x1, -0x1, -0x1, -0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, + -0x1, + 0x1, + 0x0, + 0x1, + 0x0, 0x0, 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x1, + 0x0, 0x1, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x0, + 0x0, + 0x1, + 0x0, 0x1, + 0x1, + 0x0, + 0x1, + -0x1, ] .span() ), @@ -21063,99 +21055,99 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xdc2fe3ba49c51704027f9cbf, - limb1: 0x163ffeed6959353704a3be2d, - limb2: 0x456e377b19636a99500a3f76, - limb3: 0x17fd8c87fc283527988da98c + limb0: 0x8a11fe095f6ff3c39c5ffe0, + limb1: 0x6ca6bb5e85de9d01a42083f2, + limb2: 0xcbd6d3891449b2326b72c2fa, + limb3: 0x17f1ff68a5072d4174fa3103 }, y: u384 { - limb0: 0x57cc9ec779c96799e972990e, - limb1: 0xdb8a2572a5ce7c41eee94b5f, - limb2: 0x5775523c94b2b9dc126ef3a6, - limb3: 0x368b5600279fa88f285a7c0 + limb0: 0x3b10e56113e64ce634e1538b, + limb1: 0xd711923eff7deb621e3c05f0, + limb2: 0x7738bfaff30b647e3862e804, + limb3: 0x16f035a5941e9e95405ca072 } }, Q_high: G1Point { x: u384 { - limb0: 0xa51d88746c594657e13d2f5d, - limb1: 0x23f0c54c73346885c6e79c98, - limb2: 0x703da5798ef3d70f8aabafc8, - limb3: 0x15c348d8f064f79ba081f8da + limb0: 0xb8daef610370a5da0562ed18, + limb1: 0x5fc85a19d170ba9bc2689c52, + limb2: 0xbf4bd8dffd3734e11986d09b, + limb3: 0x80b1fd3eb3072abcc44f21d }, y: u384 { - limb0: 0xfb404199015f2085e5cbc2a, - limb1: 0xf9b16766dd3ea36873c6e069, - limb2: 0x981cec8cc84ad1a2ba7f4272, - limb3: 0x3d70aed356934cc0bd834c + limb0: 0x81a9cb7e7318ed82ee69b9c7, + limb1: 0xafa9ad911819b7a44788c68c, + limb2: 0xb3f675f94862e605ecafca12, + limb3: 0xe1e654ab789f9e69dd7e9d3 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xefefc3ca8a057b7bc4ad7157, - limb1: 0x6d9747d1eaa3a0cfb1d60692, - limb2: 0x17684e234e1ce23a9e9fcaee, - limb3: 0xf9db85e7083a87a1cda1faf + limb0: 0x5d45bad593a4fce3ce996f2, + limb1: 0xf103b515f48b5e1126e6b98c, + limb2: 0x197937f685a5de6fab5923ab, + limb3: 0x193178d61aad4ed8800c9b2a }, y: u384 { - limb0: 0xa2c0804bbe1ae35af80d96ab, - limb1: 0x90e442d7f5510db37f1e872f, - limb2: 0x417472c9648a0357ecb8b9d4, - limb3: 0x197ce0f6b77c4f299ebb954e + limb0: 0xe1ecde1fa0926e7244142c74, + limb1: 0x16d3843c27e153cea0aff8e9, + limb2: 0xccf055be12539c18eea41f6d, + limb3: 0x1792009c2c738ea68a8ba5e3 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xd2b3272faf7fc92948292d56, - limb1: 0xe165537cfb25d52c8f4732f3, - limb2: 0x833f96c0d1451c589f6e4e3, - limb3: 0x12b7d7f5701588c9772ab414 + limb0: 0x3840bf8e836ecac1df51ca29, + limb1: 0xa3acaa9794e63aa0c05e4b9c, + limb2: 0x2b163ab2b20d8f943241bbca, + limb3: 0xda7286f7702dfb5eb757c02 }, u384 { - limb0: 0x759b16c355897f26ea024f3b, - limb1: 0x474b4ffa3534657ff60f989f, - limb2: 0xaca3102e1cf3500d406aa946, - limb3: 0x1536b8de5361494393564ddb + limb0: 0x80810e887241f4b3a208f900, + limb1: 0xa270d667202adb4d492213a7, + limb2: 0xa2adbdf51f866cd4512bba09, + limb3: 0xdceb21da395dafde123c1f9 }, u384 { - limb0: 0x95cf1373d074828ab9a1c44a, - limb1: 0xcb19b3f4e360a12e4f42a6ff, - limb2: 0x7c08838f49a85b96c5f77388, - limb3: 0xfcbad93d2af0e09c322d57 + limb0: 0x571d076aa6dd12603f56cdd6, + limb1: 0x1d2da9da5fc8fbc754f93198, + limb2: 0x678848335347342fa2861089, + limb3: 0x12c1248aa1490babbeeeff65 }, u384 { - limb0: 0x9b214ea2fccb4572b8b8629f, - limb1: 0x1674cdd5545e940616ae6624, - limb2: 0xf754e785f3a05eac30935b58, - limb3: 0x929b9d4a832236288c3216d + limb0: 0x9a4d3672c31a666baf45005c, + limb1: 0xbc5b8e2373269aacd59f8101, + limb2: 0x71cf12f102b556a9a945a7e4, + limb3: 0x7eff3c8031bc98d37fd03a4 }, u384 { - limb0: 0xe9cba7b92b2c327e1e911ea1, - limb1: 0x2023f9d6c4820ca5071482c4, - limb2: 0x9ac9e59cf4459c6f4e9ea68c, - limb3: 0x193834b690bde930a8899310 + limb0: 0x77c95c9c966a54c6edb848fe, + limb1: 0x47e6fc275ade4f51b9dc2441, + limb2: 0xf3e9c32eb24ad31fc7b1b481, + limb3: 0x68fe4f6cdda28bff5d39d30 }, u384 { - limb0: 0xef78c855ed21f6a26787363d, - limb1: 0xbd3952179fdc279309c03373, - limb2: 0xb2b66997bf2a87dec7cc2887, - limb3: 0xd082dc88ce12073b47300f + limb0: 0x37aee5d7cdcb18b41891d34e, + limb1: 0x1bceeed957a2ae0e800134b0, + limb2: 0xd13af3c77e34ae8b4ddd2e1b, + limb3: 0xbdc633521a7eeb7f210b2af }, u384 { - limb0: 0x7141a2ffb9dd24bf8082a48a, - limb1: 0x33654d7dd7da40313413dda, - limb2: 0x7f397683e1f32202933978a, - limb3: 0x138e318cbf5cce792b337e12 + limb0: 0x5bb46200e5983f84d3258652, + limb1: 0xbd2d9b8acabcc73cebd9ce68, + limb2: 0x3b175def07176ece2d808c, + limb3: 0xa5bcb81428c1fd14a03d82c }, u384 { - limb0: 0x9559b570bc4c1fd498f28eca, - limb1: 0x87182b5c6a96724366194a26, - limb2: 0x281794a362b6264b51b17dcd, - limb3: 0xae1ac7c624cb4888d7234ec + limb0: 0x6592cb38a0ca4d652c928d86, + limb1: 0x8b822f9238cce190664dc1ee, + limb2: 0xa5828263d1ad2f98dcd78cc7, + limb3: 0xc712798470b127c00f596d8 }, u384 { - limb0: 0x1631d86c1f4dc055ee93e3fd, - limb1: 0xb39869507b587b113b20ebe7, + limb0: 0xedc4af5375a8699a51482e8d, + limb1: 0xb39869507b587b1131db5e71, limb2: 0x21a5d66bb23ba5c279c2895f, limb3: 0xd0088f51cbff34d258dd3db } @@ -21163,197 +21155,197 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xfde2624580363f9f3071d223, - limb1: 0x325ae2c42187265ffac7f0a3, - limb2: 0xd6d702cec81645cfb5858dd2, - limb3: 0xcf6f31f3054445cf7d639b5 + limb0: 0xaf230363ba2e63d658dc7016, + limb1: 0xe8bae7189b060dcecd8a9c2f, + limb2: 0xa5b6ace7cd8af5f26cb023a2, + limb3: 0x17d4d3196dfd800f8256fc89 }, u384 { - limb0: 0x536c0afc7c1a339ffaac4d04, - limb1: 0x96a35ceb77c8220c2fa6d8c1, - limb2: 0x97ebe6ffb5fdf1a4f6730881, - limb3: 0x6d87b38f398970851c2dd22 + limb0: 0x64bda483d9ef27dd46c75615, + limb1: 0x9f8712df0da19328760158f9, + limb2: 0x9637a359be26b924ede7b312, + limb3: 0x81c2d4665b6a086aafd7811 }, u384 { - limb0: 0x53526837a94e7dcc2b057d03, - limb1: 0x32b99278061477aec6dcd27b, - limb2: 0x9ad46f6e7c58dcbcf494f0e8, - limb3: 0x11e8569bf3a572df0d3aeb87 + limb0: 0xcc275549c615becbf143db22, + limb1: 0x6b3fb151b524e63739385d9, + limb2: 0xb01f3bf21a5ba7875546621, + limb3: 0x150a2812ef098e7b67eb337 }, u384 { - limb0: 0x9128a01dd5de70f439b0d1c5, - limb1: 0x4f11e2b5c81a4a7b2a13b3d, - limb2: 0x7e6064e02ad111522a681f2b, - limb3: 0xfa647f2721d0f6fcf7825b7 + limb0: 0xf9bdc99468a53a8aa516f0c6, + limb1: 0xe4556c44fb4e542630c86dab, + limb2: 0x2f03acad765a36e9c236b453, + limb3: 0x162f9b5096197a91e2efccdf }, u384 { - limb0: 0x567a71b911c301bdd062e848, - limb1: 0x13c9dcfed79bf2f897b4b340, - limb2: 0x66bcef658e25c86c9de51c28, - limb3: 0x794562aa3458a9827da6916 + limb0: 0x1a15d9d5655d343ad437bae4, + limb1: 0xf77aa4ddb6fbd5a3bffd5f4c, + limb2: 0xb0f5963114e6e05f36780f0a, + limb3: 0x18a74e0fa26362a6f56f61ab }, u384 { - limb0: 0xfffaf01fa78279874194f34b, - limb1: 0x353fe03da39eccefe549e9fc, - limb2: 0x32387ae5bd2b5e9f44ce3917, - limb3: 0x195a3912cc21442dcc8046a8 + limb0: 0xf30b6754d8261e2dd5d39ad7, + limb1: 0xbf7a3206dbc27336c60ce88b, + limb2: 0x9a4e3efa61cd17f9fa815e76, + limb3: 0x6fe150a7d966d8c27cd0be7 }, u384 { - limb0: 0x7600b28b764892c80897bfd9, - limb1: 0x949535c6796ea3ccd8096721, - limb2: 0x6aea75fe96eabed6ec925d9, - limb3: 0x99da5eed4188134d19e6402 + limb0: 0xb86d9a44395b2a2f46a2c160, + limb1: 0xc084ae4273062dd105f2819a, + limb2: 0x4836398d8d4bb2871fbce97, + limb3: 0x5bc1abf83bb325b528c8e45 }, u384 { - limb0: 0xcaa405888843ff40b35f3912, - limb1: 0xac1efe1a8c56de57a70ef239, - limb2: 0x93e89dffbeb25bd56f30d707, - limb3: 0x80165b0dc408739d3496357 + limb0: 0xf92f53a2a0504482f35b2acf, + limb1: 0xb85f8400751b48fef8cfedd7, + limb2: 0x828f626aa2171a799f95c0d6, + limb3: 0x12f330aac18d89fcaf3c407d }, u384 { - limb0: 0x44a44596566d0e4117f390b5, - limb1: 0xe5016182b15ef67379ac3cfe, - limb2: 0x5fa4fee4a91d0dd94fbfc3ba, - limb3: 0x1413058d21e7e93990806e40 + limb0: 0xc17590321c013da56aecffae, + limb1: 0x5d29755e0fe5dfe06e06db82, + limb2: 0x4480eef23997db0712db3823, + limb3: 0x19f8b0ceae33d9bdba235c69 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0x9dce2d31e4c6361cc86b3c70, - limb1: 0xc395de6e39e72682ad805f26, - limb2: 0x9032d1ed8c052c630886547c, - limb3: 0x12f91da23948e66a453e81b3 + limb0: 0xb2ae258e870074b375fe2fdb, + limb1: 0x3bbd4c7c4c2bddd572fe81a3, + limb2: 0x4a8d261f6f22b823dc91248c, + limb3: 0x107e368e080d42d6251449ef }, u384 { - limb0: 0xc507af02150f385d1a56840b, - limb1: 0x8749d870ebb90d51811143d5, - limb2: 0x57b0a04cc34185eef290cfa5, - limb3: 0xeb53137ee56ae522b2594bd + limb0: 0x3084198b8d33cfa44957a10f, + limb1: 0xb6a10da7006bd99039798bb4, + limb2: 0x6c54a0b88dbd25b984faded4, + limb3: 0x1430378e06d52b38a50891cd }, u384 { - limb0: 0x56b781c1dc0127da1b393b2, - limb1: 0xf1e41d1708a46017e6b50ad, - limb2: 0x4ec068f50194c1b6a3005f1f, - limb3: 0x18472127e0e7010b0fc54c2f + limb0: 0x7f30fa8590c91d5a5ae1679c, + limb1: 0xcb27581653d99fa0981cedb9, + limb2: 0x71ad83fe48ced94ce4c68f85, + limb3: 0xa4c5ec3880961d952204206 }, u384 { - limb0: 0xb18aa0f47898be2bcb25e859, - limb1: 0x8c9a3f467a165e6a0c8a3c2b, - limb2: 0x6d8b268016d902104ffe3675, - limb3: 0x68b14c8aa4ce83308b65c73 + limb0: 0xaf4c875b1f10795416a5b097, + limb1: 0xc3c22c75176912a1522603ca, + limb2: 0x1877553b426afc91d6c2e32e, + limb3: 0xc58908aea077ca71a6398bf }, u384 { - limb0: 0x1d15e68a13c3fffb3c38f017, - limb1: 0x767464cad074aafecb7f07e2, - limb2: 0x5ef0f169f7d6dca51537a6b1, - limb3: 0xdb3f167f6e04fca84075791 + limb0: 0xe6a9b8403f370b77f5fa29fb, + limb1: 0x57e54c8e5c8fa1c9c69b9ca5, + limb2: 0x792484ba81172b50da87a5b6, + limb3: 0x118962b2d71932c571cda421 }, u384 { - limb0: 0x5d1dcdb9d0b54d8b1c1d8de3, - limb1: 0x351fc91cfd1de8e08a7615ff, - limb2: 0x1a1b5100039e37ace456a46b, - limb3: 0x1167e604bc0681321c8cd83c + limb0: 0x4f7f4bb43e66622f86de546b, + limb1: 0xf15c40fd158a5f834db55dcb, + limb2: 0xb7367f4c32f542a2fab32ecf, + limb3: 0x14d50318019118ab31fad8c9 }, u384 { - limb0: 0x3a723c813e9df7a498f6ea56, - limb1: 0x1ff896c5eb35a7e69246fd54, - limb2: 0x6cd87165db1581670b135595, - limb3: 0x173af74a73e83b76d85647fb + limb0: 0xa294cab3e500bc8d0afec215, + limb1: 0x4dd76df733ecc7255ba5716b, + limb2: 0x3920f33d4365dedba199899c, + limb3: 0x12858f72e31d149422aacb70 }, u384 { - limb0: 0xbdfd3987281994b4434a9481, - limb1: 0x612bb34059928a1c3ba090f1, - limb2: 0xeb928d98d80ab49355c6ece1, - limb3: 0x1158264e24b618ce678df099 + limb0: 0x517b591730e3f3255bb46f2, + limb1: 0xcc89c734b1d6378634a7f5db, + limb2: 0x2b092bf86f7b5a378f9b8865, + limb3: 0xe55d68649dccf0b5397df49 }, u384 { - limb0: 0x478692e3ceed0bd87650851d, - limb1: 0x5a8bf1e0e7c3275a1b18bae, - limb2: 0x75be526e9e27b11ec353481d, - limb3: 0x11d1ac23ff810740afd4b87 + limb0: 0x5a61e6c08306f0d65740e5be, + limb1: 0x1930c07a1bbb92f7a5a139ec, + limb2: 0x8082ea61fd07e9c5dcfaa183, + limb3: 0xda1b52b547ae8f03a3a632c }, u384 { - limb0: 0xd3f09af65ba37779f8e6ea7b, - limb1: 0x8742ac036cf0d2a2f27e666e, - limb2: 0xb3c2676f41f1915394514e66, - limb3: 0x198fbb3c68a96fabd3e19403 + limb0: 0xaeaa893f30e6b937755b72c0, + limb1: 0x38819261e9eb27a8843cf0db, + limb2: 0xe7b461f690a49da32d94aa83, + limb3: 0xa33f1ec9633bc4063922bae } ] .span(), b_den: array![ u384 { - limb0: 0x4635891646d9fe7cc1c79de1, - limb1: 0x623ab86f8f6ba35bcc73c291, - limb2: 0x18105e63bbe1cbb9e2912489, - limb3: 0x19daba9287d12ad9943d3f21 + limb0: 0xa8900d8fbabc8f596372c057, + limb1: 0x6d59247f880554ceda2670c2, + limb2: 0xccf7ad1908c5f53ad831564d, + limb3: 0x115016a70b764c6f2808fb03 }, u384 { - limb0: 0x9c5c2bf23669ce7feab18965, - limb1: 0xf35ca10ce86f920c9fef6306, - limb2: 0x1c63ef2773807b0ee6470f46, - limb3: 0x160daf994e27586fbefccd4 + limb0: 0xe1a2920fadbd9f751b1dada9, + limb1: 0x16eb78db3fd5567db95963e6, + limb2: 0x1592e08f9423990ec419b98b, + limb3: 0x66fa32f5d5a9b8060da3890 }, u384 { - limb0: 0xeaa1a0df313bf730ac169eb6, - limb1: 0xfc84a49e2aeff272de1b49ef, - limb2: 0xe4ba640b2874dbe9eb499e21, - limb3: 0x139f369b5b95fe479eb45eb1 + limb0: 0x309d55271856fb2fc50f6c88, + limb1: 0x1acfec546d49398dce4e1767, + limb2: 0x2c07cefc8696e9e1d5519884, + limb3: 0x5428a04bbc2639ed9faccdc }, u384 { - limb0: 0xdfdce2bd63b203701735c3e1, - limb1: 0x77bdb62fa62bccb687f4dd9c, - limb2: 0x49c13ca0aa6bf40e781be4ff, - limb3: 0x178def1485c8b4e79f7f8127 + limb0: 0xd0ca29b674c74e00ed398882, + limb1: 0xdd4d4da8ad7b85d715fc52e4, + limb2: 0x5496ac401516a385a776a9f4, + limb3: 0x88ef8b2e063cfede1a7912d }, u384 { - limb0: 0xfc01d1e109273a973c384379, - limb1: 0x7e99fe45df86f7ca6fcda5c3, - limb2: 0xef93f7be8a1dc7d27a826662, - limb3: 0xb28c1f9472edacea610d9c5 + limb0: 0x7c50bda8767f8c897a796f9, + limb1: 0xe0ae5bd20ecd1126fb46d62f, + limb2: 0x4cdf48c07fe50c8df9b3a440, + limb3: 0x2b51ddc094490b9544c5fe7 }, u384 { - limb0: 0x8dee28b75f5c63e9315a9f83, - limb1: 0x6af5c8eab9cbd2dde1547a74, - limb2: 0x5687a7a7df29292639b98a47, - limb3: 0xf4cf33e3e2ae92d12cd674f + limb0: 0xe700f29d6caf378348929bd3, + limb1: 0x9d6bf08f93ab251a6d1b280a, + limb2: 0x30ef42d14462cedb6bd4cd3c, + limb3: 0x347e4c0ebca687e0a973b1f }, u384 { - limb0: 0x6836a4c3b02bc145c107bd3, - limb1: 0x88e4500354da4792d56ed7c6, - limb2: 0x1283a8b1079d29fdfe829112, - limb3: 0x21abbd94f7f470e7fba6653 + limb0: 0x2a2032a59412e347bfa24b9b, + limb1: 0x7f3752add0b6154629e67418, + limb2: 0xfdc58e397535d80696a0dbf3, + limb3: 0x131ef4646b865d64e2065e3c }, u384 { - limb0: 0xcfb687db78d3fec09de021e5, - limb1: 0x5d1502c81246763315447c28, - limb2: 0x7313ba8d2477ec3d67236587, - limb3: 0xd98db03dac7c0e529e44ebe + limb0: 0xead72860b8a14646a1a5661f, + limb1: 0xa3663cfca7561733473916af, + limb2: 0xf15019556fdd67b6da3fda27, + limb3: 0x1670dafbfc19d6cad10d6c7e }, u384 { - limb0: 0x4d3c067a193ab28ba1648b73, - limb1: 0x2c821bc48e56ce2d514addfb, - limb2: 0xa39dc31acfc267f0b5b8fd05, - limb3: 0x1a2079e6dc14eaae21360d0 + limb0: 0x3391a81e602f14c38188eee3, + limb1: 0x975cbcfb40961a280378569c, + limb2: 0x9f234765b64f560277d9f406, + limb3: 0x6dc909c50663a19e3ebdeb3 }, u384 { - limb0: 0x7600b28b764892c80897bfdd, - limb1: 0x949535c6796ea3ccd8096721, - limb2: 0x6aea75fe96eabed6ec925d9, - limb3: 0x99da5eed4188134d19e6402 + limb0: 0xb86d9a44395b2a2f46a2c164, + limb1: 0xc084ae4273062dd105f2819a, + limb2: 0x4836398d8d4bb2871fbce97, + limb3: 0x5bc1abf83bb325b528c8e45 }, u384 { - limb0: 0xcaa405888843ff40b35f3912, - limb1: 0xac1efe1a8c56de57a70ef239, - limb2: 0x93e89dffbeb25bd56f30d707, - limb3: 0x80165b0dc408739d3496357 + limb0: 0xf92f53a2a0504482f35b2acf, + limb1: 0xb85f8400751b48fef8cfedd7, + limb2: 0x828f626aa2171a799f95c0d6, + limb3: 0x12f330aac18d89fcaf3c407d }, u384 { - limb0: 0x44a44596566d0e4117f390b5, - limb1: 0xe5016182b15ef67379ac3cfe, - limb2: 0x5fa4fee4a91d0dd94fbfc3ba, - limb3: 0x1413058d21e7e93990806e40 + limb0: 0xc17590321c013da56aecffae, + limb1: 0x5d29755e0fe5dfe06e06db82, + limb2: 0x4480eef23997db0712db3823, + limb3: 0x19f8b0ceae33d9bdba235c69 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -21362,56 +21354,56 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x74d5e33169e788e049b17db8, - limb1: 0x4777a42418f50d5bc86bd747, - limb2: 0x3f350dea7652a6416bf70d30, - limb3: 0x9c0fae15147365799008f68 + limb0: 0x5826de1812be32aa4fd68368, + limb1: 0x875f159d2a1f3b5a17897138, + limb2: 0x2da4acf62303dacc6e418f2f, + limb3: 0x1390f93e5c4aba54c62c30f6 }, u384 { - limb0: 0xc39bf6ab2a47deba397f3ff6, - limb1: 0xe4941851df99399395e9e8e0, - limb2: 0x9f4d84eea8671722ee40e311, - limb3: 0xfe4d34a9cc9915f30392f25 + limb0: 0xbf3fae71abd4f99dcb336252, + limb1: 0xd549357eac46cfa0c01dc51a, + limb2: 0xedadc705dc73306e15340082, + limb3: 0xb84ae703e5746a43912b1dd }, u384 { - limb0: 0x4b20ea701e657fd5ab4fd2, - limb1: 0x2d50472decee787ca38a8daa, - limb2: 0xe229ee928bad49e06f5b3f63, - limb3: 0x1846556cd68d7db96fec7cd1 + limb0: 0x6b9c0b92f4348dc078c947cc, + limb1: 0xc298c72d74d7594cbacdb05e, + limb2: 0x8169d72290a16752aa4d1601, + limb3: 0xc2fcd9a5430ce6890f11c5 }, u384 { - limb0: 0x758d523cf6428e9ba8d420d2, - limb1: 0xd6dfc5e6c9ed5ae618bbcd49, - limb2: 0x6b727f0173ac7851cb67a5b1, - limb3: 0x11dc81fd7b41d655eb9609c4 + limb0: 0xf4238b3d3c9e4a66ee494e4b, + limb1: 0xbfbc1913d027fcfeea9552e2, + limb2: 0x7a61faa3578b09452fc9a745, + limb3: 0x10c045ddf8e3f82ef8a0ae43 }, u384 { - limb0: 0xf9d86e4f919482cc0cde49fd, - limb1: 0xc42cfd72dfe218a2378224b, - limb2: 0xda6c43e8eba7a456a23d4477, - limb3: 0x23d8618aba73eb85e3a5c82 + limb0: 0x15cba5360a76a0c7407c40c5, + limb1: 0xc5cc7c80fe304db0a72e6d05, + limb2: 0x829160287dca19cec0cd4756, + limb3: 0x1b1a26e5bc98f5d2a2ca7a1 }, u384 { - limb0: 0xab654a4d50df6d2d7c485e15, - limb1: 0x6795659cc492cb5ee2cca9ff, - limb2: 0x5e361ae7eae98b4dc139016d, - limb3: 0x3b72bd5b5d11b9051032f8b + limb0: 0x258caef8747723c3110f0ded, + limb1: 0xf0bf2b42ec5230164ce2ba65, + limb2: 0xab9547205c44d61523cadcfc, + limb3: 0x4348331fe20263564bff75f }, u384 { - limb0: 0x6490b1e1b0218e955aade18d, - limb1: 0xdff526f30e6514e01cbdfb81, - limb2: 0x1155878fa74eb63f87aa5378, - limb3: 0x5e3ba1e070950caf2fc28d9 + limb0: 0xf8f58a200df2166a86353531, + limb1: 0x4adc19543e3faf3a49f30434, + limb2: 0x8c3fc4434b510d6eecc06f4c, + limb3: 0x11506352b54d9cdfe5b0ab45 }, u384 { - limb0: 0x63719f39d8be5fb2cc129b1c, - limb1: 0x4d39de82a7165483b9093892, - limb2: 0x7c8632a2b2f1f8ce8d2027a9, - limb3: 0xba13a862d6b33c553c38a5a + limb0: 0x4bf1f622c900769207abc789, + limb1: 0xf54e48855a0f87da42197786, + limb2: 0xc3444d213ca3b02892d8f476, + limb3: 0x10cb707b92ac133d7d5f3f9b }, u384 { - limb0: 0x482794c6904666d738dc4508, - limb1: 0xb39869507b587b128eb67589, + limb0: 0x5d868527d8901f4cc570161d, + limb1: 0xb39869507b587b125ddf7b0a, limb2: 0x21a5d66bb23ba5c279c2895f, limb3: 0xd0088f51cbff34d258dd3db } @@ -21419,197 +21411,197 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x2784423689ecd8cf82b5841e, - limb1: 0xd0527117b90fdd316e355f8c, - limb2: 0x76e3f68141170711d3c7514c, - limb3: 0x94c3e210c304ade26071607 + limb0: 0x84afa7181c8ddb407d66e267, + limb1: 0xe49d63b5c0c0d2a0b0faa04f, + limb2: 0xd05d04db2e07d203317540c3, + limb3: 0x15e0726b0192aeea1a64aace }, u384 { - limb0: 0xe936a310dca5b50d9d5f914c, - limb1: 0x225cfa4b861bfc17c1eccee3, - limb2: 0x88546a509f4d6e17f57dcdc8, - limb3: 0x1945facb015918fbc2967a60 + limb0: 0x60f835fd0fd00cb7cccdd9c1, + limb1: 0xe614d04402a15bb4ee712f01, + limb2: 0x494d5f423c20d840c0de4102, + limb3: 0x1426f73462cccf9e0a307d7 }, u384 { - limb0: 0x27fc7a2a4ec23dbdf501bef2, - limb1: 0xfe9e8b6b187535e5d00100eb, - limb2: 0xe6c387cfa3a75c99c221c3cf, - limb3: 0x195018a8fdf0f87632e5cc6d + limb0: 0x17497b5887b92a382c243571, + limb1: 0x7a0c83773972ff4db774a50e, + limb2: 0xcd4b73f70fa7a363f90886, + limb3: 0xe72c59f19069e073e4ae23 }, u384 { - limb0: 0x61d40ae71bf2246dfe2920ae, - limb1: 0x59cdfa49f7295991b8078de3, - limb2: 0x19ce4efeb364183fb4a7cbea, - limb3: 0x1127507777a88c5c82d2f857 + limb0: 0x8b8062031a67547a8c6d7766, + limb1: 0x50abd276b63086ba4efdc00c, + limb2: 0xca4f70be7e43106902205414, + limb3: 0x2b8319dc612926065cc9402 }, u384 { - limb0: 0x24f5c27704beeb7be80a8b42, - limb1: 0xf887de96428f56ba59b58bb9, - limb2: 0x58c45dd65cf8c79dad310a6e, - limb3: 0x86be14c730d04aa3756fd5c + limb0: 0x942ec32ecebd98d7edebeab2, + limb1: 0x7cf1ec861640a7e512023dd2, + limb2: 0x14f02d36a3409d5a7485321c, + limb3: 0x56f3581d0f3bbabf6de8e90 }, u384 { - limb0: 0x34ce574fe116f797732a2d06, - limb1: 0x9524f155cb2c15d45aa8a776, - limb2: 0x3f10802cb6d8b01f8ddc2245, - limb3: 0x5aca5ed49f6b1c61bfe66fe + limb0: 0x1145f168367182a54d3d7aa6, + limb1: 0xadcf75debafaa5279c00b381, + limb2: 0x3074ce8d973bc7fe6653dadc, + limb3: 0x102e3cfd85bacd8b99f4cf88 }, u384 { - limb0: 0xd89e8ebcef501cb122fed294, - limb1: 0x88d1ef5a748195b0e98337eb, - limb2: 0x115aaf4cbd71cc89a09e9c82, - limb3: 0x2b15fbe5c16c6d909dea199 + limb0: 0xcb6c83335e861a3fb09c405c, + limb1: 0xaeb51438e60de0ca08d8e886, + limb2: 0x7b8e2b71d624a84ab29c7b9c, + limb3: 0x10b4528b1dad5221fe203488 }, u384 { - limb0: 0xa9faa5bb4ea635a9f39efdd6, - limb1: 0xa3be063ce244439baa539a, - limb2: 0x64f7180eed500dbfb0f16c41, - limb3: 0x19894b52c3c32c88bac2feb1 + limb0: 0xe7838dc0d4dc1a51b6e978c1, + limb1: 0x6c368f2278e9fc92539d069a, + limb2: 0x7e60de6d6d72c8ade2e3aa2f, + limb3: 0xe8430feabc7bd6b0ad072fb }, u384 { - limb0: 0x7bb6a0dc33d8deed3935fe17, - limb1: 0xd7509b23a783c324b7685e93, - limb2: 0x34d590e6338ca163151e5368, - limb3: 0x164d493c2dab26c5888c1ef2 + limb0: 0x5fe7c0b1f48897079f5067cb, + limb1: 0x2d70401cda2cc223112c323, + limb2: 0xdc03cc3ec330cd3714217c3, + limb3: 0xfde7e792e8aadb917bcf399 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xd1860f201b15f1917301c9ef, - limb1: 0xad11896c727abb3c5c5e499b, - limb2: 0x7a9b6e28d22d696245b6b6ab, - limb3: 0x1a9e73c3e161acdc2d35b55 + limb0: 0x880eed1acd8d62c8d7020b4b, + limb1: 0xb2d894707d2f3a6158a542cd, + limb2: 0x7efca4f9c1ea6bbbadb2b065, + limb3: 0xd5b8015fe179aa0a45e7ae7 }, u384 { - limb0: 0x1c929d7041b68a62d76186a, - limb1: 0x55c19eed5cd1047bc702f1e8, - limb2: 0x5106129b8df3e745f7bcf0ea, - limb3: 0x215f62974a393b5cd6a7e61 + limb0: 0x7c654e2302beb3d1b3577d0a, + limb1: 0xc1b0d7467e10a10ea645a3d3, + limb2: 0xd27a5aa63fafb72a4c4dadd4, + limb3: 0x1097835391147e2e156a265f }, u384 { - limb0: 0x2ab92496611016cba6fd9093, - limb1: 0x859b728391449f8db13326fd, - limb2: 0x6e1fe19ab657b3de2ee28604, - limb3: 0xdd31a82ef6615c4e74c6aa + limb0: 0x7fd2b76ae6436a2cca8d6825, + limb1: 0xdc0acb13a01f44717ab674c2, + limb2: 0x84e8e42191b04799c4dc4770, + limb3: 0x4159dabbf6c20dfa94d001d }, u384 { - limb0: 0xf2249210d6ed3f2567a94f38, - limb1: 0xa02f57f761634174bcb83b50, - limb2: 0xc3ae5ec9d58dd180d1e782c9, - limb3: 0xb8c240542ce27ea70ff0f96 + limb0: 0x6729a2575ce7f00dd508dae6, + limb1: 0x29b1a6dee07c9cd779e722aa, + limb2: 0x74e1ddfe13d5b145cb50334f, + limb3: 0xecd28f28f307a6680483946 }, u384 { - limb0: 0x4445631dff5b2e95ef849fcf, - limb1: 0xbee9e2ff6d15066652401fcf, - limb2: 0x71fa2a86310c89915582dbeb, - limb3: 0x172a3ee18cf7303c14684f8a + limb0: 0x9992fa5559c1666a440bc5e, + limb1: 0xcaed9d33b3d6276d8d822978, + limb2: 0xabf8b4e8dc14bd106a4f0521, + limb3: 0x39bb7f52fa0717b36fe9d4e }, u384 { - limb0: 0x5991cc0ed735f179c9dc94e8, - limb1: 0xaf180398ef64ffaa99e958cc, - limb2: 0x58b1a8f5633675e1d4e5c806, - limb3: 0x66828933081cf51ab62f2bf + limb0: 0x6e024d8e4ef34af6a37b268a, + limb1: 0x5be18d1729e86de01f1eaa9e, + limb2: 0xdef5459adf7fc9f72f6759, + limb3: 0x121d47050c6693e394499f41 }, u384 { - limb0: 0xca8cb0b890f5ad980128ce74, - limb1: 0xa4d7bc2f9341895dc69946bb, - limb2: 0xc50d6020dd7ab541d48762cb, - limb3: 0x13f635a5ceb4260d269d99ea + limb0: 0x8f660846c43cfffe3b2ee64a, + limb1: 0x208b15b2792b6442cc941985, + limb2: 0xfc1d5a20fc389451cb049b18, + limb3: 0x163b15478db2941d07ed608d }, u384 { - limb0: 0x50429a406ecd1e265a0c185f, - limb1: 0xa60fdf6d00f6169600f0d403, - limb2: 0x242ca3919fca9fd365a935dd, - limb3: 0x83de19de2baf616d941e435 + limb0: 0xc0b2a3f41a618449786902fc, + limb1: 0xbcd3320d80d0575da83b1af2, + limb2: 0xbe3529be52af0f4201d1b554, + limb3: 0x101955d11e9d6a61d76a8ff7 }, u384 { - limb0: 0x9170f8b7d752dfbbff961744, - limb1: 0xbbd6ca577173e5f0b11400b0, - limb2: 0xb2d13d68fa1af94fa08e89ab, - limb3: 0x9bc36e2fcbdf430b44458d6 + limb0: 0x333941e7cf95e9917b54e1a9, + limb1: 0x3843027924a374c1a9a9729f, + limb2: 0xd0dabe5dd5d369d8c1451cad, + limb3: 0xabdcbf76b19bebbf5fc395b }, u384 { - limb0: 0x2ce7b43c53152a03058044b0, - limb1: 0x51769654234c61eaff4a70bb, - limb2: 0x711ff1c2aa017c5ad0d4ea59, - limb3: 0x1fa0983eeae4714d8f7ddee + limb0: 0x6c009a93b02f078ce2052764, + limb1: 0xbd421d253ba0ba60bf308a78, + limb2: 0x4ad937d0629a11476a609c7d, + limb3: 0x41530d7b50804af4b0352cd } ] .span(), b_den: array![ u384 { - limb0: 0xecbd08da6db4633e0ad665cd, - limb1: 0xda18f1bded8e7ea19a297e31, - limb2: 0x98442d2d9fe4d0c25b983273, - limb3: 0xb2fe699f74144de4d00b067 + limb0: 0xfec29c61443a6d01f59c899b, + limb1: 0x5ce316f41ef0681667e68141, + limb2: 0x77910ce68ab9657deb45cad1, + limb3: 0x97e93ed59cb07d9883fb418 }, u384 { - limb0: 0x90de8c444499d436757f452f, - limb1: 0x53e1714b345d0df2abaf3b93, - limb2: 0x576ea2bc4fcfd5d0fb67fee2, - limb3: 0x1714b56d58e4b0202906f25f + limb0: 0x83e0d7f43f4032df33376704, + limb1: 0x985341100a856ed3b9c4bc05, + limb2: 0x25357d08f08361030379040b, + limb3: 0x509bdcd18b333e7828c1f5d }, u384 { - limb0: 0x8bf5e8aa0d0bf6f7d407fbc7, - limb1: 0xc4e7b5c97dc1f52ae40003b0, - limb2: 0xd12b18b861378fd82df7d701, - limb3: 0x173d2ce54b442e09ea443a94 + limb0: 0x5d25ed621ee4a8e0b090d5c4, + limb1: 0xe8320ddce5cbfd36ddd29438, + limb2: 0x3352dcfdc3e9e8d8fe42219, + limb3: 0x39cb167c641a781cf92b88c }, u384 { - limb0: 0x4c2c6dd385b76a877b5ab180, - limb1: 0x6928b4fda853573010fb971c, - limb2: 0x5785d8cd45b8d106bf5c5b77, - limb3: 0x19e75c2a77d2af1b9b1ba7f7 + limb0: 0x15d2f24cc2c2d2aaf1d1554, + limb1: 0xc01bdaefa2d1f765ce45a083, + limb2: 0xb64f1afdc29cc82246717e55, + limb3: 0x6c026f7e05d11d1667b5323 }, u384 { - limb0: 0x1a65aced7ba362fd3d8a68fe, - limb1: 0x361acf62a2f76ab8eb6afdcb, - limb2: 0x64ce87fb4a41f584c337d205, - limb3: 0x6f35c285a8d5e7009bb2065 + limb0: 0xb1b342b84ac67017847d8489, + limb1: 0xd9dc825c5ba3fb49367a264b, + limb2: 0x9d0e141cc9234daa92f30974, + limb3: 0x16ff457a89fbbba9bc1d4217 }, u384 { - limb0: 0x49e1d76a191f1c1bc1aac85f, - limb1: 0xec017e214e7497131bf79ec5, - limb2: 0x9fb9dbab1a92d193060d3a26, - limb3: 0x16019e73ec4bd8f457c3c0b0 + limb0: 0xf9b940f9ed8134cd611acab3, + limb1: 0x62e8b5b037fba7a3ea1f7314, + limb2: 0x3c092bfb8b103093163e4e7a, + limb3: 0xd9dfc7b957bd2da45809cd7 }, u384 { - limb0: 0x12fa45db1f3397328a24c053, - limb1: 0x15e4e512d27eba313f686d94, - limb2: 0x1bed5f5a44b3fee1439d2b35, - limb3: 0x1ebbd86ae83c1265f31d705 + limb0: 0x568a6ed12081bd794edf2380, + limb1: 0x3d1e7e1861061d9a3509622a, + limb2: 0x31f0c4d70de71a89e5881d08, + limb3: 0x118757f5c9c80db3c81616b8 }, u384 { - limb0: 0x7905965575bc223b687d7ee, - limb1: 0x5e538c2b5b548f384daeda29, - limb2: 0xdf720ab4805bd088a2e27075, - limb3: 0x68cc6ee9c1a1c63f5f45948 + limb0: 0xcf94fa32ae30021ec9927860, + limb1: 0x5f6a83ce0c86ade6231e5840, + limb2: 0x87dc4d3d901d29081909b55b, + limb3: 0xb7dd5a80d12e4238be90b11 }, u384 { - limb0: 0xfacdac1827d734c58032561, - limb1: 0xbcd4e60185283ffadc4621c8, - limb2: 0x4883bd3f57a5531d07c637aa, - limb3: 0x10de951f5423990d5cdbeba4 + limb0: 0x7ce8f430da96dec3ca8019d1, + limb1: 0x83990e030d72f3440447c012, + limb2: 0x9d92bb171aa218bd50cd01aa, + limb3: 0x1a501239365d0a11795a6c9 }, u384 { - limb0: 0xd89e8ebcef501cb122fed298, - limb1: 0x88d1ef5a748195b0e98337eb, - limb2: 0x115aaf4cbd71cc89a09e9c82, - limb3: 0x2b15fbe5c16c6d909dea199 + limb0: 0xcb6c83335e861a3fb09c4060, + limb1: 0xaeb51438e60de0ca08d8e886, + limb2: 0x7b8e2b71d624a84ab29c7b9c, + limb3: 0x10b4528b1dad5221fe203488 }, u384 { - limb0: 0xa9faa5bb4ea635a9f39efdd6, - limb1: 0xa3be063ce244439baa539a, - limb2: 0x64f7180eed500dbfb0f16c41, - limb3: 0x19894b52c3c32c88bac2feb1 + limb0: 0xe7838dc0d4dc1a51b6e978c1, + limb1: 0x6c368f2278e9fc92539d069a, + limb2: 0x7e60de6d6d72c8ade2e3aa2f, + limb3: 0xe8430feabc7bd6b0ad072fb }, u384 { - limb0: 0x7bb6a0dc33d8deed3935fe17, - limb1: 0xd7509b23a783c324b7685e93, - limb2: 0x34d590e6338ca163151e5368, - limb3: 0x164d493c2dab26c5888c1ef2 + limb0: 0x5fe7c0b1f48897079f5067cb, + limb1: 0x2d70401cda2cc223112c323, + limb2: 0xdc03cc3ec330cd3714217c3, + limb3: 0xfde7e792e8aadb917bcf399 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -21618,10 +21610,10 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xd0f8a03542e55b63c59ab71a, - limb1: 0xa58e5f18af700501c2b2c113, - limb2: 0x8d9f606c374502f3383dafd, - limb3: 0xae6bdd46ee63f49b13a8562 + limb0: 0x4a7b0b69c5956d6c232ff972, + limb1: 0xa68b6c7c2cdd246ac52f9204, + limb2: 0x9d600f6442c41f51cabe781b, + limb3: 0x737b899c5804e79c79c3e29 }, u384 { limb0: 0x302ea91a3b09524e7c49fbbb, @@ -21633,66 +21625,66 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe6c7a48e835b8c60d9800db6, - limb1: 0xcef700106c456de36ae54157, - limb2: 0xf839729fb0b7422ead0fe956, - limb3: 0x18e4c6a3e03e23eaf342ce31 + limb0: 0xbd9689c938d5699fea760ea4, + limb1: 0x188bec4abaaedf7c5ac0261f, + limb2: 0xb72326a3952d50af97574296, + limb3: 0xbd0a4b5d52a136ed1662b7e }, u384 { - limb0: 0xcd9ab3c07d9f3e2c5a14b4a2, - limb1: 0x3cd998238f89e2f2c49a5cd1, - limb2: 0xfef16611ebddddbfbdbeaac8, - limb3: 0xea1229d12172d1ed8db36e2 + limb0: 0xa3f8b4f117530a57bdb2d14c, + limb1: 0x7d9596122765d39b5408aa1e, + limb2: 0xadd248d8461183b9222a3137, + limb3: 0x12c58b2a6d220bb049e5c224 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] .span(), b_num: array![ u384 { - limb0: 0xeff4ba3c3c4e8de03681d216, - limb1: 0xc40e8bd8f692b7ddf8457ce9, - limb2: 0x25a9a873ba1461ca3d47b8b0, - limb3: 0x112bd94ed70832fb64a7c372 + limb0: 0x2e23fed9a4f5965a2b7d7bb1, + limb1: 0x6e0bd5721920e46e6b0883fa, + limb2: 0x7b2ab2c9bdac4b904b0d8504, + limb3: 0x18448797e57913d8bfc8d6e1 }, u384 { - limb0: 0x3d866c98aa37f68cac40fcf2, - limb1: 0x2edcb14197019651d5768856, - limb2: 0x437126189425cc1730845735, - limb3: 0x191dda8a0c151a078ded2c09 + limb0: 0x84a4f17255361d4adda730c5, + limb1: 0x524fb8f45dd258f9a6c49e64, + limb2: 0xf0ea4fb8170a94bceb8fb1de, + limb3: 0xba7bd6f274b13933a713ba0 }, u384 { - limb0: 0x7507be3c79e9272be181114a, - limb1: 0xf2ca2abc9dd5599b63c444bc, - limb2: 0xdbe55e2ece3c9c3a9158cba2, - limb3: 0x16f83853478a2ebb83b06981 + limb0: 0x3b5d6b098d82ba525bd8514, + limb1: 0xa1d1472dff04f1b3a58f5145, + limb2: 0x58a668f189fe396aa2592496, + limb3: 0x4a6bacc825b01f669f011c1 } ] .span(), b_den: array![ u384 { - limb0: 0x8722923adf713183660136d7, - limb1: 0x649885ecd02d5214f910563, - limb2: 0x1702c3f89577262bd9b06d1d, - limb3: 0x158fe4d0d478dbdcebb841a5 + limb0: 0x450627252956a67fa9d88fe5, + limb1: 0xfafede89f40a87cd4c549880, + limb2: 0x9940edb6f03df73969d7f798, + limb3: 0x154180ed1b286720fa7d0644 }, u384 { - limb0: 0xd3c2cf02827ef8b168537d32, - limb1: 0x2504bb4c50c59f82d5117349, - limb2: 0x752e3e98e688dff50ff085a2, - limb3: 0x682669fd55ce746cd358c1f + limb0: 0x2d3ad3c4e94e295ef6cbefda, + limb1: 0x27f4b306b035622512caa87d, + limb2: 0x30b1c9b24f5777daa19e9f5f, + limb3: 0x171408d54188618c915fb926 }, u384 { limb0: 0x4, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xe6c7a48e835b8c60d9800db6, - limb1: 0xcef700106c456de36ae54157, - limb2: 0xf839729fb0b7422ead0fe956, - limb3: 0x18e4c6a3e03e23eaf342ce31 + limb0: 0xbd9689c938d5699fea760ea4, + limb1: 0x188bec4abaaedf7c5ac0261f, + limb2: 0xb72326a3952d50af97574296, + limb3: 0xbd0a4b5d52a136ed1662b7e }, u384 { - limb0: 0xcd9ab3c07d9f3e2c5a14b4a2, - limb1: 0x3cd998238f89e2f2c49a5cd1, - limb2: 0xfef16611ebddddbfbdbeaac8, - limb3: 0xea1229d12172d1ed8db36e2 + limb0: 0xa3f8b4f117530a57bdb2d14c, + limb1: 0x7d9596122765d39b5408aa1e, + limb2: 0xadd248d8461183b9222a3137, + limb3: 0x12c58b2a6d220bb049e5c224 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } ] @@ -21701,23 +21693,17 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xc61ee94b7aa3ecf3147f8ed6, - limb1: 0x1ba6a6a3491d6266deed46e5, - limb2: 0x7ebb99e81e40b3b80d821c90, - limb3: 0x55f4b3653ae104fc7a905cc + limb0: 0x7700a1eaba87cfa8f8d6626d, + limb1: 0x26ade21a4ba5357dbef543fe, + limb2: 0xa9fb16d24a8f5e03434bc930, + limb3: 0x5b9a276733cb3ed1480b643 }, g_rhs_sqrt: array![ u384 { - limb0: 0xca2782038487f9b40a6fdefa, - limb1: 0x42060052d370708656c2fa3e, - limb2: 0xe95f8632dbf257e207834628, - limb3: 0x9565e17c1d128b534c5aec7 - }, - u384 { - limb0: 0xed9a416583d3f2b43a7473f6, - limb1: 0x747ecda61b13dcad30debc82, - limb2: 0xa769b6c70660258aad4fe513, - limb3: 0x3117a6f558b0dfdd239afe1 + limb0: 0x1e54f7257e987e725839f44, + limb1: 0xb9aca7d4e4134583d5e633e8, + limb2: 0x3b854e2e6459636278f04e03, + limb3: 0x996fc8dece1f20077655e10 } ], }; @@ -21727,16 +21713,16 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xfe67916cc8a8a6b6e6576256, - limb1: 0xe4c3333ffee456f464cc8bcc, - limb2: 0xd2962fd1f35544e6a8072f91, - limb3: 0x17944a9530723daf74eadecb + limb0: 0x6a23b3b2e3364836acd86361, + limb1: 0x34dd376f2c34ffa798099edf, + limb2: 0xb662c20ee8ae59616add16bc, + limb3: 0xe85f38d645818c651ac6d7f }, y: u384 { - limb0: 0x3ccee4464828fa91affc28f3, - limb1: 0x7fcc63cb7d4375678df1aab4, - limb2: 0xb317ff803521354c92439f9, - limb3: 0x15dcd54ea6c89f0f6d84307d + limb0: 0x31df91616171404d30855973, + limb1: 0xf26f1ecbcc476ae5df007bc0, + limb2: 0xbc47bbf94c48731136c34f0, + limb3: 0x151fac7825c3dd9c817d7dba } } ); @@ -21748,15 +21734,15 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xc99a1051a1136d472a721b3e, - limb1: 0x5c5ba0591be6646c9c955d77, - limb2: 0x6c64995a2c09a3e4, + limb0: 0xd7357d697c562fbfaafb6137, + limb1: 0x8422bb8241972a273a043019, + limb2: 0x881d0eae39f0d85a, limb3: 0x0 }, y: u384 { - limb0: 0xf45751210cb588f8bc5746df, - limb1: 0xbe7f20645b2f5ff9abb0206a, - limb2: 0xca9c3bd06569977d, + limb0: 0x3525d2dc281a0e0410693c6a, + limb1: 0xaec37cec9f4d071ef2f11d21, + limb2: 0xbcd550fc1da1efd2, limb3: 0x0 } }, @@ -21764,7 +21750,7 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xc253763876703835b476998dafc8128a, high: 0x1f626a97ebe7ef9190920b690abc847e + low: 0x2012ded6f0ed51f3a38ce52f56170fdf, high: 0x42fb3247d0dd61ed4fdbe43a39c12d91 }, ] .span(); @@ -21774,169 +21760,168 @@ mod msm_tests { array![ -0x1, 0x0, - 0x0, - 0x1, - 0x1, -0x1, + 0x1, -0x1, 0x0, - -0x1, 0x0, 0x1, -0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x1, - 0x0, + -0x1, 0x0, - 0x1, + -0x1, -0x1, -0x1, 0x0, 0x1, -0x1, 0x1, - -0x1, 0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x0, 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x1, - 0x1, - 0x0, - 0x0, 0x0, - -0x1, 0x1, - 0x0, 0x1, 0x0, - -0x1, 0x1, -0x1, - 0x0, - -0x1, - 0x0, - 0x0, -0x1, - 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x1, -0x1, 0x0, -0x1, -0x1, - 0x0, + 0x1, 0x1, -0x1, -0x1, 0x0, 0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x1, 0x1, 0x1, + 0x0, + -0x1, 0x1, 0x1, -0x1, + 0x0, + 0x0, -0x1, - ] - .span(), - array![ 0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, 0x0, -0x1, - 0x0, - 0x1, -0x1, + 0x1, + 0x0, -0x1, + ] + .span(), + array![ -0x1, - 0x1, 0x0, 0x0, 0x1, + -0x1, 0x0, 0x1, 0x1, 0x1, + 0x1, + 0x1, 0x0, -0x1, + -0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, - 0x0, - 0x0, + 0x1, 0x0, 0x1, -0x1, - 0x0, + -0x1, 0x0, 0x0, 0x1, + 0x1, + 0x1, + 0x1, -0x1, - 0x0, - -0x1, + 0x1, + 0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, + -0x1, 0x0, - 0x0, + -0x1, 0x0, -0x1, 0x0, + -0x1, + 0x1, 0x1, + -0x1, + 0x1, + -0x1, + -0x1, 0x0, 0x1, + 0x1, + -0x1, + 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x0, -0x1, 0x1, 0x0, + 0x0, 0x1, + -0x1, + 0x0, + 0x0, 0x1, - 0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x0, -0x1, 0x1, - 0x0, - -0x1, + 0x1, ] .span() ), @@ -21946,73 +21931,73 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x17ecc2c951208016bc69a4a9, - limb1: 0x9f78a573eda5f8c12f9bd2eb, - limb2: 0x819dcd4c2fd84127, + limb0: 0x21fb3cab144e0881f6f8f768, + limb1: 0x7d45a753a79667c50617bdfc, + limb2: 0x2f919c294b693ce0, limb3: 0x0 }, y: u384 { - limb0: 0xab2c21eee707968399762e9a, - limb1: 0x4f650df7bf87c59dd0fd1ce3, - limb2: 0xb76b0b84d46d4a00, + limb0: 0x76249d403ed363186a243003, + limb1: 0xbac77918201d10fa41899b17, + limb2: 0xcbefbf9c6ca1901, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x8058104c0f194662dfe0dcc6, - limb1: 0x5add1bc6930b5961f99e243f, - limb2: 0xf2b4b78d8a64b71, + limb0: 0x8e3fb86624f8706242fc7e3d, + limb1: 0x79d7d46371d069b1da247c48, + limb2: 0x35c24c4e38827031, limb3: 0x0 }, y: u384 { - limb0: 0xd63d63a1d996af8f8a09545d, - limb1: 0xb124c606cdf060a1ed80baab, - limb2: 0xeab155a124ada20d, + limb0: 0x320dd150a928d8df52f4d6bb, + limb1: 0x59288c5858c7979519d0c1ec, + limb2: 0xa7c723045fc43fba, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x2cb23da5fa2bc13fcc0a52f7, - limb1: 0x912743a81cc1a70465f28fac, - limb2: 0x4acaf468bd655196, + limb0: 0xf94736189acf015a4c4f8772, + limb1: 0xd5ea4d6b04e7a5a78f586820, + limb2: 0xf93966b0a8531755, limb3: 0x0 }, y: u384 { - limb0: 0x3d451e173ed3f895286beda, - limb1: 0xc2020d2743bf3a44714bee22, - limb2: 0xb2ca68920cee3915, + limb0: 0x4e74ea38c8e6ba121fcfc773, + limb1: 0xc6e51b126a53c426c125cdcf, + limb2: 0xded087e28a5562b1, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xe02476e5bdd8c6abd1a63016, - limb1: 0xf687394b2140adff200175a5, - limb2: 0x453f26b4a7a2b51d, + limb0: 0xf7d8a92f8a2b758d613e1ca9, + limb1: 0xfe54c59514b15d9802e2e97a, + limb2: 0xf8b3768cdab146d7, limb3: 0x0 }, u384 { - limb0: 0x474696b93f3db9c7f87185ff, - limb1: 0x7fffffffffffffff82eac81e, - limb2: 0x7fffffff80000000, + limb0: 0x1817892d9f3b69f9dd7f081f, + limb1: 0xffffffffffffffffebd89bb9, + limb2: 0xffffffff00000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x18a93cc4c174a5ed432974c7, - limb1: 0xb6bf65581b11a124ec88791c, - limb2: 0x32fa83c15bc66d56, + limb0: 0xbb0bf30ef1225445507f4324, + limb1: 0xd1a5199a080d5fdcea858499, + limb2: 0x3c16ee760c0e8fda, limb3: 0x0 }, u384 { - limb0: 0x1e792ce50dcc12a219244018, - limb1: 0x42bba32f673a2d233cecf9e, - limb2: 0x11fd9958a41e1af5, + limb0: 0x6cf45eb6f5bc7be5e0ba760, + limb1: 0xfe979d2a16d26e13bfe411eb, + limb2: 0x485155277aa5eac5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22020,54 +22005,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x701fdada7d14ac8add0d0681, - limb1: 0x8ed9d0ff8abb0eab8e9d000d, - limb2: 0xf3c894cbfc7d9321, + limb0: 0xe267cb924e7c7b6cda03be4b, + limb1: 0xe5a3e6f8fe66e438ad2796ad, + limb2: 0xeca0b7b45f98f31d, limb3: 0x0 }, u384 { - limb0: 0x5d0bf505c25cba73db88c79b, - limb1: 0x87a5229ca796f7f34b246d11, - limb2: 0x52d57ad3e0108d2a, + limb0: 0xb15f3bc7e7983510965aec5d, + limb1: 0xdb57fa56abb5de37515165c4, + limb2: 0x40647d1a2a4662ef, limb3: 0x0 }, u384 { - limb0: 0x65ec2938bd5abcea161f109b, - limb1: 0x5b66a2d3711ca13b62a52041, - limb2: 0xa5392d626e66a78e, + limb0: 0xcbdca688e7d425664616e6f8, + limb1: 0xfa46b61f9ad6eafcdba6a1ad, + limb2: 0xb16cfc65ee76b348, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xf8bf2c1d91e850a938ebea31, - limb1: 0x50ff616b625f2ac3ba373024, - limb2: 0xae172672ee378231, + limb0: 0x8954dd769a2721fb0f9c00d4, + limb1: 0x3e49248655a91d655ac2be51, + limb2: 0x55c18511de075a33, limb3: 0x0 }, u384 { - limb0: 0xff9cd8a33189ca8d1ca95815, - limb1: 0x3d8ab3d98f53418f6da7eafe, - limb2: 0xe4c5bc7c9fb3d415, + limb0: 0x4b132cffa2f0e906667c07d8, + limb1: 0xdee96d715b77eb034e862fd7, + limb2: 0x1050f3894d60a970, limb3: 0x0 }, u384 { - limb0: 0x70e82a47126a0457dc65a003, - limb1: 0xa7688ebc933d9e45c9b097d6, - limb2: 0x24cd69cebde04308, + limb0: 0xb7e5df33edbae5030daf6a2a, + limb1: 0xb824e5d732213c812570d0f0, + limb2: 0x81d236613a48d396, limb3: 0x0 }, u384 { - limb0: 0x18a93cc4c174a5ed432974c4, - limb1: 0xb6bf65581b11a124ec88791c, - limb2: 0x32fa83c15bc66d56, + limb0: 0xbb0bf30ef1225445507f4321, + limb1: 0xd1a5199a080d5fdcea858499, + limb2: 0x3c16ee760c0e8fda, limb3: 0x0 }, u384 { - limb0: 0x1e792ce50dcc12a219244018, - limb1: 0x42bba32f673a2d233cecf9e, - limb2: 0x11fd9958a41e1af5, + limb0: 0x6cf45eb6f5bc7be5e0ba760, + limb1: 0xfe979d2a16d26e13bfe411eb, + limb2: 0x485155277aa5eac5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22077,30 +22062,27 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xc624d5459fd09078d5f1a16d, - limb1: 0x9942b0e7dd8ab44b8e730488, - limb2: 0x814c9f5e735c6e79, + limb0: 0xeea787b6c326ac86303c9d5, + limb1: 0xe837c561b6132d78f315841f, + limb2: 0x60df0794491bde28, limb3: 0x0 }, u384 { - limb0: 0x32c82e207553fe439d0d70fc, - limb1: 0x7fffffffffffffffec26b7b5, - limb2: 0x7fffffff80000000, - limb3: 0x0 + limb0: 0xae26d7fb08c55ddbb1f1ada0, limb1: 0x29ba19cb, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xb236fbe94da13a1aad88e985, - limb1: 0xadd0c6266ade75af396ae18, - limb2: 0x87899699cd48aa50, + limb0: 0xcd5df741a3aa90624121f7d8, + limb1: 0x3cddf2ef95cc303da5f86f9f, + limb2: 0xf5b54391dafa6397, limb3: 0x0 }, u384 { - limb0: 0xb60ddf624fd34c55f5ad07fb, - limb1: 0x48c743e0510e423169cc7e49, - limb2: 0x84701b2bfb5010ab, + limb0: 0x9a8aca305eb15fde1208208b, + limb1: 0x205701a4c986c26ebd7539e, + limb2: 0x4220a5028d8cb775, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22108,54 +22090,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xa844f8f6f6759826070ab2aa, - limb1: 0xd4c97cd6afcdff7f54c80a8b, - limb2: 0xfa91c3afbe1d85dc, + limb0: 0xf90ce889e5bdd98ba0721b0e, + limb1: 0xeb1bfafda84a3b914febe772, + limb2: 0x90f2270fba194028, limb3: 0x0 }, u384 { - limb0: 0x2d1338fc7c938c39652a4f7, - limb1: 0x7215702f8cc73815655b8f6, - limb2: 0x9c320d9f708fd870, + limb0: 0x41b0c396ee5d78490d6a5dae, + limb1: 0x445491245a480b970727304d, + limb2: 0x16a3baaede55a5ce, limb3: 0x0 }, u384 { - limb0: 0x3d2cc75185ebcca782c5fb15, - limb1: 0x6ac521932de5218abe45d2a7, - limb2: 0x241c0424b5102f57, + limb0: 0xcfdbdd763488c3f7a2b4fdca, + limb1: 0x15336642abaeebee83ef1f44, + limb2: 0xa656c23a507c2cfe, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x77a516329eb163993c6040bb, - limb1: 0xd8ab90c743de0c78d473dbfa, - limb2: 0x8a6184bb251d6ef7, + limb0: 0xf8bd7ae74c94f0227e0cb133, + limb1: 0x719f6c129d7897ccdacfb1bf, + limb2: 0x2616c4280f39eadd, limb3: 0x0 }, u384 { - limb0: 0x3a3b876800c7b62cd46ffb10, - limb1: 0x85bfc565cd9e6d25d0de83cc, - limb2: 0xfd99c41573a2da53, + limb0: 0x81a15a2f1bea91aa9caa468f, + limb1: 0xbe1700c3f21f78ad639b1cc5, + limb2: 0xb7c2cb43a8f5f69d, limb3: 0x0 }, u384 { - limb0: 0xaa2a12cf4c54573c46cb4858, - limb1: 0xd995f1b4836dc02827b78bd5, - limb2: 0xcd75e452b84a61e7, + limb0: 0xfcb352651fba1ca3f1b9fea9, + limb1: 0xaddb6d0690cf4247a1970bd5, + limb2: 0x946446d001946d89, limb3: 0x0 }, u384 { - limb0: 0xb236fbe94da13a1aad88e982, - limb1: 0xadd0c6266ade75af396ae18, - limb2: 0x87899699cd48aa50, + limb0: 0xcd5df741a3aa90624121f7d5, + limb1: 0x3cddf2ef95cc303da5f86f9f, + limb2: 0xf5b54391dafa6397, limb3: 0x0 }, u384 { - limb0: 0xb60ddf624fd34c55f5ad07fb, - limb1: 0x48c743e0510e423169cc7e49, - limb2: 0x84701b2bfb5010ab, + limb0: 0x9a8aca305eb15fde1208208b, + limb1: 0x205701a4c986c26ebd7539e, + limb2: 0x4220a5028d8cb775, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22165,9 +22147,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x6cf8a42fdbceca2f36a890c8, - limb1: 0x95a3537e95b4c7716306ee29, - limb2: 0x7252ea78a8676a04, + limb0: 0x1dfd90877510f19ad09c504a, + limb1: 0xb074e9aa525d8c79349e524a, + limb2: 0x94c66199a6ba1590, limb3: 0x0 }, u384 { @@ -22180,15 +22162,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xd4994a32066d5230cbbed437, - limb1: 0x5505652fe83664a31d452cc2, - limb2: 0x4362fbe526a9fa7d, + limb0: 0x48bf3a82ba262fd16c12ec2c, + limb1: 0xc9036d18a6b986e3a374f1ae, + limb2: 0x6c2233a8b011be71, limb3: 0x0 }, u384 { - limb0: 0x52f5b20df6baf85d5414d042, - limb1: 0x13fba0915032ff99a06f4c15, - limb2: 0xa609c01d69f462f9, + limb0: 0x7879118140388e4370b3fa4f, + limb1: 0xb03dde318947f0a696831b98, + limb2: 0xd1044cff1f2a787a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22196,54 +22178,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd0294b75fe9e388df7b3924e, - limb1: 0x633b228c90634875d4979bf6, - limb2: 0x1ec400d5a330a081, + limb0: 0x3da9b6aefd3516046937b382, + limb1: 0xa45338fe4e82c9dbac25ec19, + limb2: 0xcfb78711078d444b, limb3: 0x0 }, u384 { - limb0: 0xb41778afeb3c177b161e04df, - limb1: 0xc68cedf0711b74219db1f20a, - limb2: 0x9b69c14701bbcc0d, + limb0: 0x7219031bc465d593d714ed18, + limb1: 0x19a7f8f1065dfb662a66d764, + limb2: 0xfc2465e0091cceeb, limb3: 0x0 }, u384 { - limb0: 0x45bcd1b2f5644afe5f6a8db7, - limb1: 0x4b090de0a13b52a739b6674b, - limb2: 0xd5102db1c845bc64, + limb0: 0x7f257ffbc9a06327fb1e094f, + limb1: 0xbdeec89080a66e3406edac0a, + limb2: 0x8bfcce511bacdfd1, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x72619ffdc48d38e673a0864e, - limb1: 0xc196cc4498e2da2adc3ec394, - limb2: 0xcd1969eb182e8aa6, + limb0: 0xd88e467da71f0a6fafc265bf, + limb1: 0xb891487631f73ac9a7822515, + limb2: 0x52959cdecd7b72fe, limb3: 0x0 }, u384 { - limb0: 0xb85cb8e91ac738ec063570a5, - limb1: 0x99f38c34ccb2f5ed4f0f577c, - limb2: 0xadd34b96e0edad7a, + limb0: 0x8ce2e42089272e91ed0f9cb8, + limb1: 0x31352bad871fd7b970a4cdc5, + limb2: 0xe52771285282ef00, limb3: 0x0 }, u384 { - limb0: 0xd3729acc579d53262b93ef83, - limb1: 0x77f8dba185ff87ef83cf2272, - limb2: 0x68a8f57e6c5d6afe, + limb0: 0x62e87c727b249173d5b6715b, + limb1: 0xa33222c0dac0b4c8a193b3ea, + limb2: 0xe7b94ed84cbb2a7a, limb3: 0x0 }, u384 { - limb0: 0xd4994a32066d5230cbbed434, - limb1: 0x5505652fe83664a31d452cc2, - limb2: 0x4362fbe526a9fa7d, + limb0: 0x48bf3a82ba262fd16c12ec29, + limb1: 0xc9036d18a6b986e3a374f1ae, + limb2: 0x6c2233a8b011be71, limb3: 0x0 }, u384 { - limb0: 0x52f5b20df6baf85d5414d042, - limb1: 0x13fba0915032ff99a06f4c15, - limb2: 0xa609c01d69f462f9, + limb0: 0x7879118140388e4370b3fa4f, + limb1: 0xb03dde318947f0a696831b98, + limb2: 0xd1044cff1f2a787a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22253,16 +22235,16 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x12c7ecf8d09fcaa2f129b7ee, - limb1: 0x8e3161ebfe93ce18bc54f317, - limb2: 0x5f9a778e0511d71c, + limb0: 0xbdb2f62bd05bb832b0470250, + limb1: 0xa50a504b283cb9149aff9e60, + limb2: 0x615f2276aa48d422, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0x3ae49be9ff70c4b56778be8, - limb1: 0x74cc210da12c43172445297c, - limb2: 0x7cf6e970f26ea52b, + limb0: 0x276928b22fe54a72c29e80b1, + limb1: 0x756f94447b01aba71430b69a, + limb2: 0x52ed39a607a55cf8, limb3: 0x0 } ], @@ -22273,15 +22255,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xeaf390b50dd167ee1e6b9961, - limb1: 0x4190c026ec8c59248b87ca16, - limb2: 0x3446f48ca7553ebe, + limb0: 0xd9534dbc202b60dcec7665a7, + limb1: 0x22185745297706f49c95d5c3, + limb2: 0xd68dc1e8b9836e3, limb3: 0x0 }, y: u384 { - limb0: 0x7749adc6b791148a2751af1d, - limb1: 0x8b5dbb783fd77dd8b69f7b90, - limb2: 0xf638b745f783108e, + limb0: 0x1dc4d21d42b936682e20de0b, + limb1: 0x5cc69fc6101b12a3f2527535, + limb2: 0xc387fe8df50dd34f, limb3: 0x0 } } @@ -22294,29 +22276,29 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xd55c432f97c10631c5728c95, - limb1: 0x464a60ebb3d66b5d2fdd1c8c, - limb2: 0xa8d1c60dffd92494, + limb0: 0x4bc9145b3a4fb6e2614a06c6, + limb1: 0x3101e1537439d819fa56dd7c, + limb2: 0xdcdaaea2c7c5a0e1, limb3: 0x0 }, y: u384 { - limb0: 0x731c3c8fc3a2198db57946fe, - limb1: 0x52623f00e7e57ac236375dc8, - limb2: 0x469ddacba7e03f1, + limb0: 0x38ddc6e9729c0f24b9b57c26, + limb1: 0x5c2794887c8653e0c9065f23, + limb2: 0xb7fc696fb0f5beab, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x377be2c60c7aacfbb0c40022, - limb1: 0x4cd01d6c98399426b3083e11, - limb2: 0x1e2eceee956e743d, + limb0: 0x8c37b7c8864de1cbee158a4b, + limb1: 0x2f04f28200d6b0bbfafbe652, + limb2: 0x8315f1428de87444, limb3: 0x0 }, y: u384 { - limb0: 0x75766da2a73df60d6214ac3b, - limb1: 0xfe5beb51a9a83d436aaf3132, - limb2: 0x5c676e95c76770be, + limb0: 0x2e2ba1ff6b4c3017bf814f62, + limb1: 0xb005c9178e9aa0ef5618a9e0, + limb2: 0xaefa53577d49be3a, limb3: 0x0 } }, @@ -22324,10 +22306,10 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xd4088ff7d71330613cc4f772547e3918, high: 0xf22a4fc63f2de8a82d20481ad216ad53 + low: 0x5940b9644e64c72e5d056ac981c4ce8d, high: 0x845115d195711daac26adef69969c4b3 }, u256 { - low: 0xe575ae93ce749e8af4e1680b05a02c72, high: 0xd69db137c9a57cd1be28e8c52b395c4e + low: 0xd12bd0b5247cdc98c12c6bae9657faf8, high: 0x7546d0a0ddad3bd9468207836b6d7882 }, ] .span(); @@ -22335,50 +22317,58 @@ mod msm_tests { array![ ( array![ - 0x1, + 0x0, 0x1, -0x1, 0x1, + 0x1, + 0x1, 0x0, 0x1, + 0x1, 0x0, + 0x1, + 0x1, + -0x1, + -0x1, -0x1, -0x1, -0x1, -0x1, - 0x0, 0x1, + 0x1, + 0x0, 0x0, + 0x1, + -0x1, 0x0, + -0x1, + 0x1, 0x0, 0x0, -0x1, + 0x1, + 0x0, -0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x1, 0x0, + -0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x1, 0x1, - 0x0, 0x1, 0x0, -0x1, + -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x0, - 0x0, 0x1, - -0x1, - -0x1, - 0x0, - -0x1, 0x1, 0x1, 0x1, @@ -22386,122 +22376,112 @@ mod msm_tests { 0x0, 0x0, -0x1, - 0x0, - 0x0, -0x1, - 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, - -0x1, - 0x0, - -0x1, - -0x1, -0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x0, + 0x1, 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x0, - -0x1, + 0x0, 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x1, ] .span(), array![ 0x1, - 0x1, - 0x0, - -0x1, -0x1, + 0x0, -0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x0, - -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, 0x1, 0x0, 0x0, + 0x0, + 0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, 0x0, + 0x0, -0x1, 0x1, 0x1, 0x0, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, - 0x1, -0x1, -0x1, 0x0, - 0x1, + -0x1, 0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, 0x0, - -0x1, + 0x0, -0x1, 0x1, - -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, -0x1, - 0x0, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x1, -0x1, -0x1, + 0x0, + 0x1, -0x1, 0x1, 0x1, - 0x0, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x0, -0x1, + 0x0, 0x1, -0x1, -0x1, - -0x1, - -0x1, + 0x1, ] .span() ), @@ -22511,14 +22491,15 @@ mod msm_tests { -0x1, 0x1, 0x1, - -0x1, + 0x1, 0x0, -0x1, - -0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x0, + 0x1, -0x1, 0x0, -0x1, @@ -22526,154 +22507,152 @@ mod msm_tests { -0x1, -0x1, -0x1, - -0x1, - 0x0, 0x0, - 0x1, -0x1, -0x1, - 0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, -0x1, 0x0, - -0x1, - 0x1, - -0x1, 0x0, -0x1, - -0x1, + 0x1, 0x1, 0x0, 0x1, + 0x0, + -0x1, -0x1, 0x0, 0x0, - -0x1, 0x0, 0x0, + 0x1, 0x0, - -0x1, 0x0, 0x0, 0x1, - -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x1, - -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x1, - -0x1, - -0x1, 0x1, 0x0, -0x1, 0x0, - 0x0, 0x1, - 0x0, - -0x1, 0x1, - 0x0, - -0x1, 0x1, 0x1, 0x0, -0x1, + 0x0, + -0x1, -0x1, - ] - .span(), - array![ -0x1, -0x1, + 0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, - 0x1, + 0x0, + -0x1, + -0x1, + ] + .span(), + array![ 0x1, -0x1, + 0x1, + 0x0, -0x1, -0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x0, 0x0, - -0x1, 0x1, 0x1, 0x0, - 0x0, 0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, - 0x0, + 0x1, + 0x1, 0x1, 0x0, -0x1, -0x1, - -0x1, - -0x1, 0x1, -0x1, 0x0, -0x1, - 0x0, - -0x1, - -0x1, - 0x0, -0x1, - 0x0, - 0x1, 0x1, 0x1, - 0x1, - 0x0, 0x0, -0x1, 0x0, -0x1, + 0x0, -0x1, 0x1, - -0x1, - -0x1, 0x1, + 0x0, 0x1, + 0x0, 0x1, + 0x0, -0x1, -0x1, 0x1, 0x0, -0x1, - 0x0, -0x1, -0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, 0x1, + 0x0, + 0x1, -0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, - 0x0, -0x1, + 0x1, -0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x0, + 0x1, ] .span() ), @@ -22683,85 +22662,85 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xfe38d167ba0820df1f92ec38, - limb1: 0xa8ca3ad499fbd064c087e885, - limb2: 0x7bbdfdaf1f3e3802, + limb0: 0x696b1a5834551c89097de328, + limb1: 0x4e14c3046c4fc45461d053a6, + limb2: 0x868ffc0f6184110c, limb3: 0x0 }, y: u384 { - limb0: 0x4f7ffe259805cafe2646c161, - limb1: 0xaa5e0df1c83c973d0be9333a, - limb2: 0x729cf8df9122afa7, + limb0: 0x54104afe839009f76f6097d5, + limb1: 0xf888d72f6540d7c41d3df71b, + limb2: 0x8ce45828bf7b23d0, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x6b52f95a6b64c1b1a8e3f633, - limb1: 0x9d7e4196598b40ad4dad2189, - limb2: 0xd4667551a381b799, + limb0: 0x6c042825f69c33fe505ee659, + limb1: 0x9e4d6ae42926e55318a1e0d1, + limb2: 0x5009bd861e207363, limb3: 0x0 }, y: u384 { - limb0: 0xf4e86c21022109299ba6d090, - limb1: 0x5121fd714990ab807dbe9f62, - limb2: 0x559bac61647c36e2, + limb0: 0x746c4644fd6ef8792fb7356f, + limb1: 0x711ed175e7015f8dc0348d92, + limb2: 0xdb989a3c73b32929, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x2348b5b88a96f790ad19e2cf, - limb1: 0x1eb7c5f3335ff7aa6f48cf56, - limb2: 0xa96955291f466b18, + limb0: 0xdfb86bb991661957dca00d5c, + limb1: 0xbcca103e5e4d73b2fd5fea9f, + limb2: 0x262b36fc35cf4002, limb3: 0x0 }, y: u384 { - limb0: 0x2da4bb722577a5c1918b4ee4, - limb1: 0x2c2a614ef4024ba9caab4523, - limb2: 0xeb6af51ba1a20952, + limb0: 0x72612f979770e170b204195e, + limb1: 0xd139d990ab885c7f21fd1739, + limb2: 0xa2d354eae9666ad5, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xf35958e47604e4e46360754c, - limb1: 0x8799ee3fff96579ed802d791, - limb2: 0xf72372e98cd66222, + limb0: 0x9d6af6950f2784913220d8ef, + limb1: 0x5d6e9944a2bb7d5083312d74, + limb2: 0x9ab6bc1c2ef06697, limb3: 0x0 }, u384 { - limb0: 0x1ce5d1e2aa9f498ce154e24c, - limb1: 0x54ad8e350eb98167a38ba2c5, - limb2: 0x53ed566e2fbfd29a, + limb0: 0xc9de01b9810f862b5d03f0bb, + limb1: 0xf9ed95bd885cf18c870768f5, + limb2: 0xdc3ad1d2f717e263, limb3: 0x0 }, u384 { - limb0: 0xf8360078888b630938160a4b, - limb1: 0x7fffffffffffffff2d2a1cca, - limb2: 0x7fffffff80000000, + limb0: 0xbce920711e21b4f0d856f251, + limb1: 0xffffffffffffffffc14a1ecb, + limb2: 0xffffffff00000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xd9a16670aaece80be6650ccc, - limb1: 0x51e68a51385e9f9a55789013, - limb2: 0x17dea381bd7be678, + limb0: 0x46c7c1b4f6d9c78f0d87d150, + limb1: 0x3019469c23c8eefc43737172, + limb2: 0xeb98bb9b0f5ce990, limb3: 0x0 }, u384 { - limb0: 0x4c7759f4e968dff8c5271b47, - limb1: 0xf664e4cf7fd5cd2fb88e697b, - limb2: 0xed747ed3b79177b2, + limb0: 0x18ad8c2ad205239f4f222e1, + limb1: 0xf88e99f426ef7a45147ba33c, + limb2: 0xbf6dd7305a5d8e4b, limb3: 0x0 }, u384 { - limb0: 0xf4ef08a2a1bc2bf36a36870f, - limb1: 0xc41b46d319f430175c92bcdd, - limb2: 0xbd416d524b7a2f2d, + limb0: 0xbe9419840b0d4ac8a7228bc5, + limb1: 0x51e469261e9fb2d5a8dce88c, + limb2: 0x197f640948cdd9d0, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22769,66 +22748,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf11b64b66593d0ec4ebfe33e, - limb1: 0x2c73348fe2fca66fcb30af4c, - limb2: 0xfdbfdbb849cc445d, + limb0: 0x9d894deabff92cc03ae792d9, + limb1: 0x920907e4bc221acdd80c2c72, + limb2: 0xc1ce0cc379d4fe6, limb3: 0x0 }, u384 { - limb0: 0xce3c1f9017f6efd945e792a2, - limb1: 0x3c7f0b4422e536d5f308dfcb, - limb2: 0x4396247231ab1a7c, + limb0: 0xf1620842af7e53aba176fd7d, + limb1: 0x616d97810d3038cfa47d102, + limb2: 0x8abf973d9888900d, limb3: 0x0 }, u384 { - limb0: 0xd5ad7ba626cb669084daf742, - limb1: 0x7db9ce02fa86826b434c825f, - limb2: 0xafb1adf25be293fe, + limb0: 0xc612c2df6ba53b6407d32be, + limb1: 0x9e4926cbe30a9f1a01b6f2a3, + limb2: 0x398256b6844d6a02, limb3: 0x0 }, u384 { - limb0: 0x2dea35448629dc4bb7c1268b, - limb1: 0xb1afa3405333614e276f51c6, - limb2: 0x2ff564b9d26e829b, + limb0: 0x7abcd7356921760d2e47b893, + limb1: 0x909fe934f555d704abfbb459, + limb2: 0xccba033fc28fdfff, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x23feae2d074ca9358b8962d, - limb1: 0xf0f3d62e44e37b9363d361e2, - limb2: 0xb2a69caf78f15754, + limb0: 0x1078dbb78d3c784fe0d8bf70, + limb1: 0xbd95de4c814d402bad71b850, + limb2: 0xa51cf1408b7a1a42, limb3: 0x0 }, u384 { - limb0: 0x72e6a3fc06ec38a1dcdbe9d, - limb1: 0xc681e1e019f9f81fd402e026, - limb2: 0x9f4fd2d8bd09dd00, + limb0: 0xafb38bab4f258dde6bcc1acb, + limb1: 0xeefad6e4c4b8da3fa064fa2b, + limb2: 0xdb1083ddf1b954d0, limb3: 0x0 }, u384 { - limb0: 0xd50680442526976158a6cb14, - limb1: 0xe4f572b53f1aee1d06faca0a, - limb2: 0x1492fed27589b208, + limb0: 0xaf9ea416fda5eaac76ed505e, + limb1: 0xf5019fb06a529438e2deacfb, + limb2: 0x7682c588d33bd7f2, limb3: 0x0 }, u384 { - limb0: 0xc727fd7f0186a06fcf93d7e8, - limb1: 0xb980732d611a9610a4dd602c, - limb2: 0x3ae091618547ecd8, + limb0: 0xd75f261f118023733ff28e4c, + limb1: 0xee57c87f3e825d37adf9be7c, + limb2: 0xf9e0c557df2df006, limb3: 0x0 }, u384 { - limb0: 0x4c7759f4e968dff8c5271b44, - limb1: 0xf664e4cf7fd5cd2fb88e697b, - limb2: 0xed747ed3b79177b2, + limb0: 0x18ad8c2ad205239f4f222de, + limb1: 0xf88e99f426ef7a45147ba33c, + limb2: 0xbf6dd7305a5d8e4b, limb3: 0x0 }, u384 { - limb0: 0xf4ef08a2a1bc2bf36a36870f, - limb1: 0xc41b46d319f430175c92bcdd, - limb2: 0xbd416d524b7a2f2d, + limb0: 0xbe9419840b0d4ac8a7228bc5, + limb1: 0x51e469261e9fb2d5a8dce88c, + limb2: 0x197f640948cdd9d0, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22838,42 +22817,39 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xff97195c36995693161a87e, - limb1: 0xa74b85cf777591f66d9f7489, - limb2: 0x6fbad2183f4198a8, + limb0: 0xbc0c947158d7fa8108c18f15, + limb1: 0xfc1535b141bde50bb092a97, + limb2: 0x478e3263a7d6daaf, limb3: 0x0 }, u384 { - limb0: 0x50de01dd3cd8e30ca4d71fa8, - limb1: 0xe4df2d625b9a29f815af3a13, - limb2: 0x871a85f5a3c3a9aa, + limb0: 0xecc8bfe77a4516b1595699d0, + limb1: 0xdd8df18620b2311e6701078, + limb2: 0x1fbd1f27e18971fd, limb3: 0x0 }, u384 { - limb0: 0xa08df527da92e97663707874, - limb1: 0xffffffffffffffff179784db, - limb2: 0xffffffff00000000, - limb3: 0x0 + limb0: 0x11d309a585aa7a68152db37b, limb1: 0x5f04fa9e, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x82c117e21eca9f913ee85a75, - limb1: 0xe4934ef801d3e5a3abb7a9db, - limb2: 0xc88afe592d41b1ab, + limb0: 0x510745b034711921593e1354, + limb1: 0xd5bae4d0e4f96c1d231b3f71, + limb2: 0xfa3dacdd22f3597b, limb3: 0x0 }, u384 { - limb0: 0x504120675d018d67df48665c, - limb1: 0xbcb64116aab23afdfca3d3f2, - limb2: 0x3e2adcfbd1580f55, + limb0: 0x54f536689fe19a4552d4d442, + limb1: 0x7b70c2aebcfa17f09964fcfb, + limb2: 0x8378b9a32060a0dd, limb3: 0x0 }, u384 { - limb0: 0x87d4e0aff05f8b20e0e57d14, - limb1: 0xcf6740115a64bfcecf6d83da, - limb2: 0x6498f5afc736af96, + limb0: 0xbbfb0bb648c6335360418894, + limb1: 0x1abc14661c891d6f20b5b61, + limb2: 0x5005a2928c317779, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22881,66 +22857,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x26f0a1e7824ad89b020dd06f, - limb1: 0x84b6e27cfc828d0d6329640c, - limb2: 0xb83785b6f0e7c814, + limb0: 0x33aabf69184d9c07b1782cec, + limb1: 0xab842b0c630b528f552c9c2f, + limb2: 0x5d1ee2a3c1c91a85, limb3: 0x0 }, u384 { - limb0: 0x256b4d0e7d2d372a66e65140, - limb1: 0xf67d84f5c5330dbdd2dcabba, - limb2: 0x76239a7cd4af588c, + limb0: 0x1c7e97c0ad78a37aae645567, + limb1: 0x80bc9c07a7d9d0c0fbe7a27e, + limb2: 0xb364921e58c5e74f, limb3: 0x0 }, u384 { - limb0: 0x601315b4f014408dd252acad, - limb1: 0xb2b74fc6cf474a6db3b1f3b4, - limb2: 0xcdcf3ee91496108, + limb0: 0x2af55615f05468807c283998, + limb1: 0x34255e2b1ecd667b58652cc0, + limb2: 0xe0b34498429b4adb, limb3: 0x0 }, u384 { - limb0: 0x3b3f33de9b6ac1c472a7c746, - limb1: 0xd4bf9b7874229256ca3094e0, - limb2: 0x40f467958d950a2a, + limb0: 0x886df99a18cde3ed393b3f02, + limb1: 0xa3931af9bac87d5bd4d05796, + limb2: 0x40cb7c6fc1c6f423, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x16af3f11f07b7d67f21a13cf, - limb1: 0x4224cd5059e583edba8210d1, - limb2: 0xf729feb2c468ad6d, + limb0: 0x96a26aac8ec79d2fa6821ee, + limb1: 0x2644ca0d27587dfe9fe82500, + limb2: 0xda553e7a56e529e2, limb3: 0x0 }, u384 { - limb0: 0xe6b1b11e5779aafeeda448e3, - limb1: 0x5e5427aeacfa2e0de5dfcd47, - limb2: 0xe0851a0c45ce9626, + limb0: 0x331aa803e0723bd8b56d9977, + limb1: 0x94bb300862621b03195f411e, + limb2: 0x4897f5993f453b20, limb3: 0x0 }, u384 { - limb0: 0x87ca08fe429afd6a03fbebe8, - limb1: 0xd9fce51363398c4e93ff7e60, - limb2: 0xe8ab74ab8c305ecf, + limb0: 0xb5889f69082d9175670f9362, + limb1: 0x90009ccbdb6bee5506597dce, + limb2: 0xebea110139f09b0c, limb3: 0x0 }, u384 { - limb0: 0xb79626c8897a3a6cc40a4383, - limb1: 0x2a494c19693e2cf3a28c24fd, - limb2: 0xf586532181d836d0, + limb0: 0xe969d38395ecbb65604bd9e3, + limb1: 0x84a35e5336383d54b21633fc, + limb2: 0x64f2fafe289986f8, limb3: 0x0 }, u384 { - limb0: 0x504120675d018d67df486659, - limb1: 0xbcb64116aab23afdfca3d3f2, - limb2: 0x3e2adcfbd1580f55, + limb0: 0x54f536689fe19a4552d4d43f, + limb1: 0x7b70c2aebcfa17f09964fcfb, + limb2: 0x8378b9a32060a0dd, limb3: 0x0 }, u384 { - limb0: 0x87d4e0aff05f8b20e0e57d14, - limb1: 0xcf6740115a64bfcecf6d83da, - limb2: 0x6498f5afc736af96, + limb0: 0xbbfb0bb648c6335360418894, + limb1: 0x1abc14661c891d6f20b5b61, + limb2: 0x5005a2928c317779, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22950,9 +22926,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xcaa99198e44fe32b3d8225b1, - limb1: 0x54037d921df830450156dbb6, - limb2: 0x6491fcc34f7bc668, + limb0: 0xa06bf1d8f99319ba614afb3e, + limb1: 0x966cdc84dae16f6526b9bc0c, + limb2: 0x91461b76042e4a4c, limb3: 0x0 }, u384 { @@ -22965,15 +22941,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x361e36769b3d0e0046fd3560, - limb1: 0x2e24853ffffffb7b415e0b86, - limb2: 0x4fa5c04a9a6adeeb, + limb0: 0x40f4670d31b3b0a2eddddce2, + limb1: 0xa84325b72a14748c8cf0fec7, + limb2: 0x29cd8833d2474bb1, limb3: 0x0 }, u384 { - limb0: 0x716450ed0a0446bdaa0226fc, - limb1: 0x43c9f8767314c7a8430a0f22, - limb2: 0x823035833d37dd50, + limb0: 0xb4436c2077fdb2a9d3010c4a, + limb1: 0xa4e884dd788ba6f9e9fe348f, + limb2: 0x89cb0b7cac104c9a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -22981,54 +22957,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xa931459b93e88bdd5b803c0c, - limb1: 0xebdde76a549223fb7520de6a, - limb2: 0xb605d4bfcd59aab3, + limb0: 0x5f8f6afeecbc83fcecca2f9a, + limb1: 0x6b464f7c56c8ff66e91b6a7b, + limb2: 0x3266aa66b57b1298, limb3: 0x0 }, u384 { - limb0: 0xbbfc07b54b237542a93dd136, - limb1: 0x4e3390e81b0dc6f1db7daf07, - limb2: 0x266830d3d1f4eaf3, + limb0: 0x848dc8f48a82d239d0cd6d78, + limb1: 0x15eda35ef27c63d0c6cd3ddc, + limb2: 0x2a9e920d8d1c1b8f, limb3: 0x0 }, u384 { - limb0: 0x67c7ffb92d1a4f0f5d797827, - limb1: 0x499ba6b09cd2cada2a47e9ba, - limb2: 0xdee2e16a1ab96cd1, + limb0: 0xf684ed3c71b1333d1daa4c59, + limb1: 0x17efcf74175d51ee74f525e4, + limb2: 0xb9c4486f3ae84096, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x22d31c506cf876a76558afe, - limb1: 0xecf6ce2ce5db238e89e68846, - limb2: 0x6c05ce2744c03af8, + limb0: 0xc915a2e8c4514db4ec4f2318, + limb1: 0x3ef1edc78a70e4a7ade7dd8c, + limb2: 0xa661615e8191110b, limb3: 0x0 }, u384 { - limb0: 0x3c8ebdf5a88938b0b59e2d66, - limb1: 0xc0a527d3a7a8d56dc55a2c66, - limb2: 0x8ad6e9e587c1e582, + limb0: 0x69c5fe0426f8db39b959c810, + limb1: 0xb23d3065267d2a1e3c70fe35, + limb2: 0x36b1a68a6460e4ac, limb3: 0x0 }, u384 { - limb0: 0x7826be2f1dc1680529cbeb55, - limb1: 0xe88dd3f21d5a2fc39bfed94b, - limb2: 0xd435954cf292fbf8, + limb0: 0xaf896c94d3d52440aecf3b6b, + limb1: 0xc5322ebd0cf591cea7226903, + limb2: 0xbd651360a609ae19, limb3: 0x0 }, u384 { - limb0: 0x361e36769b3d0e0046fd355d, - limb1: 0x2e24853ffffffb7b415e0b86, - limb2: 0x4fa5c04a9a6adeeb, + limb0: 0x40f4670d31b3b0a2eddddcdf, + limb1: 0xa84325b72a14748c8cf0fec7, + limb2: 0x29cd8833d2474bb1, limb3: 0x0 }, u384 { - limb0: 0x716450ed0a0446bdaa0226fc, - limb1: 0x43c9f8767314c7a8430a0f22, - limb2: 0x823035833d37dd50, + limb0: 0xb4436c2077fdb2a9d3010c4a, + limb1: 0xa4e884dd788ba6f9e9fe348f, + limb2: 0x89cb0b7cac104c9a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -23038,37 +23014,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x8a2b89b1d857e4168800bc4, - limb1: 0xe3270342e99adc85024ddb09, - limb2: 0x2db5b2e588595d8e, + limb0: 0xaf04473bff579d844c31c671, + limb1: 0x7b92703165f56ec94ef48e86, + limb2: 0x3067a282d19027fb, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x87a411c9e28478dce994813e, - limb1: 0xa623e551e4939bb7adbdfca3, - limb2: 0x64705fd0f668791d, - limb3: 0x0 - }, - u384 { - limb0: 0x920d24f268ecefb1f7fbc07e, - limb1: 0x9066deb6c6a4ef94a0264c6b, - limb2: 0x5f67ced2387f7156, - limb3: 0x0 - }, - u384 { - limb0: 0xd4754790a53cec1fcf7a084d, - limb1: 0x8699ac8b3b3a398ec752bb59, - limb2: 0x404f15a9f03b4be5, - limb3: 0x0 - }, - u384 { - limb0: 0x430aee7d534d5a0f3b034340, - limb1: 0xc0188f54d2a84d06a2c84ddc, - limb2: 0x1fd6a3c98ae6e9d5, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 3 @@ -23076,15 +23027,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x7981558b32d7b982ca627fcb, - limb1: 0x80f6e426e92bd2f9ca68ccdf, - limb2: 0x86dd4aa90df1f60f, + limb0: 0xd6462c75ea56f7bb68c84a69, + limb1: 0x8dd253e20c99c43c4f68bed2, + limb2: 0x18984ed5d31f249a, limb3: 0x0 }, y: u384 { - limb0: 0xfcaf2b4c77d30dad2fd61d37, - limb1: 0x64a5a463e9e28379be4eb906, - limb2: 0x8cde1dbb13d70d63, + limb0: 0xf3dbd029d4367da57a7a42a5, + limb1: 0x562b4f70146f5f2fe0dc34a3, + limb2: 0xe30e43c60690ced7, limb3: 0x0 } } @@ -23097,43 +23048,43 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x312f784bf27825fa1d3f439, - limb1: 0xae9695e4cbf24137507a8405, - limb2: 0x1c18568ce1be149e, + limb0: 0x9726cf8eeead73dc5d395016, + limb1: 0xa29ab79dcffa879d321816a4, + limb2: 0x1588632336f6b4d3, limb3: 0x0 }, y: u384 { - limb0: 0x1f7981a01e92e65fa10beff2, - limb1: 0xb85b0cb4f166dcb460dbd230, - limb2: 0xae1c4de415a01c75, + limb0: 0x3ba7a6b401e5c01a85695d90, + limb1: 0x27e37b0f2e5913bd92fff8, + limb2: 0x55eeca8b11cf9200, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x34c7f809193100ee4863dd5d, - limb1: 0xa05042834cbf7b806423f18d, - limb2: 0x973dfadea9c23601, + limb0: 0xdeafbaf34e4aac6a75e0ff5f, + limb1: 0x28402199508879ef73ca80, + limb2: 0x590cd563c12eb6b5, limb3: 0x0 }, y: u384 { - limb0: 0xcef9a483e4da75bf4c96cb20, - limb1: 0x44090d9c389f1b6279602a07, - limb2: 0xe8769f558f571f33, + limb0: 0xdc78fefc86506f2816c7ee65, + limb1: 0xb5adcf5d69e108642d50ec1a, + limb2: 0xcff1cb37b1766dd6, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x93076e670945f11ddd335d35, - limb1: 0x9c3921791869208a335cdf01, - limb2: 0x70af3da5695ae7aa, + limb0: 0xad4db338b89e9c858bd5131d, + limb1: 0xd87cb7985fba393df2cadae, + limb2: 0x2347372ae1c7a845, limb3: 0x0 }, y: u384 { - limb0: 0x137a44275595ce73be4ba811, - limb1: 0x465b5f41c43898028bd0615b, - limb2: 0xc622cf5769e15971, + limb0: 0xe83f06a54d431942f38ae16, + limb1: 0x5c0a042731b9357ab77c62e3, + limb2: 0xa0544acfdc8a50b8, limb3: 0x0 } }, @@ -23141,13 +23092,13 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xe3b4df81eeb3462ca032149d06fafb60, high: 0x5bbdd1f416f14aad7f107645094c0230 + low: 0x332564b2a5bc00258babdf0a681bdab, high: 0xdfe89a221ff53488ab54a470be8db3de }, u256 { - low: 0x754724dd269b6c3babf0f4bd4af0a6fe, high: 0x298b7e5d5b1654ad81e774de3c740119 + low: 0x4479e32e014084ceb4399fd4bf62a7ed, high: 0xdc3d433e2baf45449642e8f182b7bb2d }, u256 { - low: 0x566ff3ec679b29e8c0c32da9bc49b58e, high: 0xf1c58f447e083c1bcda6a326451437d6 + low: 0xa9772ae2c08bf2f8c6fc60ffba3b5040, high: 0xf0a7230897cb6230a594334b8511c570 }, ] .span(); @@ -23155,494 +23106,493 @@ mod msm_tests { array![ ( array![ + 0x0, + 0x0, + 0x0, + -0x1, + -0x1, 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, - -0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, -0x1, 0x1, 0x1, - -0x1, - -0x1, - 0x0, 0x1, 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, - 0x0, 0x1, 0x0, - 0x1, 0x0, 0x1, 0x0, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, -0x1, 0x0, -0x1, -0x1, 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x0, - 0x0, - 0x0, + 0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, - 0x0, - 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, 0x1, 0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - 0x1, 0x1, -0x1, - 0x0, - 0x1, -0x1, + 0x1, 0x0, 0x0, + 0x0, + -0x1, -0x1, -0x1, ] .span(), array![ - 0x1, 0x0, 0x1, - 0x1, - -0x1, - 0x0, -0x1, 0x1, - -0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x0, - 0x1, 0x0, + -0x1, 0x1, -0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x1, + 0x0, + 0x0, 0x1, -0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x1, 0x0, 0x0, 0x1, + 0x0, -0x1, - -0x1, + 0x1, + 0x0, + 0x1, 0x0, 0x0, -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, + 0x1, + 0x0, 0x0, 0x1, 0x0, 0x0, + 0x0, 0x1, -0x1, 0x1, 0x0, - 0x1, - -0x1, - -0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x0, 0x1, + 0x1, + -0x1, + 0x1, 0x0, 0x1, + 0x0, -0x1, 0x0, + 0x1, 0x0, 0x1, 0x0, 0x0, - 0x1, + 0x0, -0x1, - 0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, ] .span() ), ( array![ + 0x0, + 0x0, + 0x1, + 0x0, 0x1, -0x1, + -0x1, + 0x1, 0x1, -0x1, 0x1, - 0x0, -0x1, 0x1, -0x1, -0x1, + -0x1, 0x1, -0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, - 0x0, - 0x1, - 0x1, 0x1, + -0x1, + 0x0, 0x0, 0x0, - 0x1, - 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, 0x0, - 0x1, + 0x0, + 0x0, -0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, 0x1, 0x0, 0x1, 0x1, - 0x1, + -0x1, + 0x0, 0x0, 0x0, - -0x1, - -0x1, 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x0, + 0x1, -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x1, 0x1, 0x1, 0x0, 0x0, + 0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, - -0x1, - 0x0, 0x0, 0x1, + 0x1, ] .span(), array![ 0x1, - -0x1, - -0x1, 0x1, 0x1, - 0x0, - -0x1, + 0x1, + 0x1, -0x1, 0x0, - -0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, -0x1, -0x1, - 0x0, + 0x1, -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x0, - -0x1, 0x1, 0x1, - -0x1, + 0x0, 0x0, 0x0, -0x1, 0x1, + -0x1, 0x0, - 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, + 0x1, 0x0, -0x1, - 0x0, 0x1, 0x0, + 0x0, + 0x1, -0x1, -0x1, 0x1, - -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x0, 0x1, - -0x1, + 0x1, -0x1, 0x0, 0x0, + 0x1, -0x1, + 0x1, 0x0, 0x0, - -0x1, + 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, + 0x1, -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, + -0x1, ] .span() ), ( array![ - 0x1, + -0x1, + -0x1, + 0x0, 0x0, - 0x1, 0x0, - 0x1, 0x0, 0x0, - 0x1, - 0x1, - -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x1, -0x1, 0x0, + 0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x0, + 0x1, -0x1, 0x1, -0x1, -0x1, 0x0, - 0x1, - 0x0, - 0x0, -0x1, + 0x0, -0x1, 0x0, + -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, -0x1, + 0x0, -0x1, - 0x1, 0x0, - 0x1, 0x0, - 0x1, -0x1, 0x0, + 0x0, 0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, -0x1, 0x0, 0x0, -0x1, - 0x1, - 0x1, - -0x1, - 0x1, - 0x1, -0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + -0x1, + 0x1, 0x0, 0x1, + 0x1, + 0x1, 0x0, + 0x1, 0x0, 0x0, 0x0, + -0x1, 0x1, 0x1, 0x1, - ] - .span(), - array![ + -0x1, + 0x0, 0x0, 0x0, - -0x1, 0x1, -0x1, - -0x1, - 0x0, 0x0, + 0x1, -0x1, - 0x0, 0x1, - 0x0, - 0x0, -0x1, -0x1, + ] + .span(), + array![ + 0x0, 0x1, 0x0, -0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x1, - 0x0, + -0x1, + 0x1, 0x1, 0x0, -0x1, 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x1, - 0x0, -0x1, -0x1, 0x1, -0x1, 0x1, + -0x1, 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x1, - 0x0, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x1, -0x1, 0x0, + -0x1, 0x0, + 0x1, + -0x1, 0x0, - 0x0, - 0x0, -0x1, -0x1, + 0x0, + -0x1, 0x1, + -0x1, 0x0, + -0x1, 0x1, -0x1, -0x1, + -0x1, + 0x0, + 0x1, + 0x0, 0x1, -0x1, -0x1, @@ -23650,7 +23600,7 @@ mod msm_tests { -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x0, 0x0, 0x1, @@ -23658,7 +23608,8 @@ mod msm_tests { -0x1, 0x1, -0x1, - -0x1, + 0x1, + 0x0, -0x1, -0x1, ] @@ -23670,69 +23621,69 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xfd77e82789ca3709cf03f22b, - limb1: 0x1ac1cc03db6b96bebfe46c9, - limb2: 0xfd9a74e47dcda449, + limb0: 0x7bae5a4f1786ce120edcfd31, + limb1: 0xcb0a3b2ff69a7acd3a724b11, + limb2: 0x7fb88df8073a77cd, limb3: 0x0 }, y: u384 { - limb0: 0x466cddb6b489086d206186e6, - limb1: 0xd80d774f20416c10b13698d8, - limb2: 0xbc2417b8e23f577c, + limb0: 0x3b06c6f7695656e1eb6c9f74, + limb1: 0x71640322dbaa6abfb5dd10d6, + limb2: 0x39cf101cd3b600d2, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xdfc573d8806e08a172fe60a2, - limb1: 0xf5a73e4165579b37888014ea, - limb2: 0xd12051d3386031db, + limb0: 0x97ed348cdc06b1960d4967b, + limb1: 0x786adaa8d6a9cde87bccf6eb, + limb2: 0xf17d62e69b926916, limb3: 0x0 }, y: u384 { - limb0: 0x86639b28c67d957074369a2c, - limb1: 0xd64633a59523415ee332a268, - limb2: 0x1f8df8baeb885dbc, + limb0: 0xff04bce2f5e36a3b10ee5047, + limb1: 0x97a783addec7bc9f6fa18e43, + limb2: 0x632f9da4a291cfcf, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xa15ac76113779fa48d166ef2, - limb1: 0x5bea50913d709e1c654ee7b0, - limb2: 0x8f1928503919db6e, + limb0: 0x369b8a3678ca0e1ec58bd009, + limb1: 0x566466b760ec5454817cce48, + limb2: 0xbd79259024c15907, limb3: 0x0 }, y: u384 { - limb0: 0x51a5ca0a8fdda63154563c0, - limb1: 0x159151aa017424daa57f4a9c, - limb2: 0x5a34f93cb9ab3669, + limb0: 0x6c12d77c45fd6c4862936630, + limb1: 0xa68210cecd32a89c38ab0f33, + limb2: 0x805bf44416cb4501, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x3f522cc1b3ac11b7cf1c3bbd, - limb1: 0x349ec5c7cae3c2ed9bd5f6f9, - limb2: 0xf4a74b088c962f98, + limb0: 0x1d92d19a25fe15ceddaa4cac, + limb1: 0x297171a9b5222137fd536212, + limb2: 0xef33d3478f76410b, limb3: 0x0 }, u384 { - limb0: 0xe2176cbca779b7f8e2a3dd65, - limb1: 0x83c364adc9672bf947b70428, - limb2: 0x14d9849b323760d0, + limb0: 0x7c020e85dbf553d53b01b990, + limb1: 0x3f73bc798956ed32163c0e30, + limb2: 0x33516a9be45b06fb, limb3: 0x0 }, u384 { - limb0: 0xed722dfc151e8413044e4e85, - limb1: 0x9418ee096ebe5558e9fd834a, - limb2: 0xf4ba4ae81318ab0e, + limb0: 0xf043e256c41c5676fb1bceca, + limb1: 0xd9717e49d5100e1122570c11, + limb2: 0xb9e99f031bd02105, limb3: 0x0 }, u384 { - limb0: 0xd06312702203cfec3788da93, - limb1: 0x7ffffffffffffffff0c8b85e, + limb0: 0x7f8b32501d23fe5cfcd2fae4, + limb1: 0x7fffffffffffffffa4682695, limb2: 0x7fffffff80000000, limb3: 0x0 } @@ -23740,27 +23691,27 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xc18b47370dddeb942daeafbb, - limb1: 0xb3477e0dcc254f9887cdd38f, - limb2: 0x123e66e688e8f87a, + limb0: 0xc2ddaca12f7d86da45c70a29, + limb1: 0xc7354b04535a1afcf8a0030, + limb2: 0x1dc15dc664831532, limb3: 0x0 }, u384 { - limb0: 0x217b80ebf7dc1f42de6ed469, - limb1: 0x19bffa5993b5d2ca52d4cf8b, - limb2: 0x10e546893f45fc0d, + limb0: 0xd9a80faf46372b7389e16367, + limb1: 0x44f7821e13bc7b09d0450b3c, + limb2: 0xc4ec6237db95391a, limb3: 0x0 }, u384 { - limb0: 0x3e0e5d9648e0676ba02dd3b9, - limb1: 0x2450c9d6c3bae01232c656b7, - limb2: 0x9a9aaa0f37eac0e7, + limb0: 0xd3840faa6add586de2035d2c, + limb1: 0x5d2ecaf0c50d6875cf67021, + limb2: 0x32e3c761d31c7d5c, limb3: 0x0 }, u384 { - limb0: 0x37a5b9e39497548a6990df07, - limb1: 0x1333e95e912e69522c0664a5, - limb2: 0xde5ffc078d57296f, + limb0: 0x612d67f5f2e275219233a03b, + limb1: 0x84ab01971a1ed187c4d5261c, + limb2: 0xee6b02541ed87466, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -23768,78 +23719,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x62f7b20800b84528b2d0087c, - limb1: 0x27266c6d9675437810c31e41, - limb2: 0x42b28cb462e18bd0, + limb0: 0x5a5f2c64580931119918b712, + limb1: 0x503834de5004b1548d1fdf7, + limb2: 0xf73cf7d6190c9355, limb3: 0x0 }, u384 { - limb0: 0x14f410d19274fe5786c7b772, - limb1: 0x13c52a5447802c7b32dea7cf, - limb2: 0xd1329bf2f4f75ca1, + limb0: 0x28fb28aa1e38e3be4c8daa9a, + limb1: 0x16fdb3f59f1182c9d93c2846, + limb2: 0xdb8b949b3860652f, limb3: 0x0 }, u384 { - limb0: 0xbf209d7fc331d59e690848b7, - limb1: 0xc368b89f72e6cd2cfee4d37c, - limb2: 0x91cd16dc2ca8ed44, + limb0: 0xb451a39226f9db4be95dbc2d, + limb1: 0xc7a173969ab134ad5e8a1cba, + limb2: 0x65ee138f69a5ba09, limb3: 0x0 }, u384 { - limb0: 0x5fa3ba3b98465a5d533a2d67, - limb1: 0x4d87d05fcecbc84edb0eee6d, - limb2: 0x7ed9b86b8a06351e, + limb0: 0xc5dcd624190bb4c64626e39c, + limb1: 0x5b94978f0b8a11ab879fe75e, + limb2: 0xbeb4cbb947eb7d8c, limb3: 0x0 }, u384 { - limb0: 0xe3982fe90a076c47938c09e5, - limb1: 0x8728da59c8aebc2867c65c16, - limb2: 0x78be49de8e4afa94, + limb0: 0x53012fab2cf4fce5a4bbfdce, + limb1: 0x4b62139abb2ca76a90d9801d, + limb2: 0x9d527fffbd69145b, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xb81d6c416574759d59a27df1, - limb1: 0x1fd18d93448978e573e98841, - limb2: 0x4fdc3870c3a94a6c, + limb0: 0x6432a197f98057f6c4a186a3, + limb1: 0x1044e83279e640be85166777, + limb2: 0x491a81e0c95e0665, limb3: 0x0 }, u384 { - limb0: 0xf03c88c9b2bd2323aa6585f2, - limb1: 0xd308723ef9bbdfbc6f8426ca, - limb2: 0x293fffedcf2f889, + limb0: 0x642b94120e8a0e82d2320b11, + limb1: 0xa9594d45cb6e3917a5b064b6, + limb2: 0x13c761e78065f6f4, limb3: 0x0 }, u384 { - limb0: 0x5faa16ccdb6678ab32d7dd34, - limb1: 0x205b2b0eb754274af9cd5eba, - limb2: 0xe292b09a974a64bd, + limb0: 0x1a2d5d7bfbcba0fdc2ab928, + limb1: 0x61e76328edd9035ad32f071a, + limb2: 0xa6bc5999aa852b23, limb3: 0x0 }, u384 { - limb0: 0x712d7bceed1b8b1ac1d98eda, - limb1: 0xf19a4de2db3ae9391ce3d94b, - limb2: 0xe4c0421e9fe324dd, + limb0: 0x1ef12cfcbbceec7cf45f362d, + limb1: 0x1a8970ea199b573ae13f7722, + limb2: 0xfadd688d9f88d8d8, limb3: 0x0 }, u384 { - limb0: 0x46de043775e45de1c98e979c, - limb1: 0x940ffb9356c31d9033dea84f, - limb2: 0xd08b8848417b13aa, + limb0: 0x827388c3a95e084cfb18e2ff, + limb1: 0x6ae23aae3bf88d2ee6e29f9a, + limb2: 0x5471911229466fd0, limb3: 0x0 }, u384 { - limb0: 0x3e0e5d9648e0676ba02dd3b6, - limb1: 0x2450c9d6c3bae01232c656b7, - limb2: 0x9a9aaa0f37eac0e7, + limb0: 0xd3840faa6add586de2035d29, + limb1: 0x5d2ecaf0c50d6875cf67021, + limb2: 0x32e3c761d31c7d5c, limb3: 0x0 }, u384 { - limb0: 0x37a5b9e39497548a6990df07, - limb1: 0x1333e95e912e69522c0664a5, - limb2: 0xde5ffc078d57296f, + limb0: 0x612d67f5f2e275219233a03b, + limb1: 0x84ab01971a1ed187c4d5261c, + limb2: 0xee6b02541ed87466, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -23849,26 +23800,26 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x73dcee6b961866118b34c558, - limb1: 0x9a1f55755085075a3b40a9d4, - limb2: 0x994f805186af7dfd, + limb0: 0x51d3fc798f7b09224eea78b7, + limb1: 0x7cb6842e1679232cf07aa777, + limb2: 0x4e904012e1d3ff70, limb3: 0x0 }, u384 { - limb0: 0xeaf7ed33007bc1a93a849f96, - limb1: 0x9b8f0f9325e73e30caa37be, - limb2: 0x41902cd42d54c596, + limb0: 0x3480fe4a796da51d384567ff, + limb1: 0x5436bbc2f384a9c9a64f6668, + limb2: 0x333f12c4d60f29e9, limb3: 0x0 }, u384 { - limb0: 0xa275eaa0b866578db2a859e1, - limb1: 0x8c17ec368e20eeca61cbf979, - limb2: 0x9a96d61443d52fc4, + limb0: 0xce907bd6e3f3865693de696e, + limb1: 0x3418f27e01a46b1aa8ece399, + limb2: 0xeb232da8567b4454, limb3: 0x0 }, u384 { - limb0: 0x2b7efe52f1078103f63424bf, - limb1: 0xffffffffffffffff9814397b, + limb0: 0x51cbe47d1123b6f6d262e942, + limb1: 0xfffffffffffffffeb634d777, limb2: 0xffffffff00000000, limb3: 0x0 } @@ -23876,27 +23827,27 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x918f47e33ae5ef81eb1f40a4, - limb1: 0x951bbe85e4bd1533593471e3, - limb2: 0x6eb1f017ea2f51d4, + limb0: 0x7dd653635c468ed03a147f7c, + limb1: 0xa9646245deefdff061a36f22, + limb2: 0x793e3b8e57113d7d, limb3: 0x0 }, u384 { - limb0: 0x631feb3288df09dc5e3e56dc, - limb1: 0x84f548262d0334fcde7c8d29, - limb2: 0xf686200d3a6f20a8, + limb0: 0xc8bdb8ed8ba3645d290d89ff, + limb1: 0x89806d78ca3c1d1269883ae9, + limb2: 0x89e2845fffb60414, limb3: 0x0 }, u384 { - limb0: 0x768c919952ccf84e5b399383, - limb1: 0xa5ed06c6adf32d2f32d4a151, - limb2: 0x19614383d14b1d77, + limb0: 0x733f9fe1a9d700fe06517f90, + limb1: 0xd01a3b8fddd3fd11cc3aa3a9, + limb2: 0x3cc12cd246b561f, limb3: 0x0 }, u384 { - limb0: 0x55582e329df382f2c5967091, - limb1: 0x1f38c7dd698d87868f849683, - limb2: 0xada1f19d2c49bdb, + limb0: 0xd35ceefc3ca8d81a403c06f1, + limb1: 0xd74a621e3a0f7e6c837a7a42, + limb2: 0x7ca62d658a80831d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -23904,78 +23855,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x9f98c2fbfbd07f29b1d7d5b1, - limb1: 0x80409dfff656599eb6cc9928, - limb2: 0x86d1ac40e408abd4, + limb0: 0x7e40b82a806ce631b39bca8, + limb1: 0x34463c832083914ceb4be396, + limb2: 0xefe8fc819bee1c4d, limb3: 0x0 }, u384 { - limb0: 0x2d258cfe5f4f4d05c22a8fa0, - limb1: 0xdaadb590eb1a527e463962df, - limb2: 0xeaf0903c63ee6606, + limb0: 0x8ffd64ea138a3c6c9334154a, + limb1: 0x6d2cb13af35e95497d2c7cbd, + limb2: 0x505c899163a9ebc9, limb3: 0x0 }, u384 { - limb0: 0xcea2cbc310028584de05f809, - limb1: 0xcc55534f00d8aadbdaecd632, - limb2: 0xf243f80137ce103, + limb0: 0x61ed3ab406c8827069591d39, + limb1: 0xcf0942d07e89f10dfa5d59ba, + limb2: 0x4d7750ef90fd6c61, limb3: 0x0 }, u384 { - limb0: 0x8e4f810683907e706feb0d9f, - limb1: 0xe1b7353819b95773a14f5688, - limb2: 0xaa387db2d1c680f7, + limb0: 0x73714db0a3f58ba95280ae63, + limb1: 0x8fc7d48eb51996ad4ed7d54f, + limb2: 0xef8925ba1df13a0a, limb3: 0x0 }, u384 { - limb0: 0x96eb967d445e0b130127a9f6, - limb1: 0x46c66224b0ebb47884bc896d, - limb2: 0x640c7cb04106568c, + limb0: 0x5438637468c807fc308c1981, + limb1: 0x79bc2ece5f3468a3bb61546b, + limb2: 0x9a668065c9602bbc, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xf8de8735c2fca0b15802991b, - limb1: 0x13b34b6dbe11c52c1965097b, - limb2: 0xaf470ffde730534c, + limb0: 0x6f1e03de55717c9b2a2ac56e, + limb1: 0xe608e13ef3da3bbd89a78c88, + limb2: 0xd2235cf5f07b3b22, limb3: 0x0 }, u384 { - limb0: 0x270097ad09d12d59d64c5c8, - limb1: 0xcdbaa4b272e9ea952b0bc70a, - limb2: 0x53b813f9642c6389, + limb0: 0xd1406dc1f485abe351fc1cc5, + limb1: 0xea5570cc25ef9bc45b9290af, + limb2: 0x39759d3074569caf, limb3: 0x0 }, u384 { - limb0: 0x888820dcda0e69518e4625b1, - limb1: 0x65bb6771852a3e21f76c25e6, - limb2: 0x95a123e78288c9d6, + limb0: 0x62db2bc569439366c5ded592, + limb1: 0x1e887137ac03e3a45b793122, + limb2: 0x9cdf4f759b2abeab, limb3: 0x0 }, u384 { - limb0: 0x53f139437485a8b75e6c89d7, - limb1: 0xe9bd52a618d56df68b9c3fe3, - limb2: 0xef0ac78aa92c15cf, + limb0: 0x5b9bf857cd4427147b44eaa5, + limb1: 0xa7f6e7b71abc920870658282, + limb2: 0x37d5d7a6a145eb0e, limb3: 0x0 }, u384 { - limb0: 0x2f6b1190ead2bd42354d6575, - limb1: 0xdb36ade366f32525950bd04f, - limb2: 0x30bdf8996c5be0fd, + limb0: 0x1afa9cef1177184c902bd576, + limb1: 0xb78d047392a628894435d2d3, + limb2: 0x6eb632070a6f0ea3, limb3: 0x0 }, u384 { - limb0: 0x768c919952ccf84e5b399380, - limb1: 0xa5ed06c6adf32d2f32d4a151, - limb2: 0x19614383d14b1d77, + limb0: 0x733f9fe1a9d700fe06517f8d, + limb1: 0xd01a3b8fddd3fd11cc3aa3a9, + limb2: 0x3cc12cd246b561f, limb3: 0x0 }, u384 { - limb0: 0x55582e329df382f2c5967091, - limb1: 0x1f38c7dd698d87868f849683, - limb2: 0xada1f19d2c49bdb, + limb0: 0xd35ceefc3ca8d81a403c06f1, + limb1: 0xd74a621e3a0f7e6c837a7a42, + limb2: 0x7ca62d658a80831d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -23985,9 +23936,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x392768d6ca6ef0c603a8425f, - limb1: 0x6a8b053739141f3d3b4e2134, - limb2: 0xba804b22ca581277, + limb0: 0x14a9b660e666a579e04af7e3, + limb1: 0x3e10f29a564f014721fc8d70, + limb2: 0x30a9845c3bc22a3c, limb3: 0x0 }, u384 { @@ -24000,15 +23951,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xead83904a7690204ddbee2b0, - limb1: 0x15b15ef196527eebd56eb0cd, - limb2: 0x4afa66c47c71cbc1, + limb0: 0x95dfea43caae852a458bc4d3, + limb1: 0x23fb8014ac6b98635726f563, + limb2: 0xd8840e740ba46ac2, limb3: 0x0 }, u384 { - limb0: 0x7edfc4c66c1a57b9ffeb306a, - limb1: 0xae6e712d5d37c6ac12310366, - limb2: 0x9fc685da8e85f2b7, + limb0: 0xbfe5a280b97586c7d99f997a, + limb1: 0x3130be9fc869ddc302b63ace, + limb2: 0x510977873fac3de4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -24016,54 +23967,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x3bfbbe219b9d83411406bbd, - limb1: 0x7af1fec739a4fe4ec70fab6a, - limb2: 0x1b67dec5693e11db, + limb0: 0xe9285e26c835d2e5b8bcde6c, + limb1: 0xf1479a3be58589be923460b5, + limb2: 0x98cd5479c91538f9, limb3: 0x0 }, u384 { - limb0: 0x73f961fe78956a9b8d09f7e5, - limb1: 0xa0f12951d1cb4bbbaad6298c, - limb2: 0x627f41072df5020b, + limb0: 0x90dd4681eaf0fa204b67b8c2, + limb1: 0x1ad36b5693da5b2b5a394566, + limb2: 0x54a18491f05106f3, limb3: 0x0 }, u384 { - limb0: 0x817f15eeccb2b2382fda26c1, - limb1: 0xf53a7e188a010cb12ac60f06, - limb2: 0x6e015e8e167098a3, + limb0: 0xaad9b35ef41029c97e5d7f02, + limb1: 0x2f9aa648e6b0d1a55360923, + limb2: 0x16e556e93d6fc980, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xfcd0b89744b990f9fe3f511b, - limb1: 0xe9e68f4d6d3b359a8b40be09, - limb2: 0x2fd4c6d807d69ccd, + limb0: 0x9ce8e1c4eabc60c3c8a9fb8d, + limb1: 0xbb367995d34c7ae32d74ff46, + limb2: 0xc9a224f1c8a12a4e, limb3: 0x0 }, u384 { - limb0: 0xff93ad2676340d8cf60c6857, - limb1: 0xfa73568f262e57568c2e6a78, - limb2: 0x81127a1ea66ddda4, + limb0: 0x5a9bdf871171ddccf0a0bf42, + limb1: 0xb5847e472e57a86fe5d1f01c, + limb2: 0x2c80384aa229b2b2, limb3: 0x0 }, u384 { - limb0: 0x4fb462a2f77f35102810cf0b, - limb1: 0xa8a069cd5ef132b82e89fc7f, - limb2: 0x7b72a446fea8bbc2, + limb0: 0x8ca2c9740f6da7e69af393dc, + limb1: 0x205981761d5aed735cfa5645, + limb2: 0x67a9cf41eb35da3c, limb3: 0x0 }, u384 { - limb0: 0xead83904a7690204ddbee2ad, - limb1: 0x15b15ef196527eebd56eb0cd, - limb2: 0x4afa66c47c71cbc1, + limb0: 0x95dfea43caae852a458bc4d0, + limb1: 0x23fb8014ac6b98635726f563, + limb2: 0xd8840e740ba46ac2, limb3: 0x0 }, u384 { - limb0: 0x7edfc4c66c1a57b9ffeb306a, - limb1: 0xae6e712d5d37c6ac12310366, - limb2: 0x9fc685da8e85f2b7, + limb0: 0xbfe5a280b97586c7d99f997a, + limb1: 0x3130be9fc869ddc302b63ace, + limb2: 0x510977873fac3de4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -24073,12 +24024,25 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x38566d3729a0f2f66d13a76a, - limb1: 0xa02bd5c0b42280ecf88ef10, - limb2: 0x459b5450e33d514d, + limb0: 0x40d69909bd1f89868fc12a88, + limb1: 0x2038ae0130a7d8f288207d4c, + limb2: 0xb8f856ef6b6a999, limb3: 0x0 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0x74ac0ffcf338121813309f08, + limb1: 0x73c6773f511cf4c5a6cb523, + limb2: 0x48fe9be8742d5109, + limb3: 0x0 + }, + u384 { + limb0: 0xa6cfedf63fd1ca077774a982, + limb1: 0x4e092f58467973ac6af58017, + limb2: 0x5f369ae78948ad85, + limb3: 0x0 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 3 @@ -24086,15 +24050,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xcc4fb77559e0251690cbeccf, - limb1: 0x8bb757b56e2306c2735334a4, - limb2: 0x2e39f425f1a17a10, + limb0: 0x4520dc4c717b43e094587343, + limb1: 0x2b9a314b82b03bb297874842, + limb2: 0x91a47a208209ccf8, limb3: 0x0 }, y: u384 { - limb0: 0x99075837b67f60fee792d3de, - limb1: 0x39ceaa7788c8e464a9ac430d, - limb2: 0x61596942bbe079ca, + limb0: 0x13dd0713b7be54ada46178c0, + limb1: 0xee32bae06459ee148ad99bde, + limb2: 0xf6895c143766ae93, limb3: 0x0 } } @@ -24107,57 +24071,57 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xfd71049aa3fff741b3fcff59, - limb1: 0x1cbe9ba2185fdc2fb9790676, - limb2: 0x2f301b37b5d511c1, + limb0: 0x801b6b3d30ef5ea8d97b0d71, + limb1: 0x73986c1628b3b411a009f9f9, + limb2: 0xa1d33510fd9cc2b7, limb3: 0x0 }, y: u384 { - limb0: 0xf447b4adc46ca960f6f30595, - limb1: 0xf3ffcca661a1a55005462b74, - limb2: 0x425a848f20097108, + limb0: 0xf61828261a164cfcb5213d3f, + limb1: 0x2b8fec345d86aed517373983, + limb2: 0xf35586b8c8d85ecd, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xc368eeb1d2dba06b119b1e35, - limb1: 0xf74348c555e02015fb19f27b, - limb2: 0x2f249d61bf14d709, + limb0: 0xc49d2cc986d3b941e291b8ab, + limb1: 0x3ba069556d1f51c4a6e38c68, + limb2: 0x601654cbc5f77ee1, limb3: 0x0 }, y: u384 { - limb0: 0x3b27b48801eb77ee960f740d, - limb1: 0x2bdd0335b5b4b6b3bd1cfc08, - limb2: 0x6ff651c85c804df5, + limb0: 0xf2375e7dba0702d5627c7bb0, + limb1: 0x1934b57ae4f9a894a645ff1f, + limb2: 0xa1a6fb9d1559d226, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x8135fcb31517d013f609587c, - limb1: 0x11c064fa81d80d20f3150a73, - limb2: 0x6453c8311c4baf6, + limb0: 0x37af8c6c03b88a2d9aacc1ec, + limb1: 0x8878d1bd5cd0159d32a54eef, + limb2: 0xbebd83abcc1f540f, limb3: 0x0 }, y: u384 { - limb0: 0xd68dfa12327128dab081fe30, - limb1: 0xc2503cdbc390f2ff63574cda, - limb2: 0xbda9f0bcefbde371, + limb0: 0x70db58a6c30c945bc0810653, + limb1: 0x50fdce8f62dd8dc6b3a6564d, + limb2: 0x8c84193bbbefb652, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xe5772c657205ef5cb2927267, - limb1: 0x3809c4084cb26dc69ac5457c, - limb2: 0xbaa84a113ca08386, + limb0: 0xcfbb5c67d81c8571940664fa, + limb1: 0xac72fc9900b9f98e0dca9923, + limb2: 0xa1c4fce9ee18ec45, limb3: 0x0 }, y: u384 { - limb0: 0x228d004b3ea86305378ad6dc, - limb1: 0x2ab411361bd26e545c043a7c, - limb2: 0xdf1ef4c6631d211c, + limb0: 0xb8c48f7c40b6e10e90a5580f, + limb1: 0x96e1a71ebd3a5de9fb5d212, + limb2: 0xa021c2354f3accd9, limb3: 0x0 } }, @@ -24165,16 +24129,16 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xb3e4bd3a94fe31a0ae2e45a4ae4404d7, high: 0xfeb46b244a2edd41eddb0263c6a2894d + low: 0x51304d66b5d5211193aae873b35ff362, high: 0x6b986ee9cc4a7843227d39587e4669e9 }, u256 { - low: 0xc33993f235045f77c317c3d4afa4f554, high: 0x62d59938571c9d788429aeae877e5ea1 + low: 0xdfba2911388712f7926d524d1cef16aa, high: 0xab3dc78415dd8a9395b025df2f847a1a }, u256 { - low: 0x402988fdf8cc3f3bd59b148ffa7bff5f, high: 0xfb52451d90e7e1a11db1dfdc357f0a64 + low: 0x205aac3d6d23ea1a8b463f6dba696a88, high: 0x3f355d694a84758a9c029a4effcc18ec }, u256 { - low: 0xf16f1487f7f21e5cce0755e354565b12, high: 0xac825818960da7883e1e165decadbb86 + low: 0x2f0c3d9160f86784822284ad124893b9, high: 0x3c6bec370537f59ba725c491023ccdd2 }, ] .span(); @@ -24182,29 +24146,27 @@ mod msm_tests { array![ ( array![ + 0x0, 0x1, -0x1, - -0x1, - 0x1, - 0x1, 0x1, - 0x1, - -0x1, - -0x1, -0x1, 0x0, -0x1, 0x1, + -0x1, + -0x1, 0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x0, 0x1, 0x0, -0x1, + 0x1, -0x1, - -0x1, - -0x1, - 0x0, 0x0, -0x1, -0x1, @@ -24212,28 +24174,18 @@ mod msm_tests { 0x1, 0x0, -0x1, - 0x0, - -0x1, 0x1, - -0x1, + 0x1, 0x1, 0x0, - 0x0, - -0x1, 0x1, - -0x1, 0x0, 0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x0, 0x0, - 0x1, - 0x1, 0x0, 0x0, 0x0, @@ -24241,628 +24193,634 @@ mod msm_tests { 0x1, 0x0, 0x0, + 0x1, + -0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, 0x0, + 0x1, 0x0, + -0x1, 0x0, + 0x1, 0x0, -0x1, - -0x1, - 0x1, 0x0, + 0x1, + 0x1, + 0x1, 0x0, - -0x1, 0x0, 0x0, -0x1, - 0x1, 0x0, - 0x1, + 0x0, -0x1, -0x1, - ] - .span(), - array![ -0x1, 0x1, 0x0, + -0x1, 0x1, 0x1, 0x1, 0x1, - 0x0, - 0x1, - 0x0, - 0x1, - 0x1, - 0x0, - 0x0, + ] + .span(), + array![ 0x0, -0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, 0x0, - 0x0, 0x1, - -0x1, 0x0, - 0x1, - -0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, - -0x1, - -0x1, 0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, 0x1, -0x1, -0x1, + -0x1, 0x0, 0x0, + 0x1, + -0x1, -0x1, -0x1, 0x0, + -0x1, 0x0, - 0x1, - 0x0, + -0x1, 0x0, 0x0, 0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x0, -0x1, -0x1, -0x1, + 0x1, -0x1, + 0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, - 0x0, + 0x1, 0x1, -0x1, 0x1, -0x1, 0x0, + 0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, + 0x0, -0x1, - 0x1, - 0x1, + 0x0, + -0x1, + 0x0, -0x1, - 0x1, 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x0, + 0x1, ] .span() ), ( array![ - 0x0, - 0x1, -0x1, 0x0, -0x1, - 0x0, - 0x1, 0x1, 0x1, 0x0, - 0x0, - -0x1, - 0x1, -0x1, -0x1, - 0x1, - -0x1, - 0x1, 0x0, 0x0, + -0x1, + 0x0, 0x0, 0x1, -0x1, -0x1, - -0x1, 0x0, 0x1, - 0x0, 0x1, - -0x1, + 0x0, + 0x0, -0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, 0x1, - 0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, -0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x1, -0x1, + -0x1, 0x1, 0x0, + -0x1, + 0x1, 0x1, - 0x0, -0x1, + 0x1, -0x1, 0x0, - 0x1, -0x1, 0x0, - 0x1, - 0x1, + -0x1, -0x1, 0x0, 0x0, -0x1, + -0x1, 0x0, + -0x1, 0x1, 0x1, -0x1, - -0x1, 0x0, 0x0, 0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, - 0x1, - 0x1, 0x1, + 0x0, + 0x0, 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, ] .span(), array![ - -0x1, - -0x1, - -0x1, - 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, - -0x1, 0x1, - -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, - -0x1, 0x0, -0x1, 0x1, + 0x0, + -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x0, - -0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, + -0x1, 0x1, + 0x0, + -0x1, 0x1, + 0x0, 0x1, + 0x0, -0x1, -0x1, 0x1, - -0x1, + 0x1, 0x1, 0x0, 0x0, -0x1, 0x1, - 0x1, 0x0, 0x1, + -0x1, 0x1, -0x1, + -0x1, + -0x1, + 0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, 0x0, 0x1, 0x0, 0x1, + 0x1, + 0x1, -0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x0, -0x1, - 0x0, 0x1, + -0x1, + -0x1, ] .span() ), ( array![ - 0x0, -0x1, 0x0, -0x1, - 0x1, - -0x1, -0x1, - 0x0, - 0x1, 0x1, 0x0, - 0x0, -0x1, + 0x1, + 0x1, + 0x1, -0x1, - 0x0, 0x1, 0x0, - -0x1, 0x1, - -0x1, + 0x1, 0x0, 0x0, - 0x1, -0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, -0x1, -0x1, 0x0, 0x1, + -0x1, 0x0, - 0x1, 0x0, -0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x1, -0x1, 0x1, + 0x1, 0x0, + 0x1, + 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, + 0x0, + 0x1, 0x1, 0x0, -0x1, - -0x1, 0x1, - -0x1, 0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, 0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x1, + 0x0, -0x1, 0x1, + 0x0, 0x1, + 0x0, + -0x1, ] .span(), array![ + 0x0, 0x1, - -0x1, 0x1, - -0x1, + 0x0, 0x1, -0x1, + -0x1, 0x1, 0x0, 0x1, + 0x1, 0x0, - -0x1, - 0x0, - 0x0, - 0x0, + 0x1, -0x1, 0x1, 0x1, 0x1, 0x0, 0x1, - 0x0, -0x1, - 0x0, -0x1, - 0x0, + -0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x0, + 0x1, 0x1, 0x1, 0x0, -0x1, 0x1, - 0x0, 0x1, - 0x0, - -0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, 0x1, - 0x1, -0x1, -0x1, 0x0, - -0x1, - 0x0, 0x1, - -0x1, 0x0, 0x0, - 0x1, -0x1, -0x1, + 0x1, + -0x1, -0x1, 0x0, -0x1, 0x1, 0x0, 0x1, - 0x1, 0x0, 0x0, + 0x0, + 0x1, -0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x1, + 0x0, -0x1, - -0x1, - -0x1, + 0x1, + 0x1, ] .span() ), ( array![ - -0x1, - 0x1, 0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, - 0x0, -0x1, - 0x1, - 0x1, + -0x1, 0x1, -0x1, + 0x0, 0x1, 0x1, 0x0, 0x0, - 0x0, - 0x0, - -0x1, 0x1, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x1, - 0x1, + 0x0, -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x0, 0x0, 0x1, 0x0, - -0x1, 0x0, + -0x1, 0x1, -0x1, - 0x0, + -0x1, + -0x1, 0x1, 0x0, + 0x1, 0x0, -0x1, - -0x1, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, 0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, + 0x0, + -0x1, 0x1, -0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, + -0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, - 0x1, 0x0, - 0x1, - 0x1, -0x1, 0x0, -0x1, + -0x1, + 0x0, 0x1, -0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, ] .span(), array![ -0x1, - 0x0, 0x1, -0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, 0x1, -0x1, 0x1, 0x1, - -0x1, - 0x1, 0x1, + 0x0, -0x1, 0x0, 0x1, 0x1, - 0x1, + -0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, - -0x1, 0x0, 0x0, 0x0, + -0x1, + -0x1, + -0x1, 0x1, + 0x0, + -0x1, 0x1, + 0x0, + -0x1, -0x1, -0x1, 0x0, 0x0, - -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, + 0x1, + 0x1, -0x1, - 0x0, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, 0x1, 0x0, + 0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, 0x1, - 0x0, 0x1, 0x1, 0x0, - 0x0, - 0x1, 0x1, 0x0, 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x0, 0x0, - 0x1, 0x0, + -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, + 0x1, ] .span() ), @@ -24872,109 +24830,109 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x975e8a1aadf3cd0fa8a5e104, - limb1: 0x518eb593061e03bbc1fafc66, - limb2: 0x51e7df2d2c3d994e, + limb0: 0x97ccc2676093f00683316e40, + limb1: 0xa5d2f559bdec643505afbefe, + limb2: 0xc26306a50df203ce, limb3: 0x0 }, y: u384 { - limb0: 0xc6503d7f5780f2422f7d758e, - limb1: 0x6ea0cdc461724006a474db59, - limb2: 0x6494d020449fbfc5, + limb0: 0x56bad0635f0460375e83ab27, + limb1: 0x87578984be5e1ee23b5899ee, + limb2: 0x2f0362f66b508a66, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x109b62ceac176ff20ec87400, - limb1: 0x88ce7c68e4f1e7e23966d12c, - limb2: 0xa9b1323b1793f3b3, + limb0: 0xe2e9e0568ad7649584e16f76, + limb1: 0x5e7ea74db4b0ea9d978a252a, + limb2: 0xdcf6f868162b564, limb3: 0x0 }, y: u384 { - limb0: 0x5348fff22c4e4ecc886f3f75, - limb1: 0x289f089843581bfbbc7352, - limb2: 0xa80ef350c52228de, + limb0: 0xd4c9c284243bcaf55dcfcbc8, + limb1: 0xf1f297c546d2009a43702168, + limb2: 0xc39fb45a2eea558, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x33d108873a359fefca7c0c52, - limb1: 0x2b74a104c1cfa6d0b702b83f, - limb2: 0x4e8932989ab585b3, + limb0: 0xd1448f29a439a8dfe36ccff7, + limb1: 0xd586d9df32d0c56a82e66b2c, + limb2: 0x767580253f079334, limb3: 0x0 }, y: u384 { - limb0: 0x77a2ee7b2f28bb710b418916, - limb1: 0xc9801f76c2e14c2a2a9eff8e, - limb2: 0xa13bda2ed6f2615a, + limb0: 0xf078a043917087f57ce0f7b0, + limb1: 0x4b35367f9ae2ec979068d0a9, + limb2: 0x555ccf6f80cf6ff3, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x75990ec89f130f9a65498dbf, - limb1: 0xb49d292a6d828e658b4a86fe, - limb2: 0xef88c5bae0056213, + limb0: 0x571e2e10cda56d2b8beb4097, + limb1: 0xd1dc42e0b39318aa3241bd14, + limb2: 0xc1e0bdbc646d852, limb3: 0x0 }, u384 { - limb0: 0x61a1dbed904e681172538b93, - limb1: 0x297e5cc18668f3e60eda93e6, - limb2: 0x3d86cf8d14d17135, + limb0: 0xab35cf0000a7a10843dbf229, + limb1: 0xcd2c3ab070b6673bbaef73a3, + limb2: 0x85baf3c5befda19b, limb3: 0x0 }, u384 { - limb0: 0x206ed5012464e2c563c59823, - limb1: 0xf1c182792333f1a73d75aa31, - limb2: 0xd218104d6ca4b155, + limb0: 0xc5437a834aeb94107f721bac, + limb1: 0xb4f5d72ed6e85e0f799019be, + limb2: 0xf2c57629ffe0e569, limb3: 0x0 }, u384 { - limb0: 0x8a40db8f2b98f402eeda74f2, - limb1: 0xbf23f1f9a4f9786420db66cc, - limb2: 0x79dc7659f0a4f5ed, + limb0: 0xef70b7ab82025b36bd117788, + limb1: 0xa273a0071b270715601c16b1, + limb2: 0x85cf1cfc14159eac, limb3: 0x0 }, u384 { - limb0: 0x2e380417d194b63f9c48826d, - limb1: 0x7ffffffffffffffeac9eade0, - limb2: 0x7fffffff80000000, + limb0: 0xaac54127dd7e8b048ca4e1a6, + limb1: 0xffffffffffffffff98c0fac6, + limb2: 0xffffffff00000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xbc162e15f816642f546db09a, - limb1: 0x559732b62e4db67f6ff628f6, - limb2: 0x293fb9f7995a1b22, + limb0: 0xb41f3f5ad3e12ac4d6125cc3, + limb1: 0xe646e8456bb9c020ab0ba268, + limb2: 0x9e24d1c7877d41c3, limb3: 0x0 }, u384 { - limb0: 0xc55f98f3edcdabf2ad629d98, - limb1: 0xa7c32c952256d5dc0d3a59df, - limb2: 0x927c1e7fc2371075, + limb0: 0xbfb55f43d59e3a88fe401ad9, + limb1: 0xe925e5d99c0664da9b1fb5f, + limb2: 0x9bbaba730aea3b24, limb3: 0x0 }, u384 { - limb0: 0xa6641af5dc0ca9f8ba481222, - limb1: 0xaff2956cc9e69fef6db646b9, - limb2: 0xe82b81116ab5de56, + limb0: 0xa653b58b31291fbec86e2de4, + limb1: 0x6e4282a70c18c40daa231029, + limb2: 0x1e194ba3b666f806, limb3: 0x0 }, u384 { - limb0: 0x71698c287adc38d430353de9, - limb1: 0x86e1e7ac6626c2cac7b98856, - limb2: 0x2aa6a588c59d74b3, + limb0: 0x12c6b82b97c54b4eaf35bde, + limb1: 0x31dedb349f111556b6c76906, + limb2: 0x559348b5c3226a77, limb3: 0x0 }, u384 { - limb0: 0x411a59805412dbd2e9263689, - limb1: 0x50a53d02bd178516fb97bab8, - limb2: 0x8ed5e1a310733f6c, + limb0: 0x1c0fbcbe0bd3e86f920ea4ba, + limb1: 0x760866e44eb686c972f2d290, + limb2: 0xdb30eee474417a47, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -24982,90 +24940,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xa65c2bf63e173285c28c9f6a, - limb1: 0xe773f80949ab20f949449e6a, - limb2: 0xc217f46fe4893168, + limb0: 0xe66ccb450ab50fff4020f0ec, + limb1: 0x1ec5e310c47a62f312e4af69, + limb2: 0x816504817e98a828, limb3: 0x0 }, u384 { - limb0: 0xc6af4bc144bac4886e8a3318, - limb1: 0xc1778467bb9eb996db1bbadf, - limb2: 0x531bc35239b53b73, + limb0: 0x7e984d0354381dc95537ea2, + limb1: 0x4325087732475fedae655f13, + limb2: 0x52e25462efec159e, limb3: 0x0 }, u384 { - limb0: 0x3ab7bf3ec7a8239a79c0b2a1, - limb1: 0xc5591f1980a907645491da47, - limb2: 0x784b67ce0feec359, + limb0: 0xe9c0647d436bd2c36863835c, + limb1: 0x11722bed389ff217024d4489, + limb2: 0xb21181f187c79fdb, limb3: 0x0 }, u384 { - limb0: 0x9e776bd3168d5aa8c49c8c55, - limb1: 0x8241fb45d3f942de3dd4c6f, - limb2: 0x67c4f387f9667ee3, + limb0: 0xff555e92289c6f27d189e024, + limb1: 0x2b3eeb692f9640174a2ae04a, + limb2: 0x620d98139d6466ea, limb3: 0x0 }, u384 { - limb0: 0x8d0c35ec3dc35622b440cb15, - limb1: 0x7bd966996440e79af26ff8d1, - limb2: 0xc963f29ac67275a0, + limb0: 0x1632f7b04009acae832755cb, + limb1: 0xa68ceedfaa0ad6b01ea30136, + limb2: 0x52c15ff95cb673e2, limb3: 0x0 }, u384 { - limb0: 0xf2bc398ffbf4aa7e9c385b16, - limb1: 0x518421938cda2ba1da77f9c1, - limb2: 0x85b6375285858ede, + limb0: 0xe68049b7b69a93e9fc04f038, + limb1: 0x1f7837b6dfff08ff4baa33d, + limb2: 0x971673827f5e2e54, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x3d3d0766a341e24644ce698a, - limb1: 0x844781cbe5b8aec836db89c7, - limb2: 0x7f7e24206dc5e86c, + limb0: 0x5044c1db1da6c8fc4dc9657, + limb1: 0xc6007ccf7219441d2632f2c4, + limb2: 0xffd546b59223244d, limb3: 0x0 }, u384 { - limb0: 0x4d4823435c42b1cccca6078e, - limb1: 0x1dc0fdf70166d74e3c4a096e, - limb2: 0xdcbcea378858c302, + limb0: 0x7f9b4d013344ccabb5101e77, + limb1: 0xd7235408dbee9d952c4ed8e9, + limb2: 0x185d1ebcc4994b30, limb3: 0x0 }, u384 { - limb0: 0xb26ed1051861d1a5ad3297c8, - limb1: 0x727cad8d764c7e8ee8e5c280, - limb2: 0x858f4d42648ef02e, + limb0: 0x64be78ebbc25b044844a743f, + limb1: 0x4d140058c3cda5680c94ccd6, + limb2: 0x64ba79bf26c01e48, limb3: 0x0 }, u384 { - limb0: 0xc2365e50d2f297cc89005968, - limb1: 0xc79a26208de7361dbad1f5cc, - limb2: 0x638b2087ef0f5c8f, + limb0: 0x751cea77f11edf6fb6b4e663, + limb1: 0x12443c41c528b582fa91a0dd, + limb2: 0x892ecea819177955, limb3: 0x0 }, u384 { - limb0: 0x53c18b60bcc08669cfb4df1b, - limb1: 0x1e234a7f861098c0d46c0e1b, - limb2: 0x166951926e24f4e5, + limb0: 0x5782f76297c7ad8130d204a0, + limb1: 0x46bb8a6ca883a629e779f9da, + limb2: 0x658cd808de39298, limb3: 0x0 }, u384 { - limb0: 0xaf68bf6b1ba252be26a7ced1, - limb1: 0x71ee9bba09389766e00c1d42, - limb2: 0x967011ffe396b3fa, + limb0: 0x1e783047497ba2ae3a149ffe, + limb1: 0xc0150b4f968db66db6679f2d, + limb2: 0xe74cb4cc03dd1d1a, limb3: 0x0 }, u384 { - limb0: 0x71698c287adc38d430353de6, - limb1: 0x86e1e7ac6626c2cac7b98856, - limb2: 0x2aa6a588c59d74b3, + limb0: 0x12c6b82b97c54b4eaf35bdb, + limb1: 0x31dedb349f111556b6c76906, + limb2: 0x559348b5c3226a77, limb3: 0x0 }, u384 { - limb0: 0x411a59805412dbd2e9263689, - limb1: 0x50a53d02bd178516fb97bab8, - limb2: 0x8ed5e1a310733f6c, + limb0: 0x1c0fbcbe0bd3e86f920ea4ba, + limb1: 0x760866e44eb686c972f2d290, + limb2: 0xdb30eee474417a47, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -25075,66 +25033,63 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x4a89337cf5dfeebea6471483, - limb1: 0x6d83fa55b300165cea7d5b8e, - limb2: 0xdbcaf1e9d6ecf062, + limb0: 0x16a8f6150d5e736e52ff592c, + limb1: 0xf91abab0240fe28262533b49, + limb2: 0xe03ccb97323c977, limb3: 0x0 }, u384 { - limb0: 0x5da5db38ea99fad9cf6e2c9e, - limb1: 0x7dec1438ec2d9d974fa09160, - limb2: 0xb4a4be9e82e04af8, + limb0: 0xc585aa0ec49d1bb0f5ef394c, + limb1: 0x35baa297be5ca3e5e907059a, + limb2: 0xf3c73fbc37411c7a, limb3: 0x0 }, u384 { - limb0: 0x39193eb7ac092d2604a49445, - limb1: 0xd44f1f8fd9cf0a9b05c04308, - limb2: 0xdf5ac675857fba9a, + limb0: 0x8c19ddfbce8ef6240da9d09f, + limb1: 0x4d5769bfb57c01f0d85b7900, + limb2: 0x655a6b179d8c1b2e, limb3: 0x0 }, u384 { - limb0: 0x37d196922600393c40403e5f, - limb1: 0xf384df2cebb139c16eaef53c, - limb2: 0x1273536266d7ed8f, + limb0: 0x61d8f47ff01ee6fb9d27667d, + limb1: 0x7a95025f141cf928e152a5c2, + limb2: 0x76140585101c6ce2, limb3: 0x0 }, u384 { - limb0: 0xb6c6e3ebb7968cb20f790aaa, - limb1: 0x7ffffffffffffffec07ac703, - limb2: 0x7fffffff80000000, - limb3: 0x0 + limb0: 0x99a7d80a7b670bc256ee50c7, limb1: 0x121381ba, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xaa67b46a0fb9ecd0965221a9, - limb1: 0x595bb5e443082f995af81d66, - limb2: 0xef48682a2d325872, + limb0: 0x90d3e1d0ea67d3229b18093a, + limb1: 0xf952bf3bc7ecbe9ebbac97f7, + limb2: 0x9ebbefca1ecdcd3a, limb3: 0x0 }, u384 { - limb0: 0x983eff4c54d3b46bc0d7e368, - limb1: 0x15b121bc50e871b073dac621, - limb2: 0x8395928f09d5dcb1, + limb0: 0x1810c07e43ac33dd4a9ce09c, + limb1: 0x381d7976e099af3362cfa0c3, + limb2: 0xde6dbae9c94900e, limb3: 0x0 }, u384 { - limb0: 0x2b4c6eff003fb96ad055709b, - limb1: 0x4d9dbca6457fa9b6a8c87792, - limb2: 0xda77bfd198df52f8, + limb0: 0x4321fd7b985ec93a3cbfb23a, + limb1: 0x9a97a28a6dbb9008428a0ca1, + limb2: 0x9d034f06430a116b, limb3: 0x0 }, u384 { - limb0: 0xcca6a390915649dc714c0b2c, - limb1: 0x76bd99938276987add363229, - limb2: 0x35ed201122e87a48, + limb0: 0xcac7cfde3b4382e67386e012, + limb1: 0x68aed59504f27a829c08e9fd, + limb2: 0xb43ee87e890ee716, limb3: 0x0 }, u384 { - limb0: 0xc7dd80cc55ef38f08303a38d, - limb1: 0x1965762cde43a0f0842be5f2, - limb2: 0x370c8e95251ce507, + limb0: 0xd0f29ecee19073e0905ea385, + limb1: 0xbd5cb4f057f20060e1186c62, + limb2: 0x8fc4860400d0c8b0, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -25142,90 +25097,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x91b1a115c3f9053f164f7c8b, - limb1: 0x51cc0811d7836b7859180ee9, - limb2: 0x57df5a471a530993, + limb0: 0x1f16998314dcbf08bed0326, + limb1: 0x2cc32b68523fe8bacb0f66be, + limb2: 0x732aba85dd4b4ea7, limb3: 0x0 }, u384 { - limb0: 0xbd7f303c2ddad154e672a501, - limb1: 0xe3cc407e88e095efb3d92674, - limb2: 0x4eefce6967efb5d1, + limb0: 0x843e0ef8000582fa063c13dc, + limb1: 0xf41ce0b199e8d43048be6db9, + limb2: 0xa249d14f03d093d3, limb3: 0x0 }, u384 { - limb0: 0xf759a2372d363167f0c16a14, - limb1: 0x84d39be591cc608033220c60, - limb2: 0x2c586e05ad9dffb5, + limb0: 0x57d03b8435b1fc21ae7ac4e9, + limb1: 0xd19e52aee28bd4538f0165d9, + limb2: 0x23f5aa31ab714c5e, limb3: 0x0 }, u384 { - limb0: 0x19c3444eb3153beb675f459e, - limb1: 0x5f2c83f5c0189c0300a2a166, - limb2: 0x7ba0f03077f76676, + limb0: 0xe4c04e9da661ef0384036910, + limb1: 0xd57c3eaae1672ec05eaf28c, + limb2: 0xcf120ecc0e63a066, limb3: 0x0 }, u384 { - limb0: 0xe554ce27e41012e17919167c, - limb1: 0xdeb2d9bc546880410edb24fa, - limb2: 0x4d68d02e800d3f9e, + limb0: 0x361b6401935ef3b924d1beff, + limb1: 0xc3302c75d3277e5893d598e6, + limb2: 0xc5afc774965691a6, limb3: 0x0 }, u384 { - limb0: 0x237f667164aa0c026ace295a, - limb1: 0x3b5cb6ba32c3b89cf4d429eb, - limb2: 0xeafe3f4370c5c397, + limb0: 0x444378e03393435f7fc8bf1e, + limb1: 0xf9704bfeaf202c8b87a9a711, + limb2: 0xd3652faaf5a2e0c8, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xdfea449d96195bcfb2ada364, - limb1: 0x3a9d6121ba57f9a0b51ec666, - limb2: 0x6c8af6d9bfc46f3b, + limb0: 0x9faab5c71330cffdbbf09898, + limb1: 0x22713b45bc1e58ddcd02b4aa, + limb2: 0xcf6e09797bcdb36e, limb3: 0x0 }, u384 { - limb0: 0x4d1e3efb30ff0eb8c97e5a95, - limb1: 0x33cefb7d45494b17a7676a0f, - limb2: 0x51626b4116f1bd05, + limb0: 0x542b6bc6a3a6012262f3d11d, + limb1: 0x85d7eb9bc9890e969398eb76, + limb2: 0x11e714b1faf93390, limb3: 0x0 }, u384 { - limb0: 0x41413ec8facf860cacd7b385, - limb1: 0x8ad5efca5729fa9ca964c21b, - limb2: 0x4d83021e341be472, + limb0: 0x1f91afacdb27917050255b9a, + limb1: 0x27acf1f63fda151e6b980b5e, + limb2: 0x6aba1be80ea2222a, limb3: 0x0 }, u384 { - limb0: 0x323e465039ac08b7dc6b9f79, - limb1: 0xd1c3e4c9c5429b99814a5714, - limb2: 0x64526b98d547c8e3, + limb0: 0x19efe0639b0b56f8ffd647c1, + limb1: 0x7192d6225f24e3d7e3865944, + limb2: 0x6bc4dcbb1a50a931, limb3: 0x0 }, u384 { - limb0: 0x685500e03fae7ed369869a90, - limb1: 0xd025b814093a6a1364926c71, - limb2: 0xd433abafda5eb2d9, + limb0: 0xaf6fc3c4d87dff23448a5185, + limb1: 0x516502652a8ece484916165d, + limb2: 0x810d4d8b24b96b09, limb3: 0x0 }, u384 { - limb0: 0xa0079d903a404ad76f1ce63f, - limb1: 0xb5591775214d4da18161cc6a, - limb2: 0x901849ead3c337ca, + limb0: 0x9c9dd2052f7ba9d6b37627f5, + limb1: 0x166d410edc7e15a2045dce2a, + limb2: 0x487bf2d1ead24b42, limb3: 0x0 }, u384 { - limb0: 0xcca6a390915649dc714c0b29, - limb1: 0x76bd99938276987add363229, - limb2: 0x35ed201122e87a48, + limb0: 0xcac7cfde3b4382e67386e00f, + limb1: 0x68aed59504f27a829c08e9fd, + limb2: 0xb43ee87e890ee716, limb3: 0x0 }, u384 { - limb0: 0xc7dd80cc55ef38f08303a38d, - limb1: 0x1965762cde43a0f0842be5f2, - limb2: 0x370c8e95251ce507, + limb0: 0xd0f29ecee19073e0905ea385, + limb1: 0xbd5cb4f057f20060e1186c62, + limb2: 0x8fc4860400d0c8b0, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -25235,9 +25190,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x95e55ac9626099e58d5489bf, - limb1: 0xd734ae6b6a9f977e43776f24, - limb2: 0xc103c1ee0f82737e, + limb0: 0x94b780a08a4475ed5461bb3, + limb1: 0x6b792eff87b69f6c4215a763, + limb2: 0xa05853c8891a2f0, limb3: 0x0 }, u384 { @@ -25250,15 +25205,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x1bce7c678a0a2d6d33419488, - limb1: 0xf6b44f8f89361d3738d36115, - limb2: 0x6fa3ce4af49be73d, + limb0: 0x694ab6d13521420df2937c29, + limb1: 0x8d23fd0a71d0a93b4f9af83a, + limb2: 0x47e323eafda213f8, limb3: 0x0 }, u384 { - limb0: 0xbb9394aa19b2f01e26bb7fad, - limb1: 0x4bbce292593e714d0f967695, - limb2: 0x7c59b2b4db6869a, + limb0: 0x4bd1907fd0eef28a97b1c092, + limb1: 0xcbfa7ed3187e4ff7e58f6fa9, + limb2: 0x7bbb10533f95b767, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -25266,54 +25221,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x1fcfdb8b2293248ff6b800ed, - limb1: 0x6499ba1056adf3d6361eed23, - limb2: 0x2b20478597bb04dc, + limb0: 0x7041de8be0296f5c2272f6d1, + limb1: 0x58e5cfb1dbe2dce424d2342c, + limb2: 0x7fc638a568aeb702, limb3: 0x0 }, u384 { - limb0: 0x442b0c4367f200d52f69de1a, - limb1: 0xd81d486a430aea7d75f5d4ff, - limb2: 0x435dba51234a6175, + limb0: 0x9ea89166fcbd5099a4feb0db, + limb1: 0x276c2b09e30b573d6446b1c5, + limb2: 0xb05cad9d93b25809, limb3: 0x0 }, u384 { - limb0: 0xd5e0dc8b750c46a0d0e98e63, - limb1: 0x2cbb3840720d012b13b38a3, - limb2: 0xc5649651f8e824f7, + limb0: 0x3f456c64e8e00fb8be8c3790, + limb1: 0x98ba60f36cd33920e4e5997, + limb2: 0x2dbd7cd4c58cdcc9, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x926c058173c6b06f11e6d479, - limb1: 0xa5c7026344c627e0bda226d4, - limb2: 0xf690633f0d40d105, + limb0: 0xbe1cd2ff83ca541e4c3ec8cb, + limb1: 0xaa1e0941eb33fee021669a20, + limb2: 0xcd5e9ff92c8e012f, limb3: 0x0 }, u384 { - limb0: 0x5254dd02694cc296a3bd2bb5, - limb1: 0x8e45b7432c79e106ae4dc250, - limb2: 0x9bc83efd6bd72166, + limb0: 0xf661cc37854fcb361ca7c98, + limb1: 0xf4bbe0fa7a3d77503c4d6470, + limb2: 0x8624ec1c74c1a9bb, limb3: 0x0 }, u384 { - limb0: 0x9998f2f7eeb56be3b39fe144, - limb1: 0xd0b5159e6add32d53659a2ef, - limb2: 0x43756456c1170018, + limb0: 0xe8deff76c901649e60bd1e93, + limb1: 0x4ffc40dc2d1d96d4b46eb7b6, + limb2: 0xe79504dceb796db2, limb3: 0x0 }, u384 { - limb0: 0x1bce7c678a0a2d6d33419485, - limb1: 0xf6b44f8f89361d3738d36115, - limb2: 0x6fa3ce4af49be73d, + limb0: 0x694ab6d13521420df2937c26, + limb1: 0x8d23fd0a71d0a93b4f9af83a, + limb2: 0x47e323eafda213f8, limb3: 0x0 }, u384 { - limb0: 0xbb9394aa19b2f01e26bb7fad, - limb1: 0x4bbce292593e714d0f967695, - limb2: 0x7c59b2b4db6869a, + limb0: 0x4bd1907fd0eef28a97b1c092, + limb1: 0xcbfa7ed3187e4ff7e58f6fa9, + limb2: 0x7bbb10533f95b767, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -25323,16 +25278,34 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xd96ee48291c30aaf5de94dc1, - limb1: 0xc8553376d791aea0fc9275fe, - limb2: 0x3dcc8943e58dea7b, + limb0: 0x22faf492563e45d69ce72e5e, + limb1: 0x256ea4946eb9ae3902a6e0a, + limb2: 0x36b0ab5a3be9800c, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0xdae90436c2e385b31909239a, - limb1: 0x50fd4fee76b7ce09cbce3627, - limb2: 0x4ebb464f5ce1e19b, + limb0: 0xd7d7ec83f5b3dd023cbdbff9, + limb1: 0xc36220493267dc705b5b7620, + limb2: 0x5e36f17e454b2dc7, + limb3: 0x0 + }, + u384 { + limb0: 0xf20d535306ceafb3575f04f, + limb1: 0x1c76431112712d5f6b448494, + limb2: 0x2692a0d0ca1943a1, + limb3: 0x0 + }, + u384 { + limb0: 0xddb11361c65d25744a48d294, + limb1: 0xf993638bbb24363a7db68ac9, + limb2: 0x4dc1a024e5c064bb, + limb3: 0x0 + }, + u384 { + limb0: 0x7949ee7887b30458f35773d8, + limb1: 0x6cc3940b45456a06175a2522, + limb2: 0x6ded24acd829b31a, limb3: 0x0 } ], @@ -25343,15 +25316,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x5f7ce0f673964f76b579cf66, - limb1: 0xb801fe80145129cc3fd862aa, - limb2: 0xb9a78244001a9d8c, + limb0: 0xf3fcecb6691f62f0e6e1972a, + limb1: 0x38724128f17ffbefef432d1b, + limb2: 0x85a38bef27a9fa3b, limb3: 0x0 }, y: u384 { - limb0: 0xc463df20b8ba8e00f16dce5d, - limb1: 0x72b9135e04370ce2424257dd, - limb2: 0x63b6bf3054acabd5, + limb0: 0x88d82beee15ef8005a036108, + limb1: 0xf785a9f344a32eb3589d8a1b, + limb2: 0x869e2006cd189f2c, limb3: 0x0 } } @@ -25364,71 +25337,71 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x10f3e29700f4e3109ce9aa5d, - limb1: 0xb3ac8fe9e5fdb809e4844501, - limb2: 0xfce7222e24778d7c, + limb0: 0xfdea205bb51579f3527e3740, + limb1: 0xd054dff2099d21993994c460, + limb2: 0xeea700a000c0c2b, limb3: 0x0 }, y: u384 { - limb0: 0xd169eeb7aa3b5ae49e2b692b, - limb1: 0xf37cc3d594b88d54b1c3f8f9, - limb2: 0x3d4ab6b5da265b30, + limb0: 0x8e8c0626762076d9e607e61b, + limb1: 0xfbbc337f289b85e26bc262d0, + limb2: 0x5671345b4e859650, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xfc203673dbdf6e7263408b61, - limb1: 0x2de5c05cac81319823e26a14, - limb2: 0xc337671add02691e, + limb0: 0x6bd3cded98ca6b5979c42e49, + limb1: 0x9dd7f2cec3ee3b49f8ce6dac, + limb2: 0xd8c42699dbe0fd1c, limb3: 0x0 }, y: u384 { - limb0: 0xc2c68b1616eda3c3b1676c52, - limb1: 0x3c5af080b867017c209af885, - limb2: 0xb968805675562a4c, + limb0: 0x6643d46614245689b8b3ab60, + limb1: 0x9c98774e382c86f7e8ff3d72, + limb2: 0x5e00fd0c9f3cdff8, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x3d7df6398e38d99a537e083d, - limb1: 0xce8671528d5d02a51b7e7f0, - limb2: 0x2ce1b479f6e2e146, + limb0: 0xd10c3a3b11e6bc0cd52a91cf, + limb1: 0x105cd479163d6a169b8ec648, + limb2: 0xf542e76832bf5b35, limb3: 0x0 }, y: u384 { - limb0: 0xf4b642208c1cc00414c943f8, - limb1: 0xdc02576fafb4af17a9d092a2, - limb2: 0xcd15d1ab5c8848be, + limb0: 0x54aa166155d68789de832bed, + limb1: 0x1648700ec9d6ea63585e722a, + limb2: 0x48b9ee49d2006fdd, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x3b1e29113ba284b77dea03d3, - limb1: 0xf38d0a9547b39496a9cf69d7, - limb2: 0xb715b37e2fde820f, + limb0: 0x764b756f217845966d3e2a56, + limb1: 0x4b4930c37ead9ebb83a127e9, + limb2: 0x64350fa4a72999c9, limb3: 0x0 }, y: u384 { - limb0: 0xd23e4602cbccf92471755744, - limb1: 0x92f0e4c8fcb9e808302d1b3c, - limb2: 0x12a98eb213b51d35, + limb0: 0xb9e6a5c06fb4e7894377b671, + limb1: 0xecca47733bf109d1b438527e, + limb2: 0x987fc8d32259a128, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x550dff263cfe5a4278dd7dd3, - limb1: 0x35c2afef369589b6eee8a7c6, - limb2: 0x346f0fc78943f8f4, + limb0: 0xfdb782a6e36f0bacfd32e343, + limb1: 0xf7c399fa75d32803c6dad527, + limb2: 0x312aa91e86fd04d5, limb3: 0x0 }, y: u384 { - limb0: 0xfbbc88b72e8c82dc67f1e0b9, - limb1: 0x4d1cf7658a4b1469ec86aea1, - limb2: 0x69359c3e35dd9238, + limb0: 0x109ec1d07ba5243e585e6de0, + limb1: 0xfe22508514a28743f90c9ae4, + limb2: 0x4f44a691586b56f0, limb3: 0x0 } }, @@ -25436,19 +25409,19 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x262a5aaedec31ef5762762620379089, high: 0xe8ef99e97afc50cdb8bc6621f2d7fe55 + low: 0xae5913cbba95d175a544d600ccd7e80d, high: 0x29aa729c33eef900581abb4bad190bf1 }, u256 { - low: 0xa9afa87ad181d9bfaa099a46f25a3c68, high: 0x9cb9f9aabf4ddeaa41f2005bc7537df5 + low: 0x5a504bd55593e079275a228a9159b181, high: 0x59fce1e60d0f02bbf66a3eb56000528c }, u256 { - low: 0xefa2ce128c83384811fba56e300a2187, high: 0xd48457dff3254f2d47595b016c835975 + low: 0xfd85582c1ca89048540fa090089c8dbe, high: 0x2f34165d8543521d93e1535a66d04c5d }, u256 { - low: 0x103393102b7bde99878f40ed2c805ac7, high: 0x94665d45284b7bcda3af11d0a8ab29f1 + low: 0x310190ad724379b99624f4951a2c1892, high: 0x8236a8b0a5455b15dc7bd9d28ef11805 }, u256 { - low: 0xa1d3377281011c5bf110397a1c2c7a34, high: 0x627b9de79ae445e08b1dc2f8cbf1f93c + low: 0x115445b02ae8520b99a5bba18ba92c6d, high: 0xa891587001b00a281d0989aa0dcc9306 }, ] .span(); @@ -25456,215 +25429,198 @@ mod msm_tests { array![ ( array![ - 0x0, + 0x1, + -0x1, + 0x1, 0x0, 0x1, + -0x1, + 0x0, 0x0, 0x0, 0x0, - -0x1, - 0x1, 0x0, -0x1, + 0x0, + 0x0, -0x1, - -0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, 0x1, 0x1, + 0x0, 0x1, -0x1, 0x0, 0x0, + 0x0, 0x1, - 0x1, + -0x1, 0x0, 0x0, 0x1, -0x1, - 0x1, - 0x1, + 0x0, -0x1, 0x0, + -0x1, 0x1, - 0x0, -0x1, 0x0, 0x0, 0x1, - 0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x0, 0x1, -0x1, 0x0, 0x1, - 0x1, - 0x0, -0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x0, 0x0, + 0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x1, - 0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, ] .span(), array![ - -0x1, + 0x0, 0x0, 0x1, - -0x1, 0x1, 0x0, - -0x1, - -0x1, - -0x1, - 0x0, - 0x0, + 0x1, 0x0, -0x1, - 0x1, 0x0, 0x0, 0x1, + 0x1, 0x0, - -0x1, - -0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, - -0x1, 0x0, + 0x0, + -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x1, - 0x0, 0x1, + 0x0, 0x1, + -0x1, + 0x0, 0x0, 0x0, 0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x0, 0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, - 0x1, -0x1, 0x1, - 0x1, + -0x1, -0x1, 0x1, 0x0, - 0x0, - -0x1, 0x1, 0x0, 0x1, -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, + -0x1, + 0x0, + 0x0, 0x0, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x0, 0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x1, -0x1, 0x0, + -0x1, 0x1, 0x0, + 0x0, + -0x1, + 0x0, -0x1, + 0x0, -0x1, ] .span() ), ( array![ - -0x1, - -0x1, 0x1, - -0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x1, 0x1, - 0x1, - 0x1, - -0x1, - -0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, -0x1, 0x0, - 0x1, - 0x0, - 0x1, -0x1, 0x1, 0x0, 0x1, 0x1, - 0x1, -0x1, + 0x0, -0x1, - 0x1, + 0x0, -0x1, + 0x0, -0x1, + 0x1, -0x1, 0x0, -0x1, @@ -25672,245 +25628,256 @@ mod msm_tests { 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, 0x1, + 0x0, 0x1, -0x1, - 0x1, 0x0, - 0x1, 0x0, + 0x1, + -0x1, + 0x1, -0x1, -0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, -0x1, 0x1, - 0x0, -0x1, - 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, -0x1, - ] - .span(), - array![ - 0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x0, + 0x1, -0x1, 0x0, 0x1, 0x1, - -0x1, 0x0, - -0x1, 0x1, + 0x1, + 0x0, -0x1, 0x1, 0x1, 0x1, + ] + .span(), + array![ 0x0, -0x1, - 0x1, -0x1, + 0x0, 0x1, 0x0, + 0x0, 0x1, -0x1, -0x1, - -0x1, 0x0, - -0x1, 0x1, - 0x0, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x0, 0x0, 0x0, 0x0, 0x1, - 0x1, 0x0, + 0x1, 0x0, 0x1, 0x1, -0x1, - 0x0, - 0x1, - 0x0, -0x1, 0x0, + -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - -0x1, -0x1, - 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, -0x1, - 0x0, - 0x0, -0x1, + 0x1, 0x0, 0x0, -0x1, - -0x1, 0x1, -0x1, 0x1, 0x0, 0x0, 0x1, - 0x1, -0x1, - 0x1, - ] - .span() - ), - ( - array![ -0x1, - 0x0, + 0x1, -0x1, 0x0, 0x1, + 0x1, 0x0, 0x1, + 0x0, -0x1, - -0x1, + 0x0, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x1, -0x1, -0x1, 0x0, + -0x1, + 0x1, 0x0, -0x1, + 0x1, + 0x1, + 0x1, + ] + .span() + ), + ( + array![ + 0x1, -0x1, 0x1, + 0x1, + 0x0, + -0x1, -0x1, 0x1, -0x1, 0x0, + 0x0, -0x1, 0x1, 0x0, + -0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, + 0x1, + 0x0, -0x1, -0x1, 0x0, + 0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, + -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x0, + 0x0, -0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, + 0x1, 0x0, 0x0, - 0x0, - 0x1, 0x1, 0x0, 0x1, -0x1, 0x0, 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, - -0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, + -0x1, + 0x0, + -0x1, + 0x1, + -0x1, + 0x0, 0x0, + -0x1, 0x0, 0x0, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, 0x1, 0x0, -0x1, -0x1, + -0x1, ] .span(), array![ - 0x0, - 0x0, - 0x1, - -0x1, 0x1, 0x1, 0x1, 0x0, - 0x1, - -0x1, - -0x1, - 0x0, -0x1, -0x1, 0x0, + 0x1, + 0x1, 0x0, - 0x0, + 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x1, + -0x1, + -0x1, 0x1, + 0x0, 0x1, + 0x0, -0x1, 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x1, -0x1, 0x1, 0x1, @@ -25918,20 +25885,19 @@ mod msm_tests { 0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, + 0x0, -0x1, + 0x1, -0x1, 0x0, - -0x1, + 0x0, + 0x0, -0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, -0x1, 0x1, @@ -25939,367 +25905,373 @@ mod msm_tests { 0x0, -0x1, -0x1, + 0x0, + 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, 0x1, 0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, -0x1, - 0x1, - 0x1, -0x1, -0x1, -0x1, 0x0, -0x1, -0x1, - ] - .span() - ), - ( - array![ -0x1, 0x0, + 0x0, 0x1, - -0x1, - 0x1, + 0x0, 0x1, -0x1, + 0x0, -0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, 0x1, -0x1, + ] + .span() + ), + ( + array![ -0x1, 0x0, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, - 0x1, + -0x1, + -0x1, -0x1, 0x1, - 0x1, - 0x1, + 0x0, 0x0, 0x0, -0x1, -0x1, -0x1, 0x1, - 0x1, -0x1, 0x0, 0x0, -0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, + 0x0, -0x1, - -0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, - 0x0, -0x1, -0x1, 0x0, 0x1, - -0x1, + 0x1, + 0x1, 0x0, -0x1, + 0x0, -0x1, 0x1, -0x1, 0x0, + 0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x1, 0x1, 0x0, - -0x1, 0x1, - ] - .span(), - array![ - -0x1, + 0x0, + 0x0, + 0x0, 0x1, + -0x1, 0x0, 0x1, 0x0, + 0x1, -0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, - -0x1, - -0x1, 0x0, + 0x0, + 0x1, -0x1, + ] + .span(), + array![ + 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x1, + 0x0, 0x1, 0x1, 0x0, -0x1, - -0x1, - -0x1, + 0x0, 0x0, 0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, + 0x0, + 0x1, + 0x0, + 0x0, -0x1, 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x0, 0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, -0x1, -0x1, 0x1, -0x1, + -0x1, 0x1, 0x1, - -0x1, 0x0, - 0x0, - -0x1, 0x1, - 0x0, - -0x1, - 0x0, 0x1, + 0x1, + 0x1, + 0x0, -0x1, -0x1, - 0x0, -0x1, 0x0, 0x1, 0x0, + -0x1, 0x0, 0x0, + 0x1, + -0x1, 0x0, -0x1, 0x1, + -0x1, + -0x1, + 0x1, ] .span() ), ( array![ - -0x1, 0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, - -0x1, 0x1, 0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, + -0x1, 0x1, 0x0, 0x0, + 0x0, + 0x0, + -0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, + 0x1, -0x1, -0x1, 0x0, - -0x1, - 0x0, 0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, + 0x1, + 0x0, 0x0, -0x1, -0x1, + 0x1, + 0x0, -0x1, - -0x1, + 0x0, -0x1, 0x1, -0x1, 0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x0, -0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, + 0x1, 0x0, - -0x1, 0x1, + 0x0, -0x1, 0x1, -0x1, + 0x1, 0x0, - 0x0, + 0x1, -0x1, 0x0, - -0x1, 0x0, 0x1, 0x0, 0x1, -0x1, 0x1, - ] - .span(), - array![ + 0x0, 0x1, -0x1, -0x1, 0x1, + 0x0, + 0x1, 0x1, + -0x1, 0x1, + ] + .span(), + array![ 0x0, -0x1, -0x1, 0x0, 0x1, - 0x0, 0x1, - 0x0, - -0x1, -0x1, 0x0, - -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, + 0x0, + -0x1, -0x1, -0x1, + 0x1, + 0x0, 0x0, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x0, 0x0, -0x1, - 0x0, -0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x1, + 0x0, 0x1, -0x1, + 0x1, -0x1, -0x1, -0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x0, 0x0, + 0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x1, 0x0, 0x0, -0x1, -0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x1, + 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x0, 0x1, 0x0, 0x1, 0x1, - 0x1, - 0x0, 0x0, + 0x1, -0x1, - 0x0, 0x1, + -0x1, + -0x1, ] .span() ), @@ -26309,81 +26281,81 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x91142f3b3eeaef88f52d3ad7, - limb1: 0x264007d1810f402a0f70e5f5, - limb2: 0xb87ce477a2c70fe8, + limb0: 0x674c466349cf841fbb0a7204, + limb1: 0xba7edb4de7b8cd9434d2d9fc, + limb2: 0x688e7c8c9a309374, limb3: 0x0 }, y: u384 { - limb0: 0x35ec2f8fd41c4c7eb0aa2fef, - limb1: 0x447b1a9e009774ce0001c350, - limb2: 0xc2ae3d9ac4247286, + limb0: 0x7cf5e8b51bc8439ecdc38e0d, + limb1: 0xb3110d3b8c71f4145670cd21, + limb2: 0xe1ed3f564cab2ddf, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xe8b2236ff1b14fdf32d41b50, - limb1: 0x737775a9f4a7b34f01b89ee9, - limb2: 0x5df4c9921698f4dc, + limb0: 0x7c83ae87700b6046a480ceac, + limb1: 0xe537795b8a3a238c7f97a80, + limb2: 0x92487193ced2465f, limb3: 0x0 }, y: u384 { - limb0: 0x70b5029b4cea0511eac8c8a3, - limb1: 0xad01167b66f7938a14baf5b, - limb2: 0x1531c866a576fc03, + limb0: 0x1f760ae7d50aa2a161862484, + limb1: 0x592689f5f2788c6ad18b3138, + limb2: 0x9a9fe578e2d77822, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x226e346db17a1e4aee3c7387, - limb1: 0xf56b1d6dadea224c0afba2ff, - limb2: 0xf836000132886dd2, + limb0: 0x42cb4980ad0b69856f3756ec, + limb1: 0xc4e8ac0335daf3bd78a44afc, + limb2: 0x3d958011506b1e31, limb3: 0x0 }, y: u384 { - limb0: 0x883d9e8215b2a63ca697a064, - limb1: 0x83c1db7b497c530435f1bade, - limb2: 0x9ccf4d68c6e25b3c, + limb0: 0x516141dcfe733256f95ddd87, + limb1: 0x997339452a67bda722707a53, + limb2: 0x35654e19c5a2a807, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x86c962e68588e15907c227f5, - limb1: 0xe78405c9f9f66ed875d94b17, - limb2: 0x40eee76df21839be, + limb0: 0x6b887217b43ff95ce3575f45, + limb1: 0xf1789274cf954532ef4c4b2f, + limb2: 0x996814869006c8cf, limb3: 0x0 }, u384 { - limb0: 0x5e81c54678d79e4516fe9983, - limb1: 0x2841af4ee028e3b2193dc81f, - limb2: 0x15844aef3c7b3fae, + limb0: 0x2fe48a83d32a03fda341941f, + limb1: 0x877092636ca112afeae5dde9, + limb2: 0xefafa744ae4a6615, limb3: 0x0 }, u384 { - limb0: 0xf2373eb877631b3e87515a07, - limb1: 0x79932cbad70c7f5b64ede8b, - limb2: 0xf1561cde2ade83da, + limb0: 0xc266c49d8afa3dec3f579399, + limb1: 0x7c9005a8d572c68b7a21915a, + limb2: 0x61935f7a7ced0f16, limb3: 0x0 }, u384 { - limb0: 0x83a45f49c4cdba636bdd3065, - limb1: 0xff7d44a89a752b2a7e88d5db, - limb2: 0x6f8bf2533fd35df3, + limb0: 0x75b0d39dbdee339134d27faa, + limb1: 0xf34ca0f79a384572e46ecc36, + limb2: 0x7e71b4979be9ba3e, limb3: 0x0 }, u384 { - limb0: 0xbd15e1f00ae39154952302aa, - limb1: 0x808580bcfe510b3eeb93a12c, - limb2: 0x66a0b5b18de0c26a, + limb0: 0x6bca1f9422bedc7330f67e76, + limb1: 0xd44fd9d4511859a7a3979a9c, + limb2: 0x8151301fc83d1dab, limb3: 0x0 }, u384 { - limb0: 0xd0b72ffccccd4b09534618b7, - limb1: 0xffffffffffffffff46c5169c, + limb0: 0xcd10679d160d23072c43c039, + limb1: 0xffffffffffffffff22c9b385, limb2: 0xffffffff00000000, limb3: 0x0 } @@ -26391,39 +26363,39 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xcaed9c97c731650c3d44206c, - limb1: 0xf4c2badf22c130eacfdc44c7, - limb2: 0x99d5b550b338171f, + limb0: 0x9ef2aea1adbe5f478bfa3d78, + limb1: 0xece6949410a49ada3b4282e2, + limb2: 0xd15f09ab502880ca, limb3: 0x0 }, u384 { - limb0: 0x4432f67de51fd941545a53f5, - limb1: 0xbb922d53364428f3bd5ce5aa, - limb2: 0x8fb4c25939cdfa4a, + limb0: 0xb531b1bc1247dcdc8c3a5ac1, + limb1: 0x271fcc406c7968319f33517e, + limb2: 0xd67e10d8335ddbfa, limb3: 0x0 }, u384 { - limb0: 0x7e860619df421cec51fc44a0, - limb1: 0xf094dc790785bfca959d9343, - limb2: 0xb214d7680ce255e9, + limb0: 0xa04d71b9ada2fb2c0538c29f, + limb1: 0x434f8f7714ddb5fbd74ef755, + limb2: 0xe8d61c1e953e761f, limb3: 0x0 }, u384 { - limb0: 0xbc462ecda2840684c821b78e, - limb1: 0x12ac07cfe05840f3668ea962, - limb2: 0x4dd97a22770153ce, + limb0: 0xb30a76765525e028c71d2474, + limb1: 0x1f47bc3f65d2f9749bdcdd98, + limb2: 0x11a975a3b6f986d5, limb3: 0x0 }, u384 { - limb0: 0x94e3e452eebca5afbc5af5d6, - limb1: 0x3f532d74ba44a4a3073545dc, - limb2: 0x79afdefa137434ab, + limb0: 0x3e727bce3ba53b811dbb61c1, + limb1: 0x9da2bf78abd27c56f261c48f, + limb2: 0x65705c2bb2b0287d, limb3: 0x0 }, u384 { - limb0: 0x942d9948dd67065fc0630584, - limb1: 0xc1f5864e4552e7bbfdb8716a, - limb2: 0x6efe1a7babb99d36, + limb0: 0xe9e699025182894339178908, + limb1: 0x83eab2ba3ffda4b2b2bf309e, + limb2: 0x25204ca128fc6971, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26431,102 +26403,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x33a77778a59b578a47e36743, - limb1: 0x822596e9115b2086b06e7bef, - limb2: 0xe7ec691fbd16bdc0, + limb0: 0xc85a753091922aacd7821360, + limb1: 0x476e63b298043d066270ad31, + limb2: 0x57e41a4cc2b169d5, limb3: 0x0 }, u384 { - limb0: 0x69e2390c9388a49fd28533d2, - limb1: 0x1499b2f79d3f066c01fc7f52, - limb2: 0xd43e9e204eded087, + limb0: 0x1998ed640149209d50bb356d, + limb1: 0x90d758043fe05950cdd6f773, + limb2: 0x319f3df942794c53, limb3: 0x0 }, u384 { - limb0: 0x29d7b42e5370950a2346050c, - limb1: 0xa705f1368a1907c9ff18253, - limb2: 0xbd60d511e1895db9, + limb0: 0xedbaa887ed86dbe28c88735c, + limb1: 0x339ecefb639a29c508115443, + limb2: 0x1e0b49fc53c88fd7, limb3: 0x0 }, u384 { - limb0: 0x7173f0c5bb9f9864db79baa9, - limb1: 0x1254385af92dc7017c589135, - limb2: 0xbec317df269e0b89, + limb0: 0x61ba3fbf5e681b3acbf6faaa, + limb1: 0xe1fee2261cbc9f2ce4c8c60e, + limb2: 0x6e3af026d230e0ba, limb3: 0x0 }, u384 { - limb0: 0xb5fe5fc2c790f32564a5dfe3, - limb1: 0xcc9677179a97969298fc7f7f, - limb2: 0x66d1698d54a52d62, + limb0: 0xc770a0a4e776d3b2f7b1dd7b, + limb1: 0xc8a390f266f9188a7f4d51bb, + limb2: 0xa9aa578baba7c85d, limb3: 0x0 }, u384 { - limb0: 0xb1b39dc609c2acb7087fa4c3, - limb1: 0x799661bbeba6c67b958373f6, - limb2: 0xd4230f5b6ef41c57, + limb0: 0xdd696ab5b53b3b230929ecb3, + limb1: 0x87abd4e05cfeceabeb7fdc41, + limb2: 0x32b4ecb4af395554, limb3: 0x0 }, u384 { - limb0: 0xc8ef91bfc60bfd1f231a7e4d, - limb1: 0x3fdd071698199eda4d80253, - limb2: 0x90f787bd6f219762, + limb0: 0xb9b06b5da550a2d761403b1f, + limb1: 0xdf88cf6a2bf862e64915bf7, + limb2: 0xcffeae19a280f4ab, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x3d3e322372fe6d0cc7dc5d14, - limb1: 0x55538588d8f1e99146d845e, - limb2: 0x3a1187ea79510ef0, + limb0: 0x15ddef78fedac022600cd601, + limb1: 0x5035d3e07fef8e9b94e5239c, + limb2: 0xd1d0c81599fb4283, limb3: 0x0 }, u384 { - limb0: 0x183e37f952c9f7f4436222b7, - limb1: 0x5e35635c3013eafabbb29652, - limb2: 0xb4bab8af6b843d23, + limb0: 0x3c44cf1725b036d9637c0b41, + limb1: 0xdd5b1a292f2a328d518bdde2, + limb2: 0x76dbdeb0091b5d96, limb3: 0x0 }, u384 { - limb0: 0x7ea9b3451eee32935b53bf86, - limb1: 0x301e8fadcc0b2687cc0a477d, - limb2: 0x553c8a6a5240316b, + limb0: 0xfdc2d457c6d597d990d413ff, + limb1: 0x325cba46888b93f78cd93878, + limb2: 0x75dafb8a56eff06d, limb3: 0x0 }, u384 { - limb0: 0x563759372517705d0a190593, - limb1: 0xcd30635445d0cc74f67b7d20, - limb2: 0x62922731da341d08, + limb0: 0x4f62dab8cbdbd8ebd5c2e6e6, + limb1: 0x706c224fcac26b5091427104, + limb2: 0xbf1542b2e06c36ef, limb3: 0x0 }, u384 { - limb0: 0xea5cd8ef1d2c886be120404f, - limb1: 0xf9e5fb3433276ab07ad70a9d, - limb2: 0x4a5621b4add2e1cc, + limb0: 0x341dff5affae2463699ea3c2, + limb1: 0x8d8836887558cc3fa567481e, + limb2: 0x3723b035bb62003b, limb3: 0x0 }, u384 { - limb0: 0x5a69410560692b96953d05b, - limb1: 0x7ff137c66788720ab2319a19, - limb2: 0x134987bc2fef65c, + limb0: 0x38b46b85c24ed2ed9f5bb20a, + limb1: 0xb5625a4c866986212c609f38, + limb2: 0xa62795a69cb26146, limb3: 0x0 }, u384 { - limb0: 0xcc1113e9461d2fa3aecb074c, - limb1: 0x80b7323a86f8107bd2825bd4, - limb2: 0x5ba560871e0f1012, + limb0: 0xc1aa5c659c6c809d43a8e9a6, + limb1: 0x477361661c729218e8bc526d, + limb2: 0xfd0ec597e63ede69, limb3: 0x0 }, u384 { - limb0: 0x94e3e452eebca5afbc5af5d3, - limb1: 0x3f532d74ba44a4a3073545dc, - limb2: 0x79afdefa137434ab, + limb0: 0x3e727bce3ba53b811dbb61be, + limb1: 0x9da2bf78abd27c56f261c48f, + limb2: 0x65705c2bb2b0287d, limb3: 0x0 }, u384 { - limb0: 0x942d9948dd67065fc0630584, - limb1: 0xc1f5864e4552e7bbfdb8716a, - limb2: 0x6efe1a7babb99d36, + limb0: 0xe9e699025182894339178908, + limb1: 0x83eab2ba3ffda4b2b2bf309e, + limb2: 0x25204ca128fc6971, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26536,78 +26508,78 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x7c9df2b5a20c51c77a5c64c7, - limb1: 0xeec0ba021a55beb1fd43f803, - limb2: 0x41ac1ef19c81ba10, + limb0: 0x88182b3c7303a2e8c4e90b9b, + limb1: 0x7a981d15437de21d2e419333, + limb2: 0x6e74c6c5690799c2, limb3: 0x0 }, u384 { - limb0: 0x8fc690b52e2e5682a331a783, - limb1: 0xd08d29bca1a8409c68772ad8, - limb2: 0x5e29456bc463db8b, + limb0: 0xc687ae1e2bf7fb2b757910f1, + limb1: 0xd6fce5a1491e4965a337869f, + limb2: 0x4a2393762802768a, limb3: 0x0 }, u384 { - limb0: 0xb93b739e7de56900f920c1ad, - limb1: 0x171712639d6db58136f43931, - limb2: 0xb0aa2a369a58ab34, + limb0: 0x861de5739a926463af4c3ad7, + limb1: 0x9c4c5788724104ea94635206, + limb2: 0x76a2b710ea1aab62, limb3: 0x0 }, u384 { - limb0: 0x3b560f4b7d19605aa8d251ec, - limb1: 0x494a51dcffafdf0b59815239, - limb2: 0x2a1a00ae66276057, + limb0: 0xe9fe530e54e8e52bfa0bdff8, + limb1: 0x1eee15e141a0c70b51cdf83e, + limb2: 0xf9c09546c9ae3977, limb3: 0x0 }, u384 { - limb0: 0x10b7cafb8e41f7926bd11d1e, - limb1: 0x5d9c096fa4f0854019cb471b, - limb2: 0x5e8c4c50625a03e, + limb0: 0x1dc3c8947d337886936cc311, + limb1: 0x4394649877f2c126ef3184e7, + limb2: 0xbfffb21101c9907f, limb3: 0x0 }, u384 { - limb0: 0x8e54dee8a44da3770b903d50, - limb1: 0x7fffffffffffffffb8de9f50, - limb2: 0x7fffffff80000000, + limb0: 0x34696bc3a86f332fb137c422, + limb1: 0xffffffffffffffffb26a830a, + limb2: 0xffffffff00000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x48b396d215b76475ec90d717, - limb1: 0x23da990a4b06a7ec27ab446e, - limb2: 0xbd0c545da3d5252e, + limb0: 0xc50b5766f7023938a6d31f33, + limb1: 0x246c39c4d2290b417a621c25, + limb2: 0x3bd7a81d8430648b, limb3: 0x0 }, u384 { - limb0: 0x235bcd1c8684c3625c36ac0d, - limb1: 0xdf5a52c066200686209fb36b, - limb2: 0xac042cee0ce2b65, + limb0: 0xbfb44aa85a4165bda426caf5, + limb1: 0x9ce4b63c55cdddac7549eed, + limb2: 0xf54c087d0becb8d9, limb3: 0x0 }, u384 { - limb0: 0xdbb077386f6b2f56464a4410, - limb1: 0xff1e60e7e15356b638d6f18a, - limb2: 0xa4ed249e76896fa1, + limb0: 0xcdf7e5bf603d8c9111052491, + limb1: 0xe0ad86bf5467ac3dc9cde37f, + limb2: 0xa33cf6f1d24952e7, limb3: 0x0 }, u384 { - limb0: 0x997e99ee96789ecc2589e33a, - limb1: 0xa19f946c1957b1f221b85e74, - limb2: 0xc591452ea2a639c8, + limb0: 0x4a39bfdc342abd4881d70f7c, + limb1: 0x70bebaca07301fb25d606de9, + limb2: 0xb0e0608be6b498ab, limb3: 0x0 }, u384 { - limb0: 0xce4e41052d1efae4f49c4e55, - limb1: 0xd4874538fe80136ddd2ba9dd, - limb2: 0x261fac8d32172b2f, + limb0: 0x65dc4d9150493513971c6436, + limb1: 0x4d5f89837333e44789c66871, + limb2: 0xd9dfe6066b577d5a, limb3: 0x0 }, u384 { - limb0: 0x3c8fa5142aa0a60982bc250b, - limb1: 0x74be1875d1ba74970b70b876, - limb2: 0xc986356137e7b842, + limb0: 0xd4af30de2b46ad1c4fa12c5f, + limb1: 0x301616726f12d00e1f98901b, + limb2: 0xfb665798f45ab688, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26615,102 +26587,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xcd7adbb0aee79db09daa1140, - limb1: 0xf091f747ef68292c1c227815, - limb2: 0x6b224bb987670ae0, + limb0: 0xa6a0d451de41ef8fad479f, + limb1: 0x662ccfac35556cbab703041f, + limb2: 0x34f09e1ed240b9ae, limb3: 0x0 }, u384 { - limb0: 0x8dacbedaf3c686a5d6f9e342, - limb1: 0xc4a13b12b7a880d17bb3b928, - limb2: 0xe1c24a6fccc00366, + limb0: 0x2125d2499bdce5b6e8a0fee2, + limb1: 0xfd42ca5474772106b5eb3748, + limb2: 0x7c5e1672c80f818b, limb3: 0x0 }, u384 { - limb0: 0x28f461b7ed09a4afee0b98e8, - limb1: 0x843eedadc770af5b49db99ff, - limb2: 0x7a733a74885bd807, + limb0: 0x874057095ba5f82958053e4, + limb1: 0x5f3d52c928852cc0682c3338, + limb2: 0x10a53c9465d1c74e, limb3: 0x0 }, u384 { - limb0: 0x433f15462c66dcf04cfca929, - limb1: 0xeefd7312fbe800e40fab224d, - limb2: 0x87d09c0325ef88ea, + limb0: 0x168a1c88e60aaa2a0a63a26, + limb1: 0xf4d9226a34eb6905587a2ac0, + limb2: 0x7f1ba6ff74f4a15d, limb3: 0x0 }, u384 { - limb0: 0xa58acc9594603b85aa74d572, - limb1: 0x4d6efbbd849d87aa11c5eceb, - limb2: 0x8aa81666c3dd94ec, + limb0: 0xdb3ca5f87cd66aedcf5ac78b, + limb1: 0x2d4742f97127965c87e59ae3, + limb2: 0xe0ff491b1392ffe3, limb3: 0x0 }, u384 { - limb0: 0x71b50e66c3d27f41396673f8, - limb1: 0x24e2002beaaa3b057f75cfc9, - limb2: 0xdbfba41fcb51f837, + limb0: 0xd32f83228503ced7880709f, + limb1: 0xa4a02a45e0f5fc95feee9a9c, + limb2: 0x98ebe43ece41da1d, limb3: 0x0 }, u384 { - limb0: 0x97dd22868fd361e1e3b06c2f, - limb1: 0xb69198b79db3f0ccdbac4642, - limb2: 0xb02f6c89ea416ab5, + limb0: 0x50c3dc2a74f85f8d9b27f8a8, + limb1: 0xce30743929b47cb370cdef09, + limb2: 0xde6e83f0070a056d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x4d7b59fcabe3f7bd9d2d4b48, - limb1: 0xc28d7cacfe8636e70f7aba2a, - limb2: 0xc494f62e809cc06a, + limb0: 0x7bc25909be80e181d834e5e, + limb1: 0xa5209cb79b4801b5a2950525, + limb2: 0xc36b2ad523dfa0e9, limb3: 0x0 }, u384 { - limb0: 0x772ddc84c6996825bfe1a849, - limb1: 0x72a54959fea3cfbcfc3c9c0a, - limb2: 0xb3b807ccc6260767, + limb0: 0x12d9877a1d55c6eff887ddbf, + limb1: 0x66393d96ede42907bf62e449, + limb2: 0x61f4bd465e6a20f6, limb3: 0x0 }, u384 { - limb0: 0x81281d7e0fdf63c5a665d852, - limb1: 0x1b785e47327992a7eae25af3, - limb2: 0x891d0e03be277762, + limb0: 0xc8807a6f2092fe918d2f4df5, + limb1: 0x7a22d8c25a1563f47c1b326d, + limb2: 0x805cbaf14bd96ed7, limb3: 0x0 }, u384 { - limb0: 0xbcfdad9a1dd9c112c6467a70, - limb1: 0xb83604ba5bcf639ce848b3a0, - limb2: 0x9523a59d67b65d49, + limb0: 0x7d62dce14461a6c072867e5a, + limb1: 0xff4cafb200a98941970c9264, + limb2: 0x868a5237ca7adc36, limb3: 0x0 }, u384 { - limb0: 0x22d63a808861d6eff8513a10, - limb1: 0xaa5d44dd156c61a6128ff5b5, - limb2: 0x3da0873b0d80455b, + limb0: 0x6744a7b447371d89748eda6, + limb1: 0xeb82ffb99297887fd9da06d9, + limb2: 0x1c86d4705a14eba8, limb3: 0x0 }, u384 { - limb0: 0x936273e85c26b6ddae30d8ae, - limb1: 0x1c74df1252425ae5f1ba4a2c, - limb2: 0x304e1b7a021b042c, + limb0: 0x31e750dcce6e8585ebf8ba8b, + limb1: 0xe465c5772ec106a9d92efc11, + limb2: 0x1c674e06175f6710, limb3: 0x0 }, u384 { - limb0: 0xb0235ba85264e8edc527d462, - limb1: 0xf75108601ac0dae964833bc4, - limb2: 0xc3c4dae1a529a4ea, + limb0: 0x987fde37ee24f231bac5eaa8, + limb1: 0x946834c83090364463b3c448, + limb2: 0x19738f97b3df08fc, limb3: 0x0 }, u384 { - limb0: 0xce4e41052d1efae4f49c4e52, - limb1: 0xd4874538fe80136ddd2ba9dd, - limb2: 0x261fac8d32172b2f, + limb0: 0x65dc4d9150493513971c6433, + limb1: 0x4d5f89837333e44789c66871, + limb2: 0xd9dfe6066b577d5a, limb3: 0x0 }, u384 { - limb0: 0x3c8fa5142aa0a60982bc250b, - limb1: 0x74be1875d1ba74970b70b876, - limb2: 0xc986356137e7b842, + limb0: 0xd4af30de2b46ad1c4fa12c5f, + limb1: 0x301616726f12d00e1f98901b, + limb2: 0xfb665798f45ab688, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26720,9 +26692,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x278ad80580a7aa720926095d, - limb1: 0x1df9c805d1d6690361575949, - limb2: 0xf0190ae8312e5e0f, + limb0: 0xb3e3be0fed65e9c5bdf9effc, + limb1: 0x14284bfc265050754c5fc165, + limb2: 0x11ace78f7a19874b, limb3: 0x0 }, u384 { @@ -26735,15 +26707,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x3acc03ab677799c79dcf93e6, - limb1: 0xa48a0600d46920050f608eee, - limb2: 0x28e3da11fe51d9a1, + limb0: 0xc2ce80ecfa9b8b18d416722a, + limb1: 0x19d0a40d7bd172ed42ac3e9a, + limb2: 0x8e9d99918b0d6f28, limb3: 0x0 }, u384 { - limb0: 0xf4dfa8225cd491d5deef7127, - limb1: 0x971d6ce85d6e2a64f34bbe18, - limb2: 0xa9d5366ab6de9d52, + limb0: 0x40b107f7e2e93633ec47da67, + limb1: 0x2cc3dc6711816a09bf623a84, + limb2: 0x30220e59e0c29b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26751,54 +26723,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xa3496895e12a3875e0472d96, - limb1: 0xf0c19fadacf63601d96d534d, - limb2: 0x445bd6c91a01d78d, + limb0: 0xe4d04af1521c1a6f50b94bda, + limb1: 0x91994b8c720c134e1ab51eac, + limb2: 0xd1259a70c9d1d1e, limb3: 0x0 }, u384 { - limb0: 0x1ae27ea830d39dfdfdc9de8c, - limb1: 0x49c2904b0615792c353a17f7, - limb2: 0xaf226f8a3247666e, + limb0: 0x3b922daa519f59e4cf668f6b, + limb1: 0x6e22dfe0029f546c50119210, + limb2: 0x23e694a31541f376, limb3: 0x0 }, u384 { - limb0: 0x95ec8877734a89a34ffc361a, - limb1: 0x783af5ccdb8d98577da49d94, - limb2: 0x3c29a5e9f9a2408f, + limb0: 0xe4a07c934fa2eff6aebf0782, + limb1: 0x275657b758f45d8715ff2f91, + limb2: 0xef9a9f4e80fdc158, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xccc5740a351bba7dc7de8347, - limb1: 0xe2c1b59752384f831bb2974a, - limb2: 0x7f47fcbe017987a6, + limb0: 0xf80fe6828602a1f6fba8153, + limb1: 0x992e8cc2b31d2fc7b50f158b, + limb2: 0xb12ee02848966884, limb3: 0x0 }, u384 { - limb0: 0x1f4a79013aa52c2fcddfade5, - limb1: 0x8164feb9308741fad136e3bd, - limb2: 0xfdc77c831bf4a45b, + limb0: 0xa2453ab736d986bf1b9c569b, + limb1: 0x41285590c8d55198107df05f, + limb2: 0x5d34c848826fa50c, limb3: 0x0 }, u384 { - limb0: 0xedb4b88f255086bc8b040cd4, - limb1: 0xee93769c5e4e078d8b39cc67, - limb2: 0x5d469296859ebbf1, + limb0: 0xa40990e931299a262fad115, + limb1: 0x2da028204214489f26f65725, + limb2: 0xca600aca07f2c198, limb3: 0x0 }, u384 { - limb0: 0x3acc03ab677799c79dcf93e3, - limb1: 0xa48a0600d46920050f608eee, - limb2: 0x28e3da11fe51d9a1, + limb0: 0xc2ce80ecfa9b8b18d4167227, + limb1: 0x19d0a40d7bd172ed42ac3e9a, + limb2: 0x8e9d99918b0d6f28, limb3: 0x0 }, u384 { - limb0: 0xf4dfa8225cd491d5deef7127, - limb1: 0x971d6ce85d6e2a64f34bbe18, - limb2: 0xa9d5366ab6de9d52, + limb0: 0x40b107f7e2e93633ec47da67, + limb1: 0x2cc3dc6711816a09bf623a84, + limb2: 0x30220e59e0c29b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -26808,12 +26780,19 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xb8b0642fa6c1e952c65e4a47, - limb1: 0x39e1ff0728797973c29aa478, - limb2: 0x197b84c29e4ee3cb, + limb0: 0xc973063c715d87b794dcf71, + limb1: 0x43d472b76df92e057f1b8253, + limb2: 0x514993c60de291, limb3: 0x0 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0x96e5284ef38611c8a83c8d7, + limb1: 0xf29524fdd54c5c1b877d8c83, + limb2: 0x1e039d36fd2a8655, + limb3: 0x0 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 3 @@ -26821,15 +26800,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x850684e60389c09dab3f8a6f, - limb1: 0xa105b20b6b6a70c61a47c2d9, - limb2: 0xcfec987db9ee5f48, + limb0: 0x334eb561106842e9e932b95f, + limb1: 0x63b7b308d5fa7bcb8b863723, + limb2: 0xa0874b7a7dfe9023, limb3: 0x0 }, y: u384 { - limb0: 0x88e89021da72154c5ef4880a, - limb1: 0x41d9316da0a51baa830ff4e8, - limb2: 0xbf1ded12a2fb5faf, + limb0: 0x548fd8e3315626c5b313c076, + limb1: 0xf3c8943b4a96e612c2e126ba, + limb2: 0xa19b585e9568bfb3, limb3: 0x0 } } @@ -26842,85 +26821,85 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x63c9c12beefd0cb70b252f6e, - limb1: 0x6ec3200c0fcfbdd1840c9745, - limb2: 0x1224fca0afc49664, + limb0: 0x2109fca87c5e9ecece6f796e, + limb1: 0xcab27651e889b8145f177c22, + limb2: 0x4e0bc01572e025a0, limb3: 0x0 }, y: u384 { - limb0: 0xc4f5956f4bd72618a3bb6312, - limb1: 0x2321121aebe6e41aebea2c4a, - limb2: 0x7c74f50b785ec9dd, + limb0: 0xfaaffc5abd4416e605176292, + limb1: 0x213a99e1b1dfd4e54b26ff9a, + limb2: 0x14e9a3e82d1d603f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xeb41fe565582b6c7183d7727, - limb1: 0x8b59b4e70aa7fda97f0e96a, - limb2: 0x6e452be3626bf410, + limb0: 0xb50150d2c4afb29a06ddb2e9, + limb1: 0xaf659e31316261ce8d0da402, + limb2: 0x3b3aeb7ac5466d9b, limb3: 0x0 }, y: u384 { - limb0: 0xcecab44c66b39daaedb7b049, - limb1: 0x4e67aced2257ce4eaf591b89, - limb2: 0xc16c3492d220fd42, + limb0: 0x538cc3e001efb0c65b983558, + limb1: 0xc8b8e22b7b301425853676e9, + limb2: 0xb3c3d80cd2cb8984, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x26cfb872e9b91d21782d042a, - limb1: 0x571a234d8286717bfd06147d, - limb2: 0x4dcb882421cf8346, + limb0: 0xa5146a3779daecc177587e81, + limb1: 0xf5196f4a88ae19728270d5a4, + limb2: 0x570037d7964c760e, limb3: 0x0 }, y: u384 { - limb0: 0x5d58e48881c490dd80b265e5, - limb1: 0x854f5d0b1e76748b006d97f, - limb2: 0x53ebba22ff2557c3, + limb0: 0x16cbba8eaf48e988f5be920e, + limb1: 0x61dd0fb4314bacf9acf0fdbf, + limb2: 0x38e2283b45368ac7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x518bd7857492857fd86c8fc6, - limb1: 0x64b2fb9307ea229bc69329fe, - limb2: 0x7054b02ac0d7f0c4, + limb0: 0xeb1802a682d299302f750358, + limb1: 0x9976198d80c5f84ffe9dacca, + limb2: 0x1c91ac476f67f5dd, limb3: 0x0 }, y: u384 { - limb0: 0xa63b3213ac6d2f8ca917222a, - limb1: 0xca4c58970bff7df31310079f, - limb2: 0x99304e51862c5276, + limb0: 0x8fd11837202b1cf6a801e1b6, + limb1: 0xaf4aba68d405771c58ec9b56, + limb2: 0x79c970cf7e49ada0, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xa1035f540e332c5ce4db82ef, - limb1: 0x8cb5b34f99d3f0fa385365dc, - limb2: 0xec2c51c86313a319, + limb0: 0xfe19f45f5c95c44b64bf0797, + limb1: 0xae4ecc0c0b81f51bf373c5e2, + limb2: 0xd6c8c7ea5834092f, limb3: 0x0 }, y: u384 { - limb0: 0xa9af23a892ee04c15d11f716, - limb1: 0x5d294decf92cc1d5cbf75567, - limb2: 0xd35cdd46aa26b9c8, + limb0: 0xb47359f513b07a75eafe1bf5, + limb1: 0x4018b23fe6727bb221a66178, + limb2: 0x636e7381c8ebd576, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x3f0c175a6383c494660c4ab1, - limb1: 0x1a9aeb915a6aa43448f868c0, - limb2: 0xa9ffb55f506995f6, + limb0: 0x7f7aa1021fbb42045000c52e, + limb1: 0x55a4693ae329ca97c12b9e69, + limb2: 0x3ae1bc44d83eb47e, limb3: 0x0 }, y: u384 { - limb0: 0x5d9564376d6b81419a14f7ae, - limb1: 0xc090f65b1427872e5d7243f1, - limb2: 0x7dc382b3e51e45a9, + limb0: 0x1d4319ad9a2b08c2d41b1a69, + limb1: 0x4b27ec5ae6ff5924047bb663, + limb2: 0xdd32cae43d0b6c45, limb3: 0x0 } }, @@ -26928,22 +26907,22 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xe65a3ae43a72017dc29ed120cddb2316, high: 0xfb46ed398772c3475cba9be3040464c0 + low: 0x488288f6962e76d44c438a0445b3db85, high: 0x7ba917a2a7138e32b2a858b2be3913d5 }, u256 { - low: 0x31cb5e8eae2562ca28948b4cf0fcccc6, high: 0xb3390a6ea0b87e455abec113a1832fdb + low: 0xdcb64ce36be176a5dbf1e671d29e0b8f, high: 0x29e9aeeaa438cdbc73523b49a30c9709 }, u256 { - low: 0xbc39e1b3bb1d867704e6748a7f3ab7dc, high: 0x3df8eeefe44a01f69251ad083fcb34fa + low: 0x61c3a568e63f604e75f8d6f127fad4ae, high: 0x1950df2d4f05f08543f931a1358bf615 }, u256 { - low: 0xc2112edaf1e7ea9b2f6570d74643d705, high: 0x92b9573113f2dc866b83f00fed2ee36f + low: 0x2be5a75390e499871c5a3ebd495093b2, high: 0x8a7f86642df833edd308be70aaeb10f6 }, u256 { - low: 0xb6bca2a2be7929653c9a923672bbe7b3, high: 0xe51c0cdb824734dfdd1f8e30731c877a + low: 0x9a8ebd3e25af3e96a08d9b4714d935f5, high: 0x3d48ff09e5a62d3dd81a099468fd1553 }, u256 { - low: 0x19b53b7fb47a5dcecf709452ce8c037e, high: 0x70c455a92a1bc11230331476f53fc3dd + low: 0xab7ba0ccfa2d4c50e7bccc602a6b1947, high: 0xd33373f8e40733e48d864040ad066656 }, ] .span(); @@ -26951,54 +26930,63 @@ mod msm_tests { array![ ( array![ - 0x1, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x0, - 0x1, - 0x0, -0x1, - -0x1, - 0x1, - 0x0, 0x0, -0x1, + 0x0, -0x1, 0x0, -0x1, 0x1, + 0x1, 0x0, 0x1, - -0x1, 0x1, -0x1, + 0x0, + -0x1, + 0x0, + 0x0, + 0x1, + 0x0, 0x1, 0x0, + 0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, 0x1, 0x1, -0x1, + -0x1, + 0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, + 0x1, + 0x0, 0x0, + -0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, 0x1, + 0x1, + -0x1, -0x1, 0x1, + 0x0, -0x1, -0x1, 0x0, @@ -27006,274 +26994,294 @@ mod msm_tests { 0x1, 0x1, 0x1, + 0x1, + -0x1, + 0x1, + -0x1, + -0x1, -0x1, -0x1, -0x1, - 0x1, 0x0, -0x1, 0x1, + 0x1, + -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + ] + .span(), + array![ -0x1, -0x1, 0x1, -0x1, 0x1, + -0x1, 0x1, 0x0, - 0x0, + -0x1, 0x0, -0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, -0x1, -0x1, - ] - .span(), - array![ -0x1, - 0x0, 0x1, -0x1, 0x1, 0x1, 0x0, -0x1, + -0x1, + -0x1, 0x0, - 0x1, - 0x0, - 0x1, + -0x1, 0x0, 0x0, -0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, 0x1, - 0x1, - 0x0, + -0x1, 0x0, -0x1, 0x1, + -0x1, 0x0, 0x1, + 0x1, + -0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x0, -0x1, 0x0, -0x1, -0x1, - 0x1, -0x1, -0x1, + 0x0, + 0x0, + -0x1, -0x1, -0x1, 0x0, 0x1, - 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, 0x0, 0x1, + ] + .span() + ), + ( + array![ -0x1, - 0x1, 0x0, -0x1, - 0x0, -0x1, + 0x1, + 0x1, + 0x1, + 0x0, + 0x1, 0x0, 0x1, 0x1, 0x1, -0x1, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, -0x1, + 0x1, + 0x1, 0x0, + 0x1, 0x0, -0x1, + -0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, -0x1, - ] - .span() - ), - ( - array![ + 0x0, + 0x0, 0x1, 0x0, -0x1, + 0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, 0x0, + -0x1, + 0x0, + 0x1, + 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x1, - -0x1, 0x0, 0x1, 0x1, 0x0, - -0x1, - 0x0, 0x1, -0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, - 0x1, - 0x0, 0x0, 0x0, -0x1, + -0x1, + ] + .span(), + array![ 0x0, 0x1, 0x1, - 0x1, - 0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x0, + -0x1, 0x0, + 0x1, -0x1, 0x1, - 0x0, -0x1, - 0x0, - -0x1, - 0x0, -0x1, 0x0, 0x0, 0x0, + -0x1, + -0x1, 0x1, + 0x0, -0x1, -0x1, -0x1, - 0x0, - 0x0, 0x1, + 0x0, -0x1, - ] - .span(), - array![ 0x1, - -0x1, + 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, + -0x1, 0x0, 0x1, - -0x1, 0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, -0x1, -0x1, - -0x1, + 0x0, + 0x1, -0x1, 0x1, 0x1, -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, - 0x0, 0x1, + 0x0, 0x1, 0x1, - -0x1, 0x1, + 0x0, 0x1, 0x0, 0x1, + 0x0, -0x1, -0x1, 0x1, 0x0, - -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, 0x1, + -0x1, 0x0, + -0x1, + ] + .span() + ), + ( + array![ 0x0, 0x0, + 0x1, 0x0, -0x1, 0x0, - 0x1, - -0x1, 0x0, -0x1, 0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, @@ -27281,696 +27289,662 @@ mod msm_tests { 0x0, 0x0, -0x1, - 0x1, - -0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x1, - -0x1, - -0x1, - ] - .span() - ), - ( - array![ + 0x0, 0x1, 0x1, 0x1, + -0x1, 0x0, + -0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, - 0x0, - 0x0, + -0x1, 0x1, 0x0, -0x1, + 0x0, + 0x1, -0x1, + 0x0, 0x1, 0x1, 0x0, -0x1, - -0x1, - -0x1, + 0x1, 0x1, 0x0, 0x0, 0x0, - -0x1, - 0x0, 0x0, + 0x1, -0x1, + 0x0, -0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, - 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, - 0x0, + -0x1, 0x0, 0x0, -0x1, -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, + -0x1, 0x0, + -0x1, 0x0, 0x1, + ] + .span(), + array![ 0x0, 0x1, -0x1, 0x1, 0x1, + 0x0, -0x1, 0x1, - -0x1, - 0x0, 0x1, 0x0, 0x0, 0x0, - 0x0, - 0x0, - 0x1, + -0x1, 0x1, 0x0, - 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, -0x1, - ] - .span(), - array![ 0x1, - -0x1, - -0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - -0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, 0x1, + -0x1, 0x0, 0x1, 0x1, -0x1, + 0x0, 0x1, 0x0, -0x1, - 0x0, - 0x0, + -0x1, 0x1, 0x1, 0x0, + 0x1, -0x1, -0x1, - 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, -0x1, + 0x1, 0x0, -0x1, + 0x1, -0x1, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x1, - 0x1, - 0x0, + -0x1, -0x1, 0x0, -0x1, + 0x1, -0x1, -0x1, - 0x1, - 0x0, - 0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, - 0x1, - -0x1, - 0x1, 0x0, - -0x1, 0x1, - 0x0, + -0x1, 0x0, 0x0, -0x1, - 0x1, - 0x1, + -0x1, ] .span() ), ( array![ - -0x1, - 0x0, 0x1, 0x1, 0x0, - 0x1, - -0x1, - 0x1, 0x0, 0x0, 0x0, - 0x0, - -0x1, + 0x1, 0x0, 0x1, 0x1, -0x1, - -0x1, 0x1, 0x1, 0x0, - -0x1, - 0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - -0x1, + 0x0, -0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x1, + 0x0, 0x1, -0x1, + -0x1, 0x0, 0x0, -0x1, - -0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, 0x0, -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, -0x1, - 0x0, -0x1, - 0x1, - 0x0, + -0x1, 0x0, 0x0, 0x1, 0x1, - -0x1, + 0x0, 0x1, + -0x1, 0x0, + -0x1, 0x0, + 0x1, -0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, 0x1, -0x1, -0x1, -0x1, 0x0, - -0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, + 0x1, + 0x1, -0x1, ] .span(), array![ 0x0, + -0x1, + 0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, -0x1, + 0x0, -0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x0, + -0x1, 0x1, 0x1, -0x1, - -0x1, + 0x1, + 0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, -0x1, -0x1, + 0x0, 0x1, + 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x1, -0x1, - 0x1, 0x0, -0x1, - 0x0, + 0x1, 0x1, 0x0, 0x0, + 0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x0, - -0x1, 0x1, + 0x0, + 0x0, -0x1, - 0x1, 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, + ] + .span() + ), + ( + array![ -0x1, -0x1, 0x1, -0x1, 0x1, - 0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x1, 0x0, - -0x1, 0x0, 0x0, - -0x1, - 0x1, - ] - .span() - ), - ( - array![ 0x1, - 0x0, 0x1, -0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, -0x1, -0x1, - 0x0, + -0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, 0x0, - 0x0, - -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, - 0x1, -0x1, - 0x1, 0x0, 0x1, - 0x1, 0x0, - 0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, -0x1, -0x1, + 0x1, -0x1, - 0x0, -0x1, -0x1, + 0x0, -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x1, + 0x0, 0x1, 0x1, + -0x1, 0x1, + -0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, 0x1, - 0x0, 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x1, - 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, - 0x0, + -0x1, 0x1, + -0x1, 0x1, - 0x0, 0x1, -0x1, - -0x1, + 0x1, ] .span(), array![ + 0x0, 0x0, -0x1, + -0x1, + 0x0, + 0x0, + 0x0, 0x0, -0x1, - 0x1, -0x1, 0x1, - -0x1, 0x0, 0x0, 0x1, + 0x0, + 0x0, + 0x1, + 0x0, + 0x1, + 0x0, 0x1, -0x1, -0x1, 0x1, 0x1, 0x1, + 0x1, 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, 0x1, -0x1, 0x0, - -0x1, - 0x0, - 0x0, - 0x0, 0x1, - 0x1, - -0x1, -0x1, 0x0, - -0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x0, - -0x1, + 0x1, -0x1, 0x1, - 0x0, + 0x1, 0x1, 0x0, -0x1, 0x1, - 0x1, - 0x0, 0x0, -0x1, 0x1, + 0x1, + -0x1, + 0x0, 0x0, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, + 0x1, + 0x1, 0x0, + 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, ] .span() ), ( array![ - 0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, - 0x1, 0x0, 0x1, + -0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, - 0x1, + 0x0, 0x1, -0x1, + 0x1, 0x0, -0x1, - -0x1, 0x1, -0x1, -0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x1, 0x1, + -0x1, + -0x1, + 0x1, 0x1, 0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x0, 0x1, - 0x1, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, - 0x1, - -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, 0x1, + 0x1, 0x0, + 0x1, + 0x0, + -0x1, 0x0, 0x0, 0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, - -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, 0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x0, -0x1, -0x1, - ] - .span(), - array![ 0x0, 0x0, -0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x1, -0x1, + 0x0, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, + 0x0, -0x1, 0x1, - 0x1, - 0x1, -0x1, -0x1, + ] + .span(), + array![ 0x1, 0x1, - 0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x0, 0x1, -0x1, + 0x1, 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x0, + 0x0, + -0x1, + -0x1, + 0x1, 0x1, 0x1, + -0x1, + 0x0, + -0x1, 0x1, + 0x0, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, 0x0, 0x0, + 0x0, + 0x0, 0x1, - 0x1, - 0x1, - 0x1, - -0x1, + 0x0, -0x1, + 0x1, + 0x0, -0x1, -0x1, 0x1, -0x1, - -0x1, 0x0, 0x1, 0x0, 0x1, - 0x0, + -0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + -0x1, 0x1, + 0x0, 0x1, -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x0, + 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x0, + 0x1, 0x0, + -0x1, 0x0, - 0x1, + -0x1, + -0x1, ] .span() ), @@ -27980,87 +27954,87 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x957a316a235dda3042da14ed, - limb1: 0x21e5bc9c438d0352484988d2, - limb2: 0x2eb541e6094df5ee, + limb0: 0xaf5cfaebad442626c2010601, + limb1: 0x1cab1ee9db546061bde325c5, + limb2: 0xf7a14a50f3ab29df, limb3: 0x0 }, y: u384 { - limb0: 0xc39e52d3593c75e8b0ac0242, - limb1: 0x4690fecf2a8f674c218726a5, - limb2: 0xfbf85f9059bb30c0, + limb0: 0xbb21e60d010ceb6e1f5022a2, + limb1: 0xac147760ef76726c178a5d62, + limb2: 0xf14472a0b61ccda8, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x439932688e5025d8d0aa85b7, - limb1: 0x8eecace1dd085176ae372eb6, - limb2: 0xbad778efb958d52d, + limb0: 0xdfeb1b2ea0961cb7e1b3f52a, + limb1: 0x7aaf14af38b1ffa2c82d624f, + limb2: 0xc2c639c228074221, limb3: 0x0 }, y: u384 { - limb0: 0xf0a82e7a580e7d4ca1c1d818, - limb1: 0xd968d3cdf8f0765321e85167, - limb2: 0xe2e64966ac83e96a, + limb0: 0x2f305523cda7e95690375416, + limb1: 0x768b48750c3da8e2a01bea29, + limb2: 0x2c8e38d6baea0084, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x3e8697419516832d35025b00, - limb1: 0x115dc301c93b1f043a59eedf, - limb2: 0xe130f98d1e0b9e22, + limb0: 0xa53d77409d3d529b9b2d5831, + limb1: 0x57afa9ca8e1baf2a6452ced6, + limb2: 0x3cb012767708decf, limb3: 0x0 }, y: u384 { - limb0: 0x361bc0a8e565056892897a23, - limb1: 0x5353846fc7376e6f1f7e9e73, - limb2: 0x840e5949872c8b3d, + limb0: 0x97765cabe389075f09c04f5e, + limb1: 0xc8515913b96a012dcefbc46c, + limb2: 0xade59712035b8837, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x4798cdcb5471adafa6b9d750, - limb1: 0x65c1245115f8134ed837fe32, - limb2: 0xb7320bc91a5f6d8d, + limb0: 0xa6af44ab2d19ddc9480944c0, + limb1: 0xdf45dd0f1bd607bd70ec94c6, + limb2: 0x56ab5620f25220c9, limb3: 0x0 }, u384 { - limb0: 0x1a104224b7a3c4cd953eb01e, - limb1: 0x8f47256aec47e7073f16a1f7, - limb2: 0xa6709ea579db6f8d, + limb0: 0x1302b1c3adb94f5a0862f400, + limb1: 0x5c07c25efa2c5cd71d2a7072, + limb2: 0xb307b09758b92f98, limb3: 0x0 }, u384 { - limb0: 0x19aa04df71c73751fea91d73, - limb1: 0x28bb202565e27f549125f6d6, - limb2: 0xd93634ffdae08a34, + limb0: 0x9d896c0c8077ee95aea46fb8, + limb1: 0xd49ee32632c2899b452ae8f5, + limb2: 0x52c52f1c33b4201d, limb3: 0x0 }, u384 { - limb0: 0xdd460f6030eecfac343ec39e, - limb1: 0xc0627a2f5fd216612da72721, - limb2: 0x414574557a4c0a47, + limb0: 0xa29ddb7b340eb154265a25de, + limb1: 0xf7548216d018db268a53ffb, + limb2: 0x51983396e863a327, limb3: 0x0 }, u384 { - limb0: 0xfd732794e9f622fb2b7fda8f, - limb1: 0x64638ea6908162b6481bbb4e, - limb2: 0x4b58a403ea2f4acd, + limb0: 0x74d084d63ab452aaec921478, + limb1: 0x79e0cf0af716eb6f87af8b80, + limb2: 0x5e84d065423f3e5f, limb3: 0x0 }, u384 { - limb0: 0xad5bbeb2f849f950f5900208, - limb1: 0x80597b71360ff100103cdd3, - limb2: 0x8e0f74b8a877491c, + limb0: 0x502b4df1a2787927514baef, + limb1: 0xb976afc134461b9905097ab8, + limb2: 0xcff3b3dbbf48b8a9, limb3: 0x0 }, u384 { - limb0: 0x3eeb9d2195fd1436c169526f, - limb1: 0x7ffffffffffffffdf87cb8ce, + limb0: 0xe05cf2eb61c81f7bb3fca8bd, + limb1: 0x7fffffffffffffff965e580f, limb2: 0x7fffffff80000000, limb3: 0x0 } @@ -28068,45 +28042,45 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xb10ffe51546ead95549f50f6, - limb1: 0x6493eeae3f572a778d33055f, - limb2: 0x6c4869b1c0ab569a, + limb0: 0x9f33fc407b76d84d02442397, + limb1: 0xb8e0cb981c2c175f43fe0a88, + limb2: 0xc88e88a79f10eb55, limb3: 0x0 }, u384 { - limb0: 0x9bdf96615c4dcec90b5dd79b, - limb1: 0xe53ef3bbeef869e7343fde7, - limb2: 0x5329ff93deeda27d, + limb0: 0x32d1cd2c8d8017b668748a5f, + limb1: 0x7490c11319aae9209fcad495, + limb2: 0xb5afd976835f2680, limb3: 0x0 }, u384 { - limb0: 0xf624716e8b5082a34bb965a0, - limb1: 0xb66658f05034ece1150de885, - limb2: 0x5698f43df47e6a7b, + limb0: 0x9726fdd977e146854b029801, + limb1: 0x35c1550c1fc9c1fcbaf84c92, + limb2: 0x1eaba9236b67e798, limb3: 0x0 }, u384 { - limb0: 0x7c4c668b651b0736d4af6def, - limb1: 0x3412e3445f1c2df152c07b0d, - limb2: 0x8bfb93ca530cf559, + limb0: 0x2a1cf7e5f4f6e6edec44fd89, + limb1: 0x7afa1622dae3ff2029954eb3, + limb2: 0x9355995997d561a8, limb3: 0x0 }, u384 { - limb0: 0xda634febd731ef60c3dd2840, - limb1: 0xe8ae86e30e5c5daa1ae2450, - limb2: 0x19075971c95e7767, + limb0: 0xd0ceef8747ee9e115bfcef8c, + limb1: 0x95e3cabae7cef44a0602f29d, + limb2: 0x51616b9b107813ed, limb3: 0x0 }, u384 { - limb0: 0xdda24eb2d8f26bb082a50ac7, - limb1: 0xf665dfd217057b3f8b3bee97, - limb2: 0x7a5d879330ba0876, + limb0: 0x961340d65d0bf6cb64bb741b, + limb1: 0x6bab172a2fc4e4043e97c838, + limb2: 0xc584352534db7a43, limb3: 0x0 }, u384 { - limb0: 0xc30f086cc81fcebefe41e2ea, - limb1: 0x383ca47bd4995bb56d3e968, - limb2: 0xfc94561b4e5cd287, + limb0: 0x6cd6b55998aefc2f0d247f06, + limb1: 0xd6ba0e74129fb4452049d35d, + limb2: 0xf9dba1cc9e07194d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28114,114 +28088,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf031b72f3e9d4016787c8898, - limb1: 0xbce84fd8d1db8929f26359d1, - limb2: 0x2181db40f8c5e36c, + limb0: 0xff679b1bf19fc55824fa7021, + limb1: 0x89faeea0dc97d80868b0fbd3, + limb2: 0x7733528e323c3dba, limb3: 0x0 }, u384 { - limb0: 0x7b5cd5688c60e8afeb7d6c37, - limb1: 0xf045aefc65bd0c32c7ee9139, - limb2: 0xc8ec99ec516c476c, + limb0: 0xc4c3eee77e105d844d43cd83, + limb1: 0xde0e6b5d8f89851aea1ce22f, + limb2: 0x8023501921989468, limb3: 0x0 }, u384 { - limb0: 0x7b577083955778774b3ae65a, - limb1: 0x9c67e87e6a05b2e14aebb8cf, - limb2: 0xfbeac211869e5bb7, + limb0: 0x62f2a2758e286e5a4c8bbfae, + limb1: 0xbff49d57072a5c37e9b6676e, + limb2: 0xc22be55fe8a0b609, limb3: 0x0 }, u384 { - limb0: 0x762911823dfedf216257f502, - limb1: 0x395e59407d8b054219559196, - limb2: 0x4a266e0667609931, + limb0: 0x2f653ba10871c1ea4ca2d071, + limb1: 0xcc40f3abb21897d592f502a8, + limb2: 0xce9b55e65313ede9, limb3: 0x0 }, u384 { - limb0: 0x34065ed49d2e6d7f19d390cf, - limb1: 0x25c59932985ff6331967045e, - limb2: 0x752d692822e0a33, + limb0: 0x928d7a96d2244a995299db7b, + limb1: 0xe9d2bc081b1a4d8ee21807f2, + limb2: 0x661eaf7bca38a98e, limb3: 0x0 }, u384 { - limb0: 0x11fe49bf15524be3b78cc596, - limb1: 0x987a0111effecaf8f56e77a6, - limb2: 0x96b81a54c99b7a40, + limb0: 0x3aa91686133a6c0fe306cc06, + limb1: 0xd0f5b966cf929ac64426bcc8, + limb2: 0x66dda4da064aec4d, limb3: 0x0 }, u384 { - limb0: 0x3558aff5b14bb18c6c93707f, - limb1: 0x9d7e7b6217c1368ad1835a79, - limb2: 0x433cab5eda19ef84, + limb0: 0xe784bdb793facb6d1686c050, + limb1: 0xc71c7f2333eefcaa430a23a5, + limb2: 0x185b9b5f3180bfc6, limb3: 0x0 }, u384 { - limb0: 0xf4a041ab5bb0d5c8708ea876, - limb1: 0x2c65eae831a8818a343ab790, - limb2: 0x643c9719f90b7fa2, + limb0: 0xeffebb432f4300ff9c77c94c, + limb1: 0xbaf4ce8d26e069629eda9f8b, + limb2: 0x372c19074ae7c726, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x4305a71beb6ead78d7b442d7, - limb1: 0x63f67e32f8f2d3c86bb76d79, - limb2: 0x92a3e4f9d45b6cc6, + limb0: 0x791e93ab6f0843b63688c5df, + limb1: 0xe16dc5ed68f9d33b10962461, + limb2: 0x71ad130ca8ed770a, limb3: 0x0 }, u384 { - limb0: 0xeeb7724ca93bc3cd8bf46367, - limb1: 0xa904c8abc5c0d8f5d69bc47a, - limb2: 0x4251d6fccb3c84a8, + limb0: 0x2a111d977ed748d6b31c3c13, + limb1: 0xbaddd4d3ab0a411db7176061, + limb2: 0x9c3f90392a7e3772, limb3: 0x0 }, u384 { - limb0: 0x1016148b3367db86ccfc823e, - limb1: 0xf13dab2d6e8fdec0fcb09405, - limb2: 0x2c52cd0fea9d76b, + limb0: 0xb2b5ede054828f3592e7525e, + limb1: 0x7903e24fce4b190f540b18d7, + limb2: 0x11581b56e892d96b, limb3: 0x0 }, u384 { - limb0: 0xc1fca14a0924a111b23745cc, - limb1: 0xd156e748d315059c9267a816, - limb2: 0xc71d124f1c4929fd, + limb0: 0xc69e243b21aee25ebdd5d2c3, + limb1: 0x5e3b6eb992f44539168f9a20, + limb2: 0x8fc6e29dc52fc425, limb3: 0x0 }, u384 { - limb0: 0xd7c09d4cfb26494b5f907a8f, - limb1: 0x61c7ca5906ef3b0e06731cb, - limb2: 0x7f00ac67ca454dd5, + limb0: 0x952623d86c96bcb6203eb000, + limb1: 0xad304e9723cc0d35ebd036c5, + limb2: 0x451b729557af1ac9, limb3: 0x0 }, u384 { - limb0: 0xa78ef396f9cf8d7aa38d53ff, - limb1: 0x98ef65a518d3cbf4bb43416a, - limb2: 0xb00569c4ca5a5c42, + limb0: 0xe941a1623cd8c67178b7cfae, + limb1: 0x5a8847e69c25de98aadef47c, + limb2: 0xd843abd5b0f18270, limb3: 0x0 }, u384 { - limb0: 0x6916a5c05b292a032f02c7c9, - limb1: 0xd3d7562187e3c8b71f846a61, - limb2: 0x827dd4d2afae5162, + limb0: 0x7012eba22b18e7b501067ccf, + limb1: 0xea455f40df6a0faf62eda5c6, + limb2: 0x3473d09fc61f021c, limb3: 0x0 }, u384 { - limb0: 0x5d89e79bbaa0bf61f0e9dfca, - limb1: 0xb7eb46ec6fa18b65024f6eca, - limb2: 0x7e108cf5888293bc, + limb0: 0x569e8070b9afe5c25c61d2c2, + limb1: 0xc5a15cb426885e370a427f39, + limb2: 0xbe94bc0ae09d5bee, limb3: 0x0 }, u384 { - limb0: 0xdda24eb2d8f26bb082a50ac4, - limb1: 0xf665dfd217057b3f8b3bee97, - limb2: 0x7a5d879330ba0876, + limb0: 0x961340d65d0bf6cb64bb7418, + limb1: 0x6bab172a2fc4e4043e97c838, + limb2: 0xc584352534db7a43, limb3: 0x0 }, u384 { - limb0: 0xc30f086cc81fcebefe41e2ea, - limb1: 0x383ca47bd4995bb56d3e968, - limb2: 0xfc94561b4e5cd287, + limb0: 0x6cd6b55998aefc2f0d247f06, + limb1: 0xd6ba0e74129fb4452049d35d, + limb2: 0xf9dba1cc9e07194d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28231,90 +28205,90 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x6274136b326961b7396a8ac9, - limb1: 0x4f9341363fd853c433e648bc, - limb2: 0x2887c39c25376206, + limb0: 0xa50c6e21b552237fbc95d5b, + limb1: 0xb71daeaddfb92b87a4968be5, + limb2: 0xa1460f84538d2ae1, limb3: 0x0 }, u384 { - limb0: 0x7bf06fa84ac10e35fdd581b2, - limb1: 0xca020e76854fd47512d09673, - limb2: 0x51d071f42b64d34f, + limb0: 0x5978977fbd7bde70aa1fdf7f, + limb1: 0x331ff7cb876dce1b76086da6, + limb2: 0x806f0a9cf5158a8f, limb3: 0x0 }, u384 { - limb0: 0xb8ea398ec3643bc95233adef, - limb1: 0xbfff60ce5270c6198d882e94, - limb2: 0xf5b9032c7ec8a3e4, + limb0: 0x4ee58b37b015cfd0a935a0d8, + limb1: 0xca87861e333b3d196f27e99b, + limb2: 0x7b583ae78792d48c, limb3: 0x0 }, u384 { - limb0: 0x4ef372d4a8ffe33ef0ed0a20, - limb1: 0xc4d531d326ca13831932bf5e, - limb2: 0x9d6fa19463bba40d, + limb0: 0x34f340f271537ba20738e38, + limb1: 0x3542205f64c0c0a40d6be3f, + limb2: 0x2d1407134a23e23a, limb3: 0x0 }, u384 { - limb0: 0xb8ffdc5c20b8ff4947b2a4be, - limb1: 0xda3941b8f78967e04f003a49, - limb2: 0x45e22fc75ce46f9e, + limb0: 0x6c0248b2e36007831a4117ca, + limb1: 0x9d308246eb851f3acd0d9b61, + limb2: 0xbabb7c09317e050, limb3: 0x0 }, u384 { - limb0: 0x5acfcc90d90b82fa11b2e00d, - limb1: 0x2ec2e770fc0023d100e92d49, - limb2: 0x90a6c3f49ea283cf, + limb0: 0xc56379cc2fe305547ebe1ec9, + limb1: 0x3f9751dde3150fcd8c4dcc9, + limb2: 0x363ca95928fd86c4, limb3: 0x0 }, u384 { - limb0: 0xbbea96e7ba024cc9f6ebe5d3, - limb1: 0xffffffffffffffff1e3ff26f, - limb2: 0xffffffff00000000, + limb0: 0xe2e117d876db790ce1dd2bdb, + limb1: 0x800000000000000009e738a1, + limb2: 0x7fffffff80000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x97d8e566ddc174d461013dac, - limb1: 0x4c154e5460c5f4f4f80e70d5, - limb2: 0x5ef3e28315a76545, + limb0: 0xb1a700d01c7e6bbcdfec5bdc, + limb1: 0x3866d498d964f9f8b21a47de, + limb2: 0x92d1fd89894925a3, limb3: 0x0 }, u384 { - limb0: 0xeeaf1858cae5ebf85df43f8a, - limb1: 0xb8a23f6fc4973f2e350344f, - limb2: 0xf89f0a9398611975, + limb0: 0xf7aeffc38b44ec759d77ac51, + limb1: 0x2ea7120850b4fd9f2e715c32, + limb2: 0x7c76a0593abef608, limb3: 0x0 }, u384 { - limb0: 0x8e7c2e1f263e96e9581cd285, - limb1: 0x4a99d4a47ea87dd88b24734c, - limb2: 0x5c69383598ccc289, + limb0: 0x2bb286be0e0012728544bc2a, + limb1: 0x22de055b6a2cc98f3917a87a, + limb2: 0x219f25bd12c14793, limb3: 0x0 }, u384 { - limb0: 0xce52afe1e25bdfa04e4fdebd, - limb1: 0xebc14c47a485c6c176f24e4c, - limb2: 0xde365f7fd7db38bd, + limb0: 0xb1da8da9506a0852ba1af48a, + limb1: 0xaced066829713570b7f01adc, + limb2: 0x4dd13bb7c2aeb122, limb3: 0x0 }, u384 { - limb0: 0xce1fda387534f2a33ea1ae3c, - limb1: 0xb71095b9af1d9935ac743bf4, - limb2: 0x7e93f4e9270ba91c, + limb0: 0x6554642972da1c7fe4ad885d, + limb1: 0x8c55de036a0699e53ab9ebc, + limb2: 0x3958a26e92ba8f02, limb3: 0x0 }, u384 { - limb0: 0xfba536647be1cabaeb673ea4, - limb1: 0x73402e1ade75e230c8b92758, - limb2: 0x9a0ba04cf316cb2b, + limb0: 0x388bd9bfe702f4517410ceba, + limb1: 0xc79f38c2999c1837ad889f2, + limb2: 0xb3a52a6a4c90116, limb3: 0x0 }, u384 { - limb0: 0x14f0076e5d2d831670717220, - limb1: 0x967cda0223ce4796f0e64385, - limb2: 0x70721f119e51f347, + limb0: 0x3c489516a55d059ded718fde, + limb1: 0x78b618aeb542150415ff96d2, + limb2: 0x2eb6b25c69ab010a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28322,114 +28296,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x5fa2834e6e916786a3b10c07, - limb1: 0x8d7e111d342597926f03c744, - limb2: 0xe3a74e2aced7bfc0, + limb0: 0x26a254324a5c67cd67cc15ea, + limb1: 0xba7d9dbf8af1f932ddca2817, + limb2: 0x1758ab798e06823a, limb3: 0x0 }, u384 { - limb0: 0xec1534cf2fc78409203b41c8, - limb1: 0x96737c2332c9456b5ac4a4f7, - limb2: 0x58c2bd748a33e55d, + limb0: 0xf5feafab7c55cd0a3bed0d9, + limb1: 0xd028f713fb811ceeb338943, + limb2: 0x283989b35658b3ce, limb3: 0x0 }, u384 { - limb0: 0xe42ef90c025e692cfc9738bc, - limb1: 0x5422422e9612ddd47a75797f, - limb2: 0x374209c8a862026, + limb0: 0xd32ed4802487edd1107c21a, + limb1: 0xb51d098c6f652a75a1736406, + limb2: 0x3ebe041c53ac05dc, limb3: 0x0 }, u384 { - limb0: 0xee1ee544ec20419c0f4ce2ca, - limb1: 0x8eeeb5667e1149767446acbd, - limb2: 0xdd91fe6fff3b618b, + limb0: 0x6aa1117dd53273fc83fa704e, + limb1: 0xa498f62e0b14aca559f29b3c, + limb2: 0xdc0e8a886a452c9e, limb3: 0x0 }, u384 { - limb0: 0x1bd3a83124fffac0d278d881, - limb1: 0xffbdbffbe407db6a310b82d, - limb2: 0x1b80a8c166defaf7, + limb0: 0xf1cbe842fb4fe46872c3d095, + limb1: 0x6dad201f41436b3e4e3d8b65, + limb2: 0x5d226ca05379777f, limb3: 0x0 }, u384 { - limb0: 0x2a0ec2533ff52e7f129004dd, - limb1: 0x500da923268fd7e3c35e1415, - limb2: 0x67a6edb42f79b9e3, + limb0: 0x6d1fa9ac07c6438a1d946c52, + limb1: 0xaf78680883865a40dd358f9f, + limb2: 0x394998ad0b3097c, limb3: 0x0 }, u384 { - limb0: 0x654b4b7294b9fdef4d25d5f5, - limb1: 0xc78737e2aebb2555368d6443, - limb2: 0x2696dcaad0dfa9a2, + limb0: 0x5b065b2a94b1ba7d45a649ab, + limb1: 0x31872ca25a0a0a4a697cb915, + limb2: 0x32f79d773947c2f1, limb3: 0x0 }, u384 { - limb0: 0x6b2c52cafd9e7ed2216d6f6c, - limb1: 0xbc6f0f03f140eb4b1d5864c9, - limb2: 0x8d0f0d3bf298311a, + limb0: 0x44a284f4cca170c8f3493608, + limb1: 0x6c5ae487789464fc425b6b3c, + limb2: 0x7f7f82303509791b, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x12b9491a33be20bb65f1908f, - limb1: 0x23997c2cb84bf9bf3d1999cd, - limb2: 0xe6f394700ee4844a, + limb0: 0x882b96c7d8ea4062e14a9dfc, + limb1: 0xd4c7b2de939eb63ea158d5a7, + limb2: 0xab98cdce20bb2e62, limb3: 0x0 }, u384 { - limb0: 0xcb62b03081ea70ebaf46923f, - limb1: 0xa3a06bdbdbc17343fafbd911, - limb2: 0xe94e4451de52edb7, + limb0: 0x5f1e6540f3921e231d86aed8, + limb1: 0xf640e3512958525bbdb6a759, + limb2: 0xb90e513b03a3c3e3, limb3: 0x0 }, u384 { - limb0: 0xef7680336d90e4604255782f, - limb1: 0x56f112c35cd1205b3b725ffe, - limb2: 0x70aaa665eedff9ea, + limb0: 0xedcda82ab14dfcc10d4a8a2f, + limb1: 0x23cff72aa28a32f61816f407, + limb2: 0x161ee1be82c46179, limb3: 0x0 }, u384 { - limb0: 0x23d1fcabd2ed148e430b3494, - limb1: 0x6afbeac7d69380b06635cb32, - limb2: 0x2acee74b64fd96fa, + limb0: 0xe3d8ff84c4f20d735e0bcdf1, + limb1: 0xc426e0c2771fa9878e0310a1, + limb2: 0x6cfa52e87e59d14c, limb3: 0x0 }, u384 { - limb0: 0xa021c565b3f32337e8e63cb5, - limb1: 0x629b30da524d807190c3892c, - limb2: 0xc3bc4fd375125410, + limb0: 0x857017325b03d9f93fa55bec, + limb1: 0x3866b0e41480adb52eeb90c7, + limb2: 0xea0bdf57bdf02faf, limb3: 0x0 }, u384 { - limb0: 0xaa6c897203f3b6ab0fff39f1, - limb1: 0x6910b00b590783978ea3b884, - limb2: 0x3057fbca8dfe810f, + limb0: 0xb45790982b09c82c44c4f1fb, + limb1: 0x51a050003fcb0d5a6c7f7c9f, + limb2: 0x826331df32c90924, limb3: 0x0 }, u384 { - limb0: 0xbaa1a236d18d38660f4208f7, - limb1: 0x676d886ed4ead37d01fa014d, - limb2: 0xef43210bef492090, + limb0: 0xfab70eb102c359e3f144c571, + limb1: 0xd34f06094469fcce1d87fc25, + limb2: 0x9ff525841872d204, limb3: 0x0 }, u384 { - limb0: 0x5ba374e3997aa59e151fb826, - limb1: 0xa785c508ba4b492d3ede7817, - limb2: 0x8803cd8bf650632e, + limb0: 0x7cce55dbbe9147e4442b390e, + limb1: 0x528ed1298d72b14e76c9e0f6, + limb2: 0x7fac131fff41fca, limb3: 0x0 }, u384 { - limb0: 0xfba536647be1cabaeb673ea1, - limb1: 0x73402e1ade75e230c8b92758, - limb2: 0x9a0ba04cf316cb2b, + limb0: 0x388bd9bfe702f4517410ceb7, + limb1: 0xc79f38c2999c1837ad889f2, + limb2: 0xb3a52a6a4c90116, limb3: 0x0 }, u384 { - limb0: 0x14f0076e5d2d831670717220, - limb1: 0x967cda0223ce4796f0e64385, - limb2: 0x70721f119e51f347, + limb0: 0x3c489516a55d059ded718fde, + limb1: 0x78b618aeb542150415ff96d2, + limb2: 0x2eb6b25c69ab010a, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28439,9 +28413,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x6966d59f4b57ca8a6210b294, - limb1: 0xaa66e302e836517c2ca9a259, - limb2: 0x7064276b240b1d82, + limb0: 0x9982f48b612b4c8748204acf, + limb1: 0x4c863510dac0802bce969699, + limb2: 0x88759f7c94f64ca7, limb3: 0x0 }, u384 { @@ -28454,15 +28428,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x669c749649e852784a72f634, - limb1: 0xae2b520aef1ac043664f7487, - limb2: 0xd59dbf174e891ac8, + limb0: 0xdb320be1dcb75caba35e0ca8, + limb1: 0x2814608ec1397058c3237fd0, + limb2: 0x39ecb50ec6841adf, limb3: 0x0 }, u384 { - limb0: 0x7de03655dc9956f9fa531f47, - limb1: 0x5fb5901c59bc8f85176ee26c, - limb2: 0x63f78d81289b8cb2, + limb0: 0x7ad76d90c22c90ac831eb2a4, + limb1: 0x2da1418639325132d37fceda, + limb2: 0x89b3c660efdf10, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28470,54 +28444,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x2785c309f89b0774fcb477d3, - limb1: 0x54596fe626d19caacc027729, - limb2: 0xb29aee07474af303, + limb0: 0x3af57e250a966255c12e493c, + limb1: 0xadf3a53a69f2ebeab9140e4a, + limb2: 0xb9ece0bbe98d0067, limb3: 0x0 }, u384 { - limb0: 0x2824200d793d1a165855b975, - limb1: 0x9f96424c4388db70756274e9, - limb2: 0xf2133a5c76dd920a, + limb0: 0xdd0fcd3d43553037c0286c96, + limb1: 0x89ce60d27d799272c982e519, + limb2: 0xec06fccf5b0e3ce8, limb3: 0x0 }, u384 { - limb0: 0x50604883cd25833ee3d68f74, - limb1: 0x566bb3dc8e87a38ba6cb89fb, - limb2: 0xb1951e296c6fe9f0, + limb0: 0x6926cac5bff1fd659dfb563, + limb1: 0x47a0c192e58ea07efb9da080, + limb2: 0x3507155024ee3ae5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x8e71a343a5eac041802d56d9, - limb1: 0x48761caf5af4dde588bdf62a, - limb2: 0xcd2c28e6234aa33, + limb0: 0xbb22a7eec1b3b1293f55ab42, + limb1: 0xaaaca0bb03635b87a934d844, + limb2: 0xe7d873741e65a511, limb3: 0x0 }, u384 { - limb0: 0xed5f6fc3528b93d334f2d6d1, - limb1: 0x24b9cb17518d4039770c5cdd, - limb2: 0xd4ab1e50f7f6387e, + limb0: 0x9a5f884e1877179b863078d7, + limb1: 0x180380e19deb7007f1086875, + limb2: 0x92987296db7eae01, limb3: 0x0 }, u384 { - limb0: 0x52b30df4a602375038d90275, - limb1: 0x94cb0d006962d82d1ed05f6c, - limb2: 0x2edf8d543067edd1, + limb0: 0x5bcd6843f5488a389e76485f, + limb1: 0x2b07f8c2cb019323ea9d9a21, + limb2: 0x59291a85876af6b7, limb3: 0x0 }, u384 { - limb0: 0x669c749649e852784a72f631, - limb1: 0xae2b520aef1ac043664f7487, - limb2: 0xd59dbf174e891ac8, + limb0: 0xdb320be1dcb75caba35e0ca5, + limb1: 0x2814608ec1397058c3237fd0, + limb2: 0x39ecb50ec6841adf, limb3: 0x0 }, u384 { - limb0: 0x7de03655dc9956f9fa531f47, - limb1: 0x5fb5901c59bc8f85176ee26c, - limb2: 0x63f78d81289b8cb2, + limb0: 0x7ad76d90c22c90ac831eb2a4, + limb1: 0x2da1418639325132d37fceda, + limb2: 0x89b3c660efdf10, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -28527,19 +28501,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x97de119508268d6fbb76ed2b, - limb1: 0xb97d816695b53e2058f43273, - limb2: 0x428bc9d4667e54f8, + limb0: 0x61fba92031bd48837bbc6730, + limb1: 0x3b32d20f982f0198e16afa0, + limb2: 0x67a17e93ab10f406, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x350a30be8a3d48d7080e7b3a, - limb1: 0x2d7dc86bc4334fa7d0bfa0ac, - limb2: 0x38384dd90e655550, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 3 @@ -28547,15 +28514,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x49e1cc840ce255b1c7ac7cb5, - limb1: 0xfbd2dc53478116e4240e674c, - limb2: 0x1fbf541fcbf4b713, + limb0: 0xac22c925ed532f00b52d0c13, + limb1: 0xa33a300d3f83446f90ae5db8, + limb2: 0xe1780bfb2e10b0b9, limb3: 0x0 }, y: u384 { - limb0: 0x7d19dac6ed078a6a65f81dfc, - limb1: 0x5d7b2940f918f8a1246edeb6, - limb2: 0x12c7bff788d0aeb6, + limb0: 0xd0eb91756f5b07e0bc2c5d02, + limb1: 0xdf20e508adb5cc4a11f4b202, + limb2: 0xa0c6de739e75bdb8, limb3: 0x0 } } @@ -28568,99 +28535,99 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x727f3d7a35a228473e60cc7c, - limb1: 0x762066bd812e75acb74e3427, - limb2: 0x99d823b7910dcbee, + limb0: 0x32fec0685846eb0aaf2ace75, + limb1: 0x96f16d10e806dc0753b16a82, + limb2: 0x36616707c4decf22, limb3: 0x0 }, y: u384 { - limb0: 0x6f105d37f6b828802bebcf6a, - limb1: 0x8b0473a133f540dde47b9f31, - limb2: 0x2eb688e127784b31, + limb0: 0x7ed874ea9159533d50e74a41, + limb1: 0xdf33466fde9a16802d85955b, + limb2: 0xcaff1791587ae627, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6e2ff0c5e4304001786de6d4, - limb1: 0xbdae22c04b7047173bb9b667, - limb2: 0x6eb55edf1854ebe7, + limb0: 0xd331d283c134f8d7ea8c67da, + limb1: 0xdda0781f915ffddcef30044a, + limb2: 0x89510bc8be8ee17, limb3: 0x0 }, y: u384 { - limb0: 0x55943ef3e5039d6fe6621617, - limb1: 0x45caf50ae1ff61d6f8a817a6, - limb2: 0x8019f3cc5dac0215, + limb0: 0xd9c3128cda2990d6f6b560e5, + limb1: 0xee58d14a9dd0e625a01b40ff, + limb2: 0xb9a28fa0376ebb38, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x4a2e2b41b5e165015478cd8d, - limb1: 0x87db25d6fb3924a9ab0c3894, - limb2: 0x4876810c807478ac, + limb0: 0xff3fe2d16064155c56e11439, + limb1: 0x538254588ee4f7d9bebc0d4c, + limb2: 0xcfd0324412079172, limb3: 0x0 }, y: u384 { - limb0: 0x446bbdf82df05f9854259746, - limb1: 0x77a396a2e31fc1342a5df961, - limb2: 0x82e2240e353211f7, + limb0: 0x8fa7e11451f502b16a55122c, + limb1: 0xdd4efc0b483129473f96ae2e, + limb2: 0x26167f678d11bb1a, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x91c595299c8073bc3e08e797, - limb1: 0xdeb57464b05a4cbbdc5b4589, - limb2: 0x426079005266ac1e, + limb0: 0x8e1456b018c23af44f69d8c2, + limb1: 0xd2af547c1a27af8293ecc8a4, + limb2: 0x3f85ec524c50622, limb3: 0x0 }, y: u384 { - limb0: 0x7be7749bd00d69978fc7ece9, - limb1: 0x8944dbb70102faf6d025f021, - limb2: 0x6e1e85ac2f58f934, + limb0: 0xb7ac2b3f3bca39440eac6f98, + limb1: 0x9484c3876ec19688a62dbfd1, + limb2: 0xfdd869b584df5356, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x392bc2472af34a9552b86945, - limb1: 0xeeaded03cf08b74900b17ccf, - limb2: 0x34c5bdd555780f, + limb0: 0x831bb58df3bb4e243e73fe29, + limb1: 0x26937dd36abac9a65fc237cf, + limb2: 0xab84652ae59d0d5d, limb3: 0x0 }, y: u384 { - limb0: 0x368848973a503d08fb4dbf84, - limb1: 0x1265910b35ff61f7efcc409b, - limb2: 0xecdf3e8c6a77be14, + limb0: 0xebea095a8468beedb7bdaf64, + limb1: 0xca6ceeb5bb2cb9ea6359bced, + limb2: 0x85e1a8290dd47146, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xa92f2f62f2b32e1afa593642, - limb1: 0x67611f83205d9c0779158d0c, - limb2: 0x619719b68b6509c0, + limb0: 0xa1b33213004cee83abc8b6c3, + limb1: 0x723edeade9e470cf0536a22e, + limb2: 0x2e81fd8008489c55, limb3: 0x0 }, y: u384 { - limb0: 0x50b6e8ae2c52b7c365118699, - limb1: 0xeb3e1c4c384c63f707b9094b, - limb2: 0x5beda8f2fa28143c, + limb0: 0x426783df249070aeab58b77c, + limb1: 0x630a03af8687bd90cea3fd8a, + limb2: 0x888c5e3bedaab995, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x50aecefab093c4cf1ab994a9, - limb1: 0x725f7114a2560a5d31723545, - limb2: 0x143539deb75f4202, + limb0: 0x2f04b1d8afdfcfa800dd34b6, + limb1: 0x37fcbfc72cf7548fa71f1a3a, + limb2: 0xbdc6b30df491c5e9, limb3: 0x0 }, y: u384 { - limb0: 0xd57f8ddc0cf29c15f4cc92c5, - limb1: 0xcc498ad46fe531e69837bc1e, - limb2: 0xba2dd0dcd0b46993, + limb0: 0xb6e2c6e7d4a7502894da22ef, + limb1: 0x6290b060fc239023d87d1a0d, + limb2: 0x63cab3ce20923c47, limb3: 0x0 } }, @@ -28668,25 +28635,25 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x5c6be59658f16c91dd6d47e490e0172f, high: 0xb7a02afd30d6863f11c272d801267789 + low: 0x71f540832b023b48928c3d2429d8609d, high: 0x3f9e19092b4493d3eddba431fca93ba8 }, u256 { - low: 0x789a28298a663359abe0a1771c5e1698, high: 0xd763b159ed9a189a50852f4f0b09ec41 + low: 0x2f37aa0630c1ab12e5942f1f04e41e59, high: 0x9299ad9bac06761ae06687156ea07cb8 }, u256 { - low: 0x67fece7f1ff06dcf45aa79bd855fb35, high: 0x2011bc8ae7bf9a9664849eb55096ccf2 + low: 0xa695349c7b5a17766fe235637055fef, high: 0xe474aa307a1082327a879e1ff898b60c }, u256 { - low: 0xa2b4d215c3c5707dfe292238fbfbe602, high: 0x2462c274abbf66c7680aee2a466bd06f + low: 0x310503075926102e0611efd86ff021a5, high: 0xd12c52fc3e71bc33c6e628bbe511ad74 }, u256 { - low: 0xddda17a36779de0d25c1df67987d616d, high: 0x29b496640f52361d82f1240d4e5c6dd2 + low: 0x22d968bf58c95e8dfb42f72af61d316d, high: 0x705f19c57a02a486a647bd0adb906af2 }, u256 { - low: 0xe91e70af224af354e4907635201910c6, high: 0xb75db71ea4531fe9b48f653e7b1bcb6b + low: 0xaabc189de0cfdc87b4a1be91d8ad2415, high: 0xe9844e83d4244ba8f4de69b85d213410 }, u256 { - low: 0xbad4c2880bf56ed8b93c2989c399fd7f, high: 0xd2d072230b20ee0f85050a17d2e1ed4d + low: 0xabfd441068a3a23c90d9274641b81472, high: 0xbf16ad921fab9445629d19806d8fbbca }, ] .span(); @@ -28694,68 +28661,71 @@ mod msm_tests { array![ ( array![ + -0x1, + 0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, - -0x1, - -0x1, + 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x1, + -0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, 0x1, 0x1, + 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x0, - 0x0, 0x1, 0x0, + -0x1, 0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x1, + -0x1, + 0x0, + 0x1, -0x1, 0x0, -0x1, + 0x0, 0x1, + -0x1, 0x1, -0x1, 0x0, @@ -28764,16 +28734,13 @@ mod msm_tests { 0x1, 0x1, 0x1, - 0x1, 0x0, - -0x1, 0x0, 0x0, -0x1, - 0x1, -0x1, - 0x1, - 0x1, + 0x0, + 0x0, 0x1, ] .span(), @@ -28781,85 +28748,84 @@ mod msm_tests { 0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, -0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x0, + -0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, 0x0, - 0x1, -0x1, - 0x1, - 0x1, + 0x0, + -0x1, + -0x1, -0x1, -0x1, - 0x0, - 0x1, - 0x1, -0x1, - 0x0, -0x1, - 0x1, - 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, 0x1, - 0x0, -0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x1, 0x1, 0x1, 0x0, - -0x1, - 0x1, 0x1, + 0x0, -0x1, + 0x0, -0x1, - 0x1, -0x1, - 0x1, -0x1, - 0x1, + 0x0, 0x0, -0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x0, + 0x0, + -0x1, -0x1, 0x1, 0x1, + -0x1, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, - -0x1, 0x0, 0x0, - 0x1, -0x1, + 0x1, + 0x0, -0x1, + 0x1, + 0x1, ] .span() ), @@ -28867,205 +28833,190 @@ mod msm_tests { array![ -0x1, 0x0, - 0x0, - 0x0, 0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x1, 0x0, - -0x1, + 0x1, 0x1, -0x1, -0x1, - -0x1, - 0x1, - 0x0, 0x1, + -0x1, 0x1, - 0x0, -0x1, - 0x0, -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x0, - -0x1, - 0x1, 0x1, -0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x0, - 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, 0x1, - -0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x1, - 0x1, + 0x0, -0x1, 0x1, + 0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, + 0x0, + -0x1, + 0x0, + 0x0, 0x1, -0x1, + -0x1, 0x0, + -0x1, + 0x1, 0x1, + -0x1, 0x1, 0x1, - 0x0, 0x1, + -0x1, ] .span(), array![ - 0x0, - 0x0, + -0x1, 0x1, -0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, - -0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, 0x0, - 0x0, - 0x0, + -0x1, + 0x1, -0x1, -0x1, 0x0, -0x1, + 0x0, 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, 0x0, + -0x1, 0x1, 0x0, + 0x1, -0x1, + 0x0, -0x1, 0x0, 0x1, - 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x1, 0x1, - -0x1, - -0x1, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, -0x1, - 0x0, - -0x1, + 0x1, -0x1, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, + 0x1, 0x1, 0x0, - -0x1, + 0x1, 0x1, -0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, - -0x1, - -0x1, - 0x0, - -0x1, - -0x1, ] .span() ), ( - array![ - 0x0, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, - -0x1, - 0x0, + array![ -0x1, - 0x1, - 0x1, -0x1, -0x1, - 0x1, 0x0, 0x0, - 0x0, - 0x1, -0x1, 0x0, - -0x1, 0x0, 0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x0, -0x1, 0x1, + 0x0, 0x1, 0x1, 0x1, @@ -29073,226 +29024,223 @@ mod msm_tests { -0x1, -0x1, -0x1, - 0x1, - 0x0, - 0x1, - -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, - 0x1, - -0x1, - -0x1, 0x0, 0x0, + -0x1, + -0x1, + 0x1, 0x1, 0x0, 0x0, + 0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, + 0x0, + 0x1, 0x1, - -0x1, 0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - ] - .span(), - array![ -0x1, - 0x1, - 0x0, -0x1, - 0x0, - 0x1, -0x1, -0x1, + 0x1, -0x1, 0x0, + 0x0, + 0x0, -0x1, 0x1, -0x1, - 0x1, - 0x1, -0x1, + 0x0, 0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x1, + ] + .span(), + array![ + 0x0, 0x1, 0x1, + 0x0, 0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x0, - -0x1, + 0x1, 0x0, -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x1, -0x1, + 0x1, + 0x0, 0x0, - -0x1, 0x1, - -0x1, 0x0, - -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x0, + -0x1, 0x1, - 0x0, -0x1, 0x0, - 0x1, 0x0, 0x1, - 0x0, + 0x1, 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x1, - 0x0, + -0x1, 0x0, -0x1, 0x1, - 0x0, 0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, - -0x1, - -0x1, + 0x1, 0x0, -0x1, -0x1, 0x1, - 0x0, - -0x1, - ] - .span() - ), - ( - array![ -0x1, 0x0, - 0x0, - -0x1, + 0x1, + 0x1, + 0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, + -0x1, 0x0, -0x1, -0x1, 0x1, 0x0, + 0x0, + 0x1, 0x1, 0x1, -0x1, 0x0, 0x1, 0x1, + -0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, - 0x0, - 0x1, + -0x1, + ] + .span() + ), + ( + array![ -0x1, 0x1, 0x0, -0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x1, + 0x0, -0x1, 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, -0x1, -0x1, - -0x1, + 0x1, 0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, - 0x1, + 0x0, -0x1, 0x0, -0x1, 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, - -0x1, - 0x1, 0x0, + -0x1, 0x0, 0x0, 0x0, -0x1, -0x1, - 0x1, -0x1, 0x0, + -0x1, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, - 0x1, -0x1, - 0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, - ] - .span(), - array![ -0x1, -0x1, 0x1, - 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, 0x0, @@ -29300,191 +29248,209 @@ mod msm_tests { 0x0, 0x0, 0x1, - 0x0, + -0x1, + ] + .span(), + array![ 0x1, 0x0, + 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, -0x1, 0x0, -0x1, -0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x0, -0x1, 0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x1, -0x1, - -0x1, 0x1, - 0x0, - 0x0, + 0x1, + 0x1, 0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, + 0x1, + 0x1, 0x0, -0x1, + -0x1, + 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x1, 0x0, 0x0, 0x1, -0x1, + 0x1, 0x0, 0x1, -0x1, 0x1, -0x1, - 0x1, + 0x0, -0x1, -0x1, 0x1, - -0x1, 0x0, -0x1, 0x1, + 0x1, + -0x1, + 0x0, + 0x0, -0x1, + 0x0, 0x1, 0x0, + -0x1, + 0x0, + -0x1, + -0x1, 0x0, + -0x1, 0x0, -0x1, + -0x1, ] .span() ), ( array![ - -0x1, - 0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, 0x0, - -0x1, - 0x1, 0x0, - 0x1, - -0x1, - 0x1, - -0x1, - 0x1, -0x1, - 0x1, - 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x0, -0x1, -0x1, 0x0, - -0x1, - -0x1, - 0x1, 0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, 0x1, 0x0, + 0x1, + 0x0, + 0x1, 0x0, 0x0, 0x0, - 0x1, -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, + -0x1, + 0x0, + 0x1, 0x0, 0x1, 0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, -0x1, 0x0, 0x0, 0x0, 0x0, + 0x1, + 0x0, + 0x1, + 0x0, 0x0, 0x0, 0x1, + 0x0, 0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, 0x1, + 0x0, + 0x1, 0x1, -0x1, - -0x1, 0x1, 0x0, 0x0, - 0x0, + 0x1, + -0x1, + -0x1, + 0x1, + -0x1, 0x0, -0x1, + 0x1, + 0x1, + 0x0, -0x1, ] .span(), array![ 0x0, - -0x1, - -0x1, 0x0, 0x1, - 0x0, - -0x1, -0x1, 0x1, - -0x1, 0x0, + -0x1, 0x1, 0x0, -0x1, - 0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, - 0x0, - 0x0, - 0x0, + 0x1, -0x1, + -0x1, + 0x1, 0x1, + 0x1, + 0x1, + 0x0, -0x1, 0x0, + 0x0, 0x1, 0x1, 0x1, @@ -29493,50 +29459,50 @@ mod msm_tests { -0x1, 0x0, 0x1, - -0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, - 0x0, - -0x1, 0x1, - 0x0, 0x1, 0x0, - -0x1, + 0x1, 0x1, 0x1, -0x1, 0x0, 0x1, + -0x1, 0x0, -0x1, 0x1, - 0x0, - 0x0, - 0x0, + -0x1, -0x1, 0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, 0x0, - 0x1, + 0x0, 0x1, -0x1, + 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, 0x0, + 0x1, -0x1, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0x1, ] .span() ), @@ -29544,149 +29510,153 @@ mod msm_tests { array![ -0x1, 0x0, - -0x1, + 0x1, + 0x0, -0x1, 0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, 0x0, + -0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, 0x1, 0x0, 0x1, 0x1, + 0x0, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x1, + 0x0, + -0x1, 0x1, 0x0, + -0x1, 0x0, 0x1, + -0x1, + 0x0, 0x0, 0x1, -0x1, + -0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, 0x0, 0x0, -0x1, - 0x1, - 0x0, - 0x1, + -0x1, + -0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, - 0x1, + 0x0, -0x1, - 0x1, -0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, + 0x1, + -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, - 0x0, - -0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, - -0x1, - 0x0, 0x0, -0x1, - 0x1, 0x0, -0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, -0x1, ] .span(), array![ - -0x1, - -0x1, 0x1, - -0x1, 0x0, - 0x1, 0x0, - 0x1, + 0x0, -0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, 0x1, -0x1, 0x0, - 0x0, + 0x1, -0x1, 0x0, - 0x0, + 0x1, 0x0, 0x0, 0x1, 0x1, - -0x1, - -0x1, - 0x1, 0x1, + 0x0, 0x1, 0x0, -0x1, - 0x0, 0x1, + -0x1, + -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x0, 0x1, -0x1, + 0x1, + 0x1, + -0x1, + -0x1, + 0x0, -0x1, 0x1, + -0x1, 0x1, 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x1, - 0x1, - 0x0, 0x0, 0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, - -0x1, + 0x1, + 0x1, -0x1, -0x1, -0x1, @@ -29696,17 +29666,13 @@ mod msm_tests { 0x0, 0x0, -0x1, - -0x1, - 0x0, 0x0, 0x1, 0x0, -0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x1, + 0x0, -0x1, -0x1, ] @@ -29714,171 +29680,171 @@ mod msm_tests { ), ( array![ - 0x1, - -0x1, -0x1, - 0x0, -0x1, - 0x0, 0x1, + -0x1, 0x0, 0x0, -0x1, - 0x1, - 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x0, - 0x1, - 0x0, - 0x0, 0x0, -0x1, -0x1, 0x0, - 0x0, -0x1, -0x1, - 0x0, - 0x1, -0x1, 0x1, - 0x1, - 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, - 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x1, + -0x1, 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, + 0x0, 0x1, 0x0, -0x1, 0x0, - -0x1, - -0x1, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x0, + 0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x1, + 0x1, + -0x1, + -0x1, + 0x0, -0x1, 0x1, + -0x1, 0x1, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, 0x0, 0x1, + 0x1, + -0x1, + 0x1, 0x0, + -0x1, + -0x1, 0x0, + -0x1, 0x1, -0x1, -0x1, ] .span(), array![ - 0x1, - -0x1, - -0x1, - -0x1, - 0x1, -0x1, 0x0, 0x1, - -0x1, 0x1, - -0x1, + 0x1, -0x1, 0x0, 0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x0, 0x0, 0x1, 0x1, - 0x0, + 0x1, + 0x1, -0x1, 0x0, + 0x0, 0x1, - -0x1, + 0x0, 0x1, -0x1, 0x1, 0x0, 0x0, - -0x1, 0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x0, 0x0, - -0x1, 0x1, 0x0, 0x0, - 0x0, -0x1, 0x0, 0x1, - 0x0, 0x1, -0x1, - 0x1, - 0x1, + 0x0, 0x0, -0x1, + 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, + 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, - 0x1, + -0x1, + -0x1, + 0x0, 0x0, + -0x1, + 0x0, + -0x1, 0x0, 0x0, 0x0, 0x1, 0x1, - -0x1, - 0x1, 0x1, - 0x0, + -0x1, -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x0, + 0x1, -0x1, -0x1, ] @@ -29890,93 +29856,93 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x33017f07250ccde843b427dc, - limb1: 0x45cd845857190fd1ba8974a0, - limb2: 0x794be63f51b01cce, + limb0: 0x6ded0a79105f8694430acda1, + limb1: 0xb0b3482efa57f9e3690ad3f3, + limb2: 0xdce4576a3b539704, limb3: 0x0 }, y: u384 { - limb0: 0x1c18c4b4dac8b780571d4783, - limb1: 0x80f33dee3ee290c48d09cd45, - limb2: 0xc41773c9d47fe5b7, + limb0: 0x6d9e4bc65e3457f20699aaf, + limb1: 0xbc6e2073eb38031f090f5542, + limb2: 0xcfa014a95935ae90, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xa2249bc915312a8febc1d0d2, - limb1: 0x5665af7ecbee0ff2eb0e8163, - limb2: 0xaefbe4e04b7cc9d1, + limb0: 0xf5780d841c4c0a88d79cd4ec, + limb1: 0x1410d89860fdc8dd25a951fd, + limb2: 0x58a22f7094dd394a, limb3: 0x0 }, y: u384 { - limb0: 0xe0f26f4d6b3513fd9f33f93b, - limb1: 0x838a3baab9de7cc4b8be93bf, - limb2: 0x402b8dceadd138fe, + limb0: 0xad63a7a81d6040a820805145, + limb1: 0xcad933e5a45dda64a25d77ea, + limb2: 0x79e3d47f7da9feb6, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x6dfb76ba6f6654b072c3c5e4, - limb1: 0x969edbc9e592658635c6680d, - limb2: 0xbe802260e30de5fd, + limb0: 0xaa395141405e716a52175c6e, + limb1: 0x8150c0fb89b3b3b8c58cbf68, + limb2: 0x597396e10210ba95, limb3: 0x0 }, y: u384 { - limb0: 0x5432fe8e68f55c8766751be4, - limb1: 0xfb15ae1c2c7a699bf3b7fde5, - limb2: 0x556a55453469b722, + limb0: 0x820f2095ed4fdb4b5204a547, + limb1: 0xa10e67ca717d6d9097346d3b, + limb2: 0xb924daf58e846a2e, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xab09f8be73a1a7ba10794b78, - limb1: 0xfa4c8ade1c2b66f31e417b62, - limb2: 0x8ac6c0684e744f63, + limb0: 0x7ce8ba6ff8263f4dc90fe60a, + limb1: 0x2d75c13b5265c651110d190d, + limb2: 0x2f45e1d8c7796cad, limb3: 0x0 }, u384 { - limb0: 0x4e01fbf6bdb41e17f7c3ce36, - limb1: 0xfb4e826a1f99a391106c8ee3, - limb2: 0xb3947d35e8f7e13f, + limb0: 0xb15653a2f506255508f81a1c, + limb1: 0x7d9c30145e742a86e1e8036c, + limb2: 0x237ad0e820cb8b99, limb3: 0x0 }, u384 { - limb0: 0xee30cd536bde036e4ec12c97, - limb1: 0xa84194ada7c10b1a6af0f374, - limb2: 0x9ab89da69a2cf5c5, + limb0: 0xb88b0e402e65ed7053149271, + limb1: 0x710092ce6150fb22fd627462, + limb2: 0xa4a9bcdd90bed36d, limb3: 0x0 }, u384 { - limb0: 0xef24fb2dc64e367202920547, - limb1: 0x51dd5852d7747ba6bf7a1493, - limb2: 0xd72cbad69cb42d47, + limb0: 0x34cb8cde27765f40d3ffce39, + limb1: 0x3a37db53227827c24d770c18, + limb2: 0xcad72a6a3f03a137, limb3: 0x0 }, u384 { - limb0: 0xac3c5eae23179779ad67f17a, - limb1: 0xb9cdbe4ccb0326809730fbed, - limb2: 0x2692cba975b778d7, + limb0: 0x3cad4b0c851ae7a5d332c0a, + limb1: 0x27b3e79e19863ac6232f0da5, + limb2: 0x99df40a3ba423050, limb3: 0x0 }, u384 { - limb0: 0x8ef735e83fd80224f8187a2b, - limb1: 0x6355dd40c75fc98b640cc2c8, - limb2: 0xe03787f9bdaa7632, + limb0: 0x4ab2dd76fdda3293c4db5f59, + limb1: 0x6c449389fe1bbd95bebab768, + limb2: 0x54672ad69857a78c, limb3: 0x0 }, u384 { - limb0: 0xf1b29315b22c4509c152dee7, - limb1: 0x925ca682135d7550009c38fb, - limb2: 0x6177d39a5e3d2f4b, + limb0: 0x65ea9daff0710872bbf4deb0, + limb1: 0xeb2f4e5c82781e8a416921e3, + limb2: 0x1a9ec08aceae3479, limb3: 0x0 }, u384 { - limb0: 0xddbd477d3575687052446bac, - limb1: 0x7fffffffffffffff3b8eab7c, + limb0: 0xb729fbee84033ad958edbfcb, + limb1: 0x7fffffffffffffff15f67fbf, limb2: 0x7fffffff80000000, limb3: 0x0 } @@ -29984,51 +29950,51 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xe10cdfc5ae262eb467bce183, - limb1: 0xf9ce6d20ead67d28a8827f, - limb2: 0xc876e83bdec9a5d8, + limb0: 0xa102f922afabd1c381f67eca, + limb1: 0xc0bddf884ea9e87ddbc9bdc4, + limb2: 0x210c1eec55a1578a, limb3: 0x0 }, u384 { - limb0: 0x482553c51d4d5ff56d4116b6, - limb1: 0x191fa498203664912b48eca, - limb2: 0xdd98407f8ee0f4f2, + limb0: 0x67e0564f2c73ec2fde08b4c3, + limb1: 0xfbf40a46a3fe7c2b87c88eed, + limb2: 0xeedac390619360a2, limb3: 0x0 }, u384 { - limb0: 0x9db7180cbb851b80df3e1593, - limb1: 0xa58bb519424f3fa2b0c3a11d, - limb2: 0xaa730acd0a39d127, + limb0: 0xaaf6c3ebaa511d16e1780109, + limb1: 0x2bb96d7599dffca12b219c7, + limb2: 0x39216e3303fe026, limb3: 0x0 }, u384 { - limb0: 0xe71d13a97b72c1acc36d9979, - limb1: 0xb117c5ced27beee6ba05cb7c, - limb2: 0xcf1375c2ee64aa02, + limb0: 0xfdec1a85edd9bea8df6fef45, + limb1: 0x9ec18cd224f8c6750901f153, + limb2: 0x9640cf560ebbd75b, limb3: 0x0 }, u384 { - limb0: 0xe1584320e7ee8e5d8ca689b5, - limb1: 0xd28c10e8b0a6c31a93eb806e, - limb2: 0xf0d86be547c6563b, + limb0: 0xd9a56368b6753ca1699ba9e5, + limb1: 0xc80d53b27cdd560827d97b0c, + limb2: 0x1b3d4c5914d7cc3e, limb3: 0x0 }, u384 { - limb0: 0x6f7cea9e3965ee2ee2e1ab00, - limb1: 0x5665c5f3ccfb5ed404d760cd, - limb2: 0xe349e1af2c940e1e, + limb0: 0x6cefc7932f20875966fdf727, + limb1: 0x9a4e13c0bc2108d2e6c16284, + limb2: 0xc499305c798bf800, limb3: 0x0 }, u384 { - limb0: 0x1784c134f541c31849b10cab, - limb1: 0x21382197696324f282ce7ce3, - limb2: 0xc5fc1ade97b4a079, + limb0: 0x48a154a724b617acedf93619, + limb1: 0xd9535b5adf209138cff8ad14, + limb2: 0xb1a78edbf7ad9460, limb3: 0x0 }, u384 { - limb0: 0xdd51d1a8a084b3920b303b7d, - limb1: 0x5764da529ef864571fcde394, - limb2: 0x7d4e83c719f842c0, + limb0: 0xaaba8f9fb91638e891d9256f, + limb1: 0xe3ba0d83619df5d6f552f319, + limb2: 0x788f8a0b5aa0a493, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30036,126 +30002,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd84e54274bd073ce72a8fe8e, - limb1: 0xfd29829b2403a94f96cd1fa, - limb2: 0x4f490dc45c1b37dd, + limb0: 0x5008a55bf0538fc1232d54ba, + limb1: 0xdc1518a54b0a2c66ee343dcd, + limb2: 0x62992832f25d393d, limb3: 0x0 }, u384 { - limb0: 0xb379bcdd1034efa667c63678, - limb1: 0x9ed0d24ee7dd80d232b068e9, - limb2: 0x5ebb9b5e53aab089, + limb0: 0xfc58d6b87d528bcf2d34ed4c, + limb1: 0x4e2206b8ba3a5796e2876a7e, + limb2: 0xf72fdd8842ffcb33, limb3: 0x0 }, u384 { - limb0: 0x41c0520bc34c58cda4a6138b, - limb1: 0xd81a484b39e0c4888c92804d, - limb2: 0xcfd5185bf759f9cb, + limb0: 0xf9298507f87a4f9e67366243, + limb1: 0x1d9f902b1502001a9909db2d, + limb2: 0xc1e04d4e491cfab7, limb3: 0x0 }, u384 { - limb0: 0xeb50824e4f2d5b45932aeb6e, - limb1: 0x34b3e4de9ce90161d0cc8ccd, - limb2: 0x5d47f93544669dd3, + limb0: 0xc9337b6494b027c24ba0c852, + limb1: 0x4d4a1a40a3a382e5570d003e, + limb2: 0x9592dc7f294a9286, limb3: 0x0 }, u384 { - limb0: 0x1a662f1e82fff0bd494a4b9f, - limb1: 0xed1ead0c2ff116e5a3fe29cc, - limb2: 0xbc4fb8c584e6ff0e, + limb0: 0x7521ebb3c02152c9e8a7a8cb, + limb1: 0x29b6a737a08ca4cec000d6cd, + limb2: 0x1501c9445008bd5f, limb3: 0x0 }, u384 { - limb0: 0x1fd0cfd0c481628f3b0b2113, - limb1: 0xc3349af637ff3d3d955a4bef, - limb2: 0x744038ddc5aaa7f4, + limb0: 0x6a1f467c79bce863b41a29d7, + limb1: 0x9e64fcee0405183c90da48fa, + limb2: 0xda2dc6d747a522af, limb3: 0x0 }, u384 { - limb0: 0xd1a071ecca310a5155288cb8, - limb1: 0x5df1915b385a505ced80a7e8, - limb2: 0x3bf775905dad3055, + limb0: 0xa30faa3a57ee5b3dbc0c0421, + limb1: 0xb0ad380df53d2e9083f45f8f, + limb2: 0x27e9e24b234091c1, limb3: 0x0 }, u384 { - limb0: 0x79a728c0f79dbf4a0dcfc52b, - limb1: 0xb74a31ec6c5eb920660465c, - limb2: 0xc27e652434670ef3, + limb0: 0x1acd416502bd90d5e8a05cc, + limb1: 0xe2f37e153212fa8966cde621, + limb2: 0xc6331469821d75a0, limb3: 0x0 }, u384 { - limb0: 0x4c9358b4255f3d1988394873, - limb1: 0x1f99f677208e0ad0d0a2fd6f, - limb2: 0xba1bcb1cf806c6d0, + limb0: 0xb4bea7a917219ff9eb3cebce, + limb1: 0x36af1bf20315605347a876c, + limb2: 0x5c481c11632efc81, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xfcccc53e9beae66d4917a747, - limb1: 0xe5026c4ea1d296054aaff0e4, - limb2: 0xc2982f3982caf7fa, + limb0: 0xdf9acca1e6ea3e705f17d4ed, + limb1: 0x87d0b9afc38400bf015ec1a4, + limb2: 0x565bdd27efa9e6b0, limb3: 0x0 }, u384 { - limb0: 0xc37f077b42c16baf4a65351e, - limb1: 0x67baea780044bcce67ddf2df, - limb2: 0xa891803eb7f7c5c3, + limb0: 0x9657c30ffca63977b6cd959e, + limb1: 0xd8d5d61d2fd21fa64b1b9e2c, + limb2: 0x30475ffa46b086c4, limb3: 0x0 }, u384 { - limb0: 0x4699ec4247431e40e2e528e2, - limb1: 0xe41b824e397f4c28eb12a8cb, - limb2: 0x644d9c191b37928, + limb0: 0x495f3031561975e5754fc2, + limb1: 0x9cdaff290ac3a6cd20d903ff, + limb2: 0x9b2f52a75b752c44, limb3: 0x0 }, u384 { - limb0: 0xa840f8ebdb8361539fee725b, - limb1: 0x64bc33ecf4736829c3941cbc, - limb2: 0x50afb9f19f4434fc, + limb0: 0xb9f3c5c48cd2f5ec5cd94ae8, + limb1: 0x9d91407ef7c44cbb3c245a94, + limb2: 0xc1bc2a8857adf82, limb3: 0x0 }, u384 { - limb0: 0x15404956ba0aeb01fd442423, - limb1: 0xfa44851a4523788c40f94893, - limb2: 0xf3c1d75a9cdd075f, + limb0: 0x7e81e5f98083134a9945e496, + limb1: 0x539ab20c21b82d881fa499a8, + limb2: 0x95dd9354b99df6f4, limb3: 0x0 }, u384 { - limb0: 0xadf8afa6328a438a0f99cbe4, - limb1: 0x3c22c570a9852a85b337115a, - limb2: 0x7163b6fba50a437, + limb0: 0xc6be1fd052117d292f040469, + limb1: 0x9ffaae16ea48382dddcca950, + limb2: 0x5dac3e89c14cd0c6, limb3: 0x0 }, u384 { - limb0: 0x6f5ef07988d3b082fbb8764b, - limb1: 0x7d46eac44cc4b3f06228000, - limb2: 0x83055477cfc3e988, + limb0: 0x21e568b55d00b150711ae8ac, + limb1: 0xecfeeb18e23592c409c1db0e, + limb2: 0xc7bc41e7457f0327, limb3: 0x0 }, u384 { - limb0: 0x6c17fc42d9405b0816ed28fc, - limb1: 0x3dcd0721c73bb7b6e375e00f, - limb2: 0x60de682ebd00ee5, + limb0: 0x2184138dd70c0b4621fd42a5, + limb1: 0x845ea530bcffbfd8b729663a, + limb2: 0x60cb7f53840c02fe, limb3: 0x0 }, u384 { - limb0: 0xa3db269a93a60fb6e92358d3, - limb1: 0x422f45166aab88b0a8abcc0, - limb2: 0xc6248c3188e5d9c6, + limb0: 0x3913c9aa3fac18ddd944e724, + limb1: 0xa30ba88c0ddfae0a6be58fe9, + limb2: 0xb5b0c81213e49e2d, limb3: 0x0 }, u384 { - limb0: 0x1784c134f541c31849b10ca8, - limb1: 0x21382197696324f282ce7ce3, - limb2: 0xc5fc1ade97b4a079, + limb0: 0x48a154a724b617acedf93616, + limb1: 0xd9535b5adf209138cff8ad14, + limb2: 0xb1a78edbf7ad9460, limb3: 0x0 }, u384 { - limb0: 0xdd51d1a8a084b3920b303b7d, - limb1: 0x5764da529ef864571fcde394, - limb2: 0x7d4e83c719f842c0, + limb0: 0xaaba8f9fb91638e891d9256f, + limb1: 0xe3ba0d83619df5d6f552f319, + limb2: 0x788f8a0b5aa0a493, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30165,102 +30131,102 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xf08f9458c0cffe4d8a85f495, - limb1: 0xaaa9d615fdade1d8fed9fd0d, - limb2: 0x5e5c81af4d7c85fb, + limb0: 0x59192fd3ea791c1adb923599, + limb1: 0x49275a84cba31506c52cfeaa, + limb2: 0x32b54bbc1f80d204, limb3: 0x0 }, u384 { - limb0: 0x4313b693cdb76efb1d3fdc59, - limb1: 0xebe6b95692275e4032730cd9, - limb2: 0x8a23e804c0fe6fc3, + limb0: 0xb10609060a85e40afd2dfc8e, + limb1: 0x7850e31d548b662358cf0c7d, + limb2: 0x1ea0fb114db13b74, limb3: 0x0 }, u384 { - limb0: 0x89cef61a6c5d9ba1b153d43b, - limb1: 0x8477e5626517d79511f797dd, - limb2: 0xc1f1dce5fb4758d9, + limb0: 0xacd88a84aada3ee87ab92ade, + limb1: 0xd49d6e40088b804baa99f1d1, + limb2: 0x8a0c08ee3acd8315, limb3: 0x0 }, u384 { - limb0: 0x7476379a0e024317d22a7904, - limb1: 0xbbe29329f395cf0075df4665, - limb2: 0x723bc2b3dccf0440, + limb0: 0x69eefbd970282b2ee72e5cca, + limb1: 0x125216e5060236cbb2c0a26f, + limb2: 0xf883b1e58cfa5fac, limb3: 0x0 }, u384 { - limb0: 0x5c6e3c017cb1341cc3498e2a, - limb1: 0xa5a7a4cfc9e66fe4c57fbbc7, - limb2: 0x902b7b1aa10597a2, + limb0: 0x29a077e78feff75a37e45561, + limb1: 0x5e02d928b73a3fcf9698e255, + limb2: 0x560c0ad8a352f0a8, limb3: 0x0 }, u384 { - limb0: 0x4568763ff3db7a47abb7a2f0, - limb1: 0xe6ba714c4fc6ef5f9b2a0bbf, - limb2: 0x78e27c54fa2192c, + limb0: 0x97518db644b8509209fb9e8b, + limb1: 0x565c3d77f09e4d02850c9af5, + limb2: 0xa1a7e09f2c5d0332, limb3: 0x0 }, u384 { - limb0: 0x4ac63eb18ab9a7ca8076204e, - limb1: 0xd76ed2e7f25854740bd864b3, - limb2: 0x869f80c28c3ad59b, + limb0: 0x2145bf10738d0b76aefc3d56, + limb1: 0xc123a0fc5a8a37ff1958c662, + limb2: 0x77bc5cba25eb9b49, limb3: 0x0 }, u384 { - limb0: 0x1b68e382bed8f3da7e829418, - limb1: 0xfffffffffffffffdef18c36f, - limb2: 0xffffffff00000000, + limb0: 0xe801cac06f24fc2452b297f8, + limb1: 0x7ffffffffffffffec4c6f848, + limb2: 0x7fffffff80000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x7ee7569e0c296de17583e544, - limb1: 0xa286de2d22903e1e898efffc, - limb2: 0x4f6447ec0a780431, + limb0: 0xe01eb098dd0e885fc7e619f6, + limb1: 0x5ea63f2cf5fbd1a42228bdb8, + limb2: 0xc7b4a5be851f01f1, limb3: 0x0 }, u384 { - limb0: 0xac652e74972583d39321ea3c, - limb1: 0x1092aff8504b52402fff4b58, - limb2: 0x4efb69c47573c13f, + limb0: 0x285ed558cde0246e40bbaf69, + limb1: 0x7e4de8e4fbed605b29460807, + limb2: 0xba5787a2df758e45, limb3: 0x0 }, u384 { - limb0: 0xa1542bca5c935a99c2679d88, - limb1: 0x5e8c3ad68e2eceeeb3317628, - limb2: 0x2c97f96222dbe0be, + limb0: 0x5786fa7541605acebc3216d6, + limb1: 0xda229bf1b329af460a7b8c73, + limb2: 0xc4533b4317b6bf42, limb3: 0x0 }, u384 { - limb0: 0xb86df5ef9b1eec7feb1d3d11, - limb1: 0xa0f199588defe4be85af23fa, - limb2: 0xca9010f07b724e26, + limb0: 0xaeb442ddaedb558d961ec6a6, + limb1: 0x25db23a4a10fde28e684fe85, + limb2: 0x611adc55e26a0125, limb3: 0x0 }, u384 { - limb0: 0xb775c80805d28e115a0feac4, - limb1: 0xd4c667aa8ed12de1a3cbb32f, - limb2: 0xfe672dcd9f9511c0, + limb0: 0x2312bf35ca9aece4382be539, + limb1: 0xc1bfc06359bf62224789906e, + limb2: 0xd7e949008ed21f37, limb3: 0x0 }, u384 { - limb0: 0x5e14a074bf8083beb47a191c, - limb1: 0xbaf6cad75916328742662089, - limb2: 0x9cdfa90c33f021a, + limb0: 0xe4119a6522106622b0bed586, + limb1: 0x1b15d0ec15c4d9f90043ae32, + limb2: 0x24eac6de45460311, limb3: 0x0 }, u384 { - limb0: 0xa904b9ab65a58986236522e1, - limb1: 0x89879b08506140fdc89d7f1a, - limb2: 0x88b58a5d3226f2cc, + limb0: 0xed6f991a94232af5c06cd162, + limb1: 0xb242bf8e96f06a9a4c4be58e, + limb2: 0x631fe51cab98df5b, limb3: 0x0 }, u384 { - limb0: 0x6e2eb4e6b06056ea63229287, - limb1: 0x46ccaf2c2a236435ef48d6d1, - limb2: 0x479e8526202b95bd, + limb0: 0x232f8c94ad29b4f3fd471e24, + limb1: 0x805c7d19faf826dd38b4750f, + limb2: 0xfcd1b2050117024e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30268,126 +30234,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x5d4f41779c76592925b33973, - limb1: 0xe49c3540288fbef7725756e2, - limb2: 0x6c42945adc7e9073, + limb0: 0x8bb13aa1d25f38c2a19f92fe, + limb1: 0xb2be66dc6f7f2f4b96b43165, + limb2: 0xf4c79eb1233446f5, limb3: 0x0 }, u384 { - limb0: 0xbbc814bc2653d1954a2c8d4d, - limb1: 0x5063f8d550065ec7a7e20053, - limb2: 0x2b6a3e941f34c2a2, + limb0: 0xa418ba4cc4faab109344da73, + limb1: 0xa91521bf40661826b30b5649, + limb2: 0x52b738ad6b58e3ef, limb3: 0x0 }, u384 { - limb0: 0xc1ae9277499a9984f9a8dba0, - limb1: 0x888543bb2c6b7e794f3f592e, - limb2: 0xee24695d9d67cbb3, + limb0: 0x79b7beef20f480944c0bf763, + limb1: 0x74d1eabbb9398487495179c, + limb2: 0xe5bb14b9a222bf2a, limb3: 0x0 }, u384 { - limb0: 0x2608174414cc8e1691511535, - limb1: 0x58681ae74ea52ed62d12966c, - limb2: 0x19a9c6cb3e565a0b, + limb0: 0x5e4874ea030cdcab370a9e32, + limb1: 0x18551e06a55fcad452ec3006, + limb2: 0x6decd7c835400398, limb3: 0x0 }, u384 { - limb0: 0x505783cc5b1fa9aacb0c87a9, - limb1: 0x227b1c76057b7a9ca257a06e, - limb2: 0xc9b10dbf50176151, + limb0: 0x3438b3134bd8507e9ad04e88, + limb1: 0xb958fc8a5c7a47ef6df3afcc, + limb2: 0xa97c75ea4a55dcdb, limb3: 0x0 }, u384 { - limb0: 0x7a429350b03fe5e34ea210f7, - limb1: 0x6858956743886ed03bdc1045, - limb2: 0x585bd091284e9cf2, + limb0: 0x1f1559dfa35204a1821b587f, + limb1: 0x1a1ef25e63a3c0813ea58659, + limb2: 0xeb436e5326152e5a, limb3: 0x0 }, u384 { - limb0: 0xdc80884b2a5685d311bff0bf, - limb1: 0xdb54b07980fd420ffb77d7e1, - limb2: 0xc1c62a9e9cd69eb2, + limb0: 0xca35285b59dba05d0cb40712, + limb1: 0x29c74d726755dbda424af49e, + limb2: 0x9c2323ed08e982ca, limb3: 0x0 }, u384 { - limb0: 0x3290c9fca029abc62e97e0cb, - limb1: 0x1aca4305addfa4941d08c21d, - limb2: 0x3af876664e0ad3b0, + limb0: 0x4376b6422219abcfd14a5fdc, + limb1: 0xa95102385bc78ec37748eb7a, + limb2: 0xf35b8f51112a4579, limb3: 0x0 }, u384 { - limb0: 0x24eed8596cba15d04928c60c, - limb1: 0x8c0b3f9eed25928d8ff99ee, - limb2: 0xfa0ed6605eee6514, + limb0: 0xcfdee48788c958360ef42ef6, + limb1: 0x97dff7599143424242fff147, + limb2: 0x598f8a0c82fd570c, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x228313ce5abb57e2475a596c, - limb1: 0xbeac716d8ae347f6e089eb47, - limb2: 0x2424d49aad8cfeda, + limb0: 0x64c0483f10687dc8ed5f82d1, + limb1: 0x775bf7c39ece058e7574cfe4, + limb2: 0x4817f4fcae3b7416, limb3: 0x0 }, u384 { - limb0: 0x7aebfead3f5de51e07ce49db, - limb1: 0x2f8b3ec076d8400e5fdae9fb, - limb2: 0xe162b88dd581e498, + limb0: 0x4026ab5266dd462802892afd, + limb1: 0x19930fae1c20489bd37cfe19, + limb2: 0xc0d4d4e3eaf69669, limb3: 0x0 }, u384 { - limb0: 0xd3e63e346de8472bcfa821d8, - limb1: 0x2d00fee12892ec4b48ab9d0c, - limb2: 0xb5d34a20dcf6f99c, + limb0: 0x25f8a69bf69931964fa3f068, + limb1: 0x80ba0a4d7c2af7a4fbcd0992, + limb2: 0x9ec5bbcac04ebf26, limb3: 0x0 }, u384 { - limb0: 0x42ccb096d264f9cba7f30713, - limb1: 0x82a5d7d555c46b4a432654f7, - limb2: 0xd9865d0b42658f24, + limb0: 0x308d23a32956859a7a0a476d, + limb1: 0xe619dc3745e4b4db4d8318b0, + limb2: 0x1a6329ce3bf50980, limb3: 0x0 }, u384 { - limb0: 0xa562578db202f94e2497d434, - limb1: 0x9ceafbba25b1b4fc4b229b48, - limb2: 0x169b34dd142a9a13, + limb0: 0xd0580e541f149507c840d0ee, + limb1: 0x6ac4eea28c9b50aa93c62e06, + limb2: 0x9e19e70673243fc7, limb3: 0x0 }, u384 { - limb0: 0x5c8e3d75e54e13a75fba540e, - limb1: 0xc59cabfb35342d37c3604062, - limb2: 0x9176aa51079eff3, + limb0: 0xb8959a37cc1a6e1a1e75f102, + limb1: 0x3308a376a4f9e463c54cfe39, + limb2: 0x2c3cc15ceb53bd85, limb3: 0x0 }, u384 { - limb0: 0xe221e86d9ffdcb1b5dd7b070, - limb1: 0x858bb02df51e5d5f45e0d1f, - limb2: 0x2a1351807a51c943, + limb0: 0xe63f7ca69547fec7037a1aed, + limb1: 0x1511021a4d6b0a05cf100fb, + limb2: 0x2c807c26c06aafbd, limb3: 0x0 }, u384 { - limb0: 0x3df91d28d980ad4c47a8f66f, - limb1: 0x6dd1881d8a2d048397c12562, - limb2: 0x2042ab97b4dc0051, + limb0: 0xfb24e5dc1bf118d9ef95d478, + limb1: 0x1a18dbeaef6e79e48f59abc7, + limb2: 0xcf5b08c53100e2a2, limb3: 0x0 }, u384 { - limb0: 0xdfdc32b6ea2dbb3db2e4c1d1, - limb1: 0x9a7c7aa851448ca1d9a8a2c6, - limb2: 0x8db8a0f60cf6d4cb, + limb0: 0x46d6a59d56618384e0bbdb62, + limb1: 0x4dec16f39b74ec1dbb4355b9, + limb2: 0x893be6a4ec3b9010, limb3: 0x0 }, u384 { - limb0: 0xa904b9ab65a58986236522de, - limb1: 0x89879b08506140fdc89d7f1a, - limb2: 0x88b58a5d3226f2cc, + limb0: 0xed6f991a94232af5c06cd15f, + limb1: 0xb242bf8e96f06a9a4c4be58e, + limb2: 0x631fe51cab98df5b, limb3: 0x0 }, u384 { - limb0: 0x6e2eb4e6b06056ea63229287, - limb1: 0x46ccaf2c2a236435ef48d6d1, - limb2: 0x479e8526202b95bd, + limb0: 0x232f8c94ad29b4f3fd471e24, + limb1: 0x805c7d19faf826dd38b4750f, + limb2: 0xfcd1b2050117024e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30397,9 +30363,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x9e93c2daa28013d86735cb26, - limb1: 0xd7fdf63ddb39eef8ac10c7ca, - limb2: 0xc1377ac8cd95113f, + limb0: 0x9b6d8cf383c1ad3fc22c0497, + limb1: 0x312aa1cff1e5cda81d4f8bea, + limb2: 0x9163bedef3b25084, limb3: 0x0 }, u384 { @@ -30412,15 +30378,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xb5ee89a3d3ade28a2f627c49, - limb1: 0x818c735110081b5ef7da6cda, - limb2: 0x30fd8dbefc083b09, + limb0: 0x41afe82d10eea1ab214b3c03, + limb1: 0xac0d7efc9a49fb57ca21302b, + limb2: 0x6ec28075a80ddc0d, limb3: 0x0 }, u384 { - limb0: 0xefdfed7c7b6880bfa17a6948, - limb1: 0x12fb74b74e7f8a86df2b1690, - limb2: 0x9283f8bcd1755033, + limb0: 0x604ea13aa355840cd64bcea5, + limb1: 0x6a9e666c154e836a14c9ee9a, + limb2: 0x4dea39ad69120c21, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30428,54 +30394,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x997d063c4181e25685e88235, - limb1: 0xed37ef038514a50e7562ba5f, - limb2: 0x32a12dd8b745d499, + limb0: 0x21e7006b5d0153f8d94c949f, + limb1: 0x35335f288fdfbebc6334a2c5, + limb2: 0x234f248bc9e74a8e, limb3: 0x0 }, u384 { - limb0: 0xbce1d5a65cc994168c6569b6, - limb1: 0xece1909d4c393a00d187ffae, - limb2: 0xaffb28c9b15c07ba, + limb0: 0xa60f2e9729d0d5a2a3efe442, + limb1: 0x5e24cd3c2ea29736b3bbf8ed, + limb2: 0x4472028ac4a3c448, limb3: 0x0 }, u384 { - limb0: 0xfd1cf6102117759c165964b5, - limb1: 0xda2079ef99ef8e865135878e, - limb2: 0xcc0ae5046aa15fe0, + limb0: 0xd370621549d944ebc3f6fd3a, + limb1: 0xef003c58f1d42d6c031df2d3, + limb2: 0x45c5ab40561b9a68, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x5bf335ec276d048e06d852f0, - limb1: 0x6b8d89841437ffa0ea1fc94f, - limb2: 0xdeaaba85a3555467, + limb0: 0x64e11887f7f0f847e384fd7b, + limb1: 0xa4bb008eee7e625fba3223be, + limb2: 0x80a2df3049350885, limb3: 0x0 }, u384 { - limb0: 0xb19d20961ff496a097a96856, - limb1: 0x583ffdc8e1d5448bf310edb, - limb2: 0x6e60ad4a1dc93050, + limb0: 0xd24649fce333b905f2d9612e, + limb1: 0x20956e5876d3f83cdb678cc7, + limb2: 0x10092989577eb21e, limb3: 0x0 }, u384 { - limb0: 0xfcb3e880c994b9ff43632471, - limb1: 0x7af95f2f8b19e727c79bc2ff, - limb2: 0xa33a4ba035daa350, + limb0: 0xab67cd4651cdb017a4eef45b, + limb1: 0x74108a1136acfc7e26bf3ae2, + limb2: 0x710788cf6f046f84, limb3: 0x0 }, u384 { - limb0: 0xb5ee89a3d3ade28a2f627c46, - limb1: 0x818c735110081b5ef7da6cda, - limb2: 0x30fd8dbefc083b09, + limb0: 0x41afe82d10eea1ab214b3c00, + limb1: 0xac0d7efc9a49fb57ca21302b, + limb2: 0x6ec28075a80ddc0d, limb3: 0x0 }, u384 { - limb0: 0xefdfed7c7b6880bfa17a6948, - limb1: 0x12fb74b74e7f8a86df2b1690, - limb2: 0x9283f8bcd1755033, + limb0: 0x604ea13aa355840cd64bcea5, + limb1: 0x6a9e666c154e836a14c9ee9a, + limb2: 0x4dea39ad69120c21, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -30485,16 +30451,16 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x9f7a97ca49b5d9ee0f267a66, - limb1: 0xe039d5332bc3392d5a564344, - limb2: 0x45c60953be45fcc1, + limb0: 0x1bdfe4e97e0e97544e615f58, + limb1: 0x29253b9be7788feef939a700, + limb2: 0x17e05cd43695f415, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0xfd46082c1660c16bb123efa, - limb1: 0x3712ca14b1f2b9856c74e9be, - limb2: 0x1b3376603e83a716, + limb0: 0x61cfd3d94aef7fc27ad88a6f, + limb1: 0xec69789b77cee933dd8fe37b, + limb2: 0x1f06ea0a786087e5, limb3: 0x0 } ], @@ -30505,15 +30471,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x60221abb0b9ae1116c0a81ae, - limb1: 0xfeaa479660bd13d32674171b, - limb2: 0xc12bd36afe5e7f8c, + limb0: 0x82177d65f1c5ceb519d6463b, + limb1: 0x872fe0f43b38a86025b400b0, + limb2: 0x5d3270afba73007c, limb3: 0x0 }, y: u384 { - limb0: 0x96d7c38fe7004e3b3c4acf0a, - limb1: 0x9ef2723f4ef1cb5aec7f42d1, - limb2: 0xb5f6470351c975a9, + limb0: 0xffd12e343f114700a1c1bc17, + limb1: 0x389f956482fea36365f6661f, + limb2: 0xad978c73209d4234, limb3: 0x0 } } @@ -30526,113 +30492,113 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x63c15d6ffb351e0442ef777e, - limb1: 0x3fbaba6e72afb88fb05837b1, - limb2: 0xe6ff20ae828a1602, + limb0: 0x426140ff1bc9578fe3bf2087, + limb1: 0x3627d900dd42c2b83c3f8a22, + limb2: 0x12d52f20dd6752cc, limb3: 0x0 }, y: u384 { - limb0: 0x92c96e624c78ea7dfe7e5361, - limb1: 0x456a3f7c8c99482a7364cf4f, - limb2: 0x4654d74dcb65550c, + limb0: 0x2f6940ed46d679eacb68b095, + limb1: 0xefccb7e0a5ccfc91f7b46bc2, + limb2: 0xf239982104aee064, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x909f1960225cc666cf33c674, - limb1: 0x89f0e43bdb2f19f43b0ecfc2, - limb2: 0x446c8f5cb40be1c4, + limb0: 0xfbc1dce2cefd1b215f00e6bc, + limb1: 0xfaceb25c6763d2a863dbe0b5, + limb2: 0xf01cbf83d40abb76, limb3: 0x0 }, y: u384 { - limb0: 0x2656631594881ceb4552be67, - limb1: 0x3c489afee323a4f6d5533b53, - limb2: 0x9f2027985ce4c2c0, + limb0: 0xf1676fa4786e709c5ea98f5c, + limb1: 0x8ebc6304d425e2ff7c69b995, + limb2: 0x5961e86044c88e4c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd610167cebd21a14345e3f33, - limb1: 0x86e90b1da06b3538ab32e0ed, - limb2: 0x16952ce49e95dbdb, + limb0: 0x78aab643ef8cbb788c3700d2, + limb1: 0x89a85fa748bf6c086d482d3f, + limb2: 0x4401de1d8b9443d9, limb3: 0x0 }, y: u384 { - limb0: 0xdf6c6850c687e9041e95c95c, - limb1: 0xd4bb1c041e86ef95d821a26a, - limb2: 0xc434e52b0a0aebcc, + limb0: 0xf085f2afd09dd51ccb3caeb2, + limb1: 0x734297fc86163e8af554db5, + limb2: 0x962a694eeb8049ae, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1c604c6191e89eca1172f0be, - limb1: 0xe8a2308ac7ba7d0a8d683836, - limb2: 0x43550e1e1faedb68, + limb0: 0x76a645e2f0c2e5af8fc562e4, + limb1: 0x6e0d5fb376c1fa2fbb786644, + limb2: 0xfd1e6101ffe24e5, limb3: 0x0 }, y: u384 { - limb0: 0x37966731141e97cdfb6cf968, - limb1: 0xd862ceb8f24163bf3b740d24, - limb2: 0x89b3d67b17a46395, + limb0: 0x2742a9ee4385873d4e5cfd15, + limb1: 0x2c3199512785c6be9990c906, + limb2: 0x9663a828fe487576, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6395c105925649233a5f7395, - limb1: 0xf06e8b32e5ca6b06dfbc0803, - limb2: 0x520a26db3a7dd765, + limb0: 0x46bec8961149d45c0750c894, + limb1: 0x56d78278bad7c6b734c8a80d, + limb2: 0xfb50d9c98bc9643b, limb3: 0x0 }, y: u384 { - limb0: 0x7e81fdd1b4e1f03cbd95fe1f, - limb1: 0x5271c939b76450304f38693d, - limb2: 0xbee15b28600e7406, + limb0: 0xf581e7364be2773f611f4a44, + limb1: 0x3aefc6bb64dea532bac05c7a, + limb2: 0xeea99b6ca43951fa, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb06d02b0ecdba8261336c3cd, - limb1: 0xdfe5e89112926c023253bdc9, - limb2: 0x4be008e64eebbba5, + limb0: 0x8d3a4fb3a176be18c1c3a511, + limb1: 0xa568d41cbe54fa84fb960f34, + limb2: 0x4f1641d38fe24400, limb3: 0x0 }, y: u384 { - limb0: 0xe5c928ae505eb22a7fe88664, - limb1: 0x317f4a19b19ba6b099859b64, - limb2: 0x1a9f025fcf26ba0c, + limb0: 0xe7004e3e6bd1b47e4dfb3e2b, + limb1: 0x169c857e99ee62f296f50489, + limb2: 0x704f801c672a0670, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x7e2604c8a0296fb384f016c1, - limb1: 0xa57bc13d1773fa17ef9fdb53, - limb2: 0x9402774f35c556f6, + limb0: 0x4a5b9889db4066a03c656aaf, + limb1: 0x842003de68a0b826da4ca999, + limb2: 0x79b668fc77275ee7, limb3: 0x0 }, y: u384 { - limb0: 0x8b0a6af3582bc28f027e7fac, - limb1: 0x5d391891bdb4afd4e12dab57, - limb2: 0x1d51ed166ba33376, + limb0: 0xd43c5897e153d6ef410b990e, + limb1: 0xfff38978c2df44bbc210ac47, + limb2: 0xbc19462a00e51bea, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x200426821d07bfe92dd1411a, - limb1: 0x639e60f991f2ee210a5ec366, - limb2: 0xcee68b0ccb009d10, + limb0: 0x5016fcc0d636f98e940ccc1b, + limb1: 0xafc25f42feab2f4af880e475, + limb2: 0x1298eca447bd9983, limb3: 0x0 }, y: u384 { - limb0: 0x6f8f2b7d320d1736c5c27b0a, - limb1: 0x91a1cc498c58907f6708cdc5, - limb2: 0x51efbddba8580aae, + limb0: 0x624bc8c898ee991b442994db, + limb1: 0x76535bd78b5c48e880ea02b4, + limb2: 0xb8d260ff2b04b802, limb3: 0x0 } }, @@ -30640,28 +30606,28 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xc582644479faf5012287401ba7bbaa76, high: 0x1519401c8b1f11370ea255e08e50c79a + low: 0x802f9492f37ab4d5b472435cac0b128e, high: 0xf20585bb89c3e1890030b342338950b7 }, u256 { - low: 0xa1402e57e7ef7b848610cfd21276c2, high: 0x1a9e8547147a08acc65d8e4ed01e488b + low: 0x7105c7b312b0014e8681bd047ccffd3a, high: 0x3e631d753f50a840828886254ed2924 }, u256 { - low: 0x91fd7d4a5a31a6a69b87cc5e6d7fe9b2, high: 0x60c8e5a0d560e64c55f7792a739ac9e2 + low: 0x8a1ff6fb82576427e33b38a369d4eef3, high: 0xb2b687b177c12c9643a2b0f802369365 }, u256 { - low: 0xd7604342fcbc32295cafa108832c9b79, high: 0x22d801701e6cbd83a2f62516dc88b09c + low: 0xcdafd586debbea182914e3655bd5f9f2, high: 0x7010552f190e358453b3f2895edacdfd }, u256 { - low: 0x2ebed37d05d156b6eceec38d511fcda9, high: 0x567fec5e04ea581d20068c1cbbd743b3 + low: 0xdaa45d87e9cdc10e0f4e73e4dddcb30b, high: 0x6c83f2ca002ceaa5cbf918d18ba49abe }, u256 { - low: 0xb4cba0a317eeb1d9b83acd5e2ccddd8, high: 0xb2e74e770fe1cedfa538790169f12ccd + low: 0x8b2fc414592eaa92287101421c8551c6, high: 0xb07554659df86006ad010e8344e89f0f }, u256 { - low: 0xe963544a63b74101cbf8e26a4fae667b, high: 0xcb60fefcc47e330e99b702a20d5f024a + low: 0x842b58d0d68b8c85c45f174c735bfab6, high: 0x325a81c9640cc91eb9b607e7b0b4b297 }, u256 { - low: 0xeb1c3ba45b9e42d02b0c9fddb61b03e9, high: 0x688181a813d1ea49ed469bf4d5cf2dc4 + low: 0x67209a4b1a97593b41c8a9dbb064014c, high: 0xfb10895a282791593fb0d4360e653f1d }, ] .span(); @@ -30671,586 +30637,591 @@ mod msm_tests { array![ 0x1, 0x1, - -0x1, 0x1, - -0x1, + 0x1, 0x0, -0x1, 0x1, - 0x1, + -0x1, 0x0, + -0x1, 0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x1, - 0x0, 0x1, -0x1, - 0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x1, -0x1, 0x1, 0x0, 0x1, + 0x0, + 0x0, -0x1, + 0x0, 0x1, 0x0, + 0x0, + 0x1, -0x1, + 0x0, + 0x0, + 0x1, -0x1, -0x1, 0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, 0x0, 0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, - 0x0, + 0x1, -0x1, - 0x0, + 0x1, + 0x1, -0x1, 0x0, -0x1, -0x1, - 0x1, - -0x1, - 0x1, -0x1, 0x0, -0x1, 0x0, + -0x1, 0x0, - 0x0, + -0x1, 0x1, + 0x0, 0x1, - -0x1, - -0x1, ] .span(), array![ - 0x0, - -0x1, 0x1, -0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, -0x1, + -0x1, + -0x1, + 0x1, + 0x0, 0x1, -0x1, + 0x0, + 0x1, 0x1, 0x1, 0x0, - -0x1, + 0x1, + 0x0, 0x0, 0x1, -0x1, -0x1, + 0x1, 0x0, -0x1, + 0x1, + 0x1, + -0x1, + 0x0, -0x1, + 0x1, -0x1, 0x0, 0x1, 0x0, 0x1, + 0x1, 0x0, - -0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, - -0x1, - 0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, - 0x1, - 0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x0, -0x1, 0x0, - 0x1, - 0x1, - 0x0, -0x1, 0x0, -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, + 0x0, -0x1, 0x0, 0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, - -0x1, - 0x1, 0x1, - -0x1, - 0x0, 0x0, -0x1, - 0x0, -0x1, - 0x0, 0x1, -0x1, -0x1, + -0x1, + -0x1, ] .span() ), ( array![ - 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, - -0x1, - -0x1, 0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x0, 0x0, 0x1, 0x0, 0x0, + 0x0, + -0x1, + -0x1, -0x1, + -0x1, + 0x1, + 0x1, 0x0, + -0x1, 0x1, 0x0, 0x0, + -0x1, + 0x0, 0x1, 0x1, - 0x1, - 0x1, - -0x1, 0x0, + -0x1, 0x1, 0x0, + 0x0, 0x1, -0x1, + -0x1, + 0x0, 0x1, - 0x1, + -0x1, 0x0, -0x1, + 0x0, -0x1, -0x1, + 0x0, 0x1, 0x1, - -0x1, 0x0, 0x0, - 0x1, -0x1, - 0x0, 0x1, 0x1, - 0x0, + 0x1, 0x1, -0x1, -0x1, - 0x0, + -0x1, 0x1, 0x0, - 0x0, 0x1, + -0x1, 0x0, -0x1, -0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, - 0x1, + 0x0, -0x1, 0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, - -0x1, ] .span(), array![ + 0x0, -0x1, 0x1, 0x1, + -0x1, 0x0, - 0x1, - 0x0, - 0x1, 0x0, 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x0, + -0x1, 0x0, 0x1, -0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, + 0x0, + 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, + 0x1, 0x0, 0x1, -0x1, - -0x1, 0x0, 0x1, - 0x1, - 0x1, - -0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, -0x1, - 0x1, + 0x0, 0x0, 0x1, 0x0, - -0x1, 0x1, -0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, + 0x0, -0x1, 0x1, - 0x0, -0x1, + 0x0, + 0x0, -0x1, ] .span() ), ( array![ - -0x1, + 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, -0x1, + -0x1, 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x0, + -0x1, 0x0, + -0x1, 0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x1, 0x0, - 0x1, + -0x1, 0x0, + -0x1, 0x1, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, - 0x0, 0x1, - -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, - -0x1, 0x1, -0x1, 0x0, 0x1, - -0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x1, -0x1, - -0x1, - -0x1, - 0x0, - -0x1, - 0x0, - 0x0, 0x1, 0x1, -0x1, 0x0, 0x0, + 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, + 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, - 0x1, + 0x0, -0x1, 0x0, 0x1, 0x1, 0x1, - 0x0, - 0x0, + 0x1, -0x1, + -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, + 0x1, + -0x1, + -0x1, + -0x1, -0x1, 0x1, ] .span(), array![ + -0x1, 0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x1, + -0x1, + 0x0, 0x0, - 0x1, -0x1, 0x1, 0x0, - 0x1, - 0x1, -0x1, 0x1, - 0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, -0x1, + 0x0, 0x1, -0x1, -0x1, -0x1, - 0x1, + 0x0, + -0x1, + -0x1, 0x0, 0x0, + 0x1, 0x0, 0x0, 0x0, -0x1, - 0x1, + -0x1, -0x1, 0x0, + -0x1, 0x1, 0x0, - 0x1, 0x0, 0x0, -0x1, -0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x1, + 0x0, 0x1, - -0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, 0x1, - 0x1, + 0x0, 0x0, -0x1, - -0x1, - -0x1, - 0x1, - 0x1, 0x1, -0x1, - 0x1, -0x1, 0x1, -0x1, + -0x1, 0x1, -0x1, - 0x0, -0x1, - 0x0, 0x1, + -0x1, + -0x1, ] .span() ), ( array![ + 0x1, + 0x0, + 0x1, -0x1, 0x0, -0x1, -0x1, 0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x1, -0x1, 0x1, -0x1, - 0x1, - -0x1, - 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x0, - 0x1, -0x1, - 0x0, - 0x0, + -0x1, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, - 0x0, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, 0x0, + -0x1, + 0x1, + 0x1, + -0x1, 0x0, 0x1, + 0x0, -0x1, 0x0, -0x1, + -0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, 0x1, 0x1, - 0x0, 0x0, -0x1, - 0x0, -0x1, + 0x1, 0x0, - -0x1, 0x1, + -0x1, 0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, 0x0, - 0x1, -0x1, -0x1, 0x0, - 0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, -0x1, + 0x1, + 0x1, + 0x0, + 0x1, -0x1, 0x0, -0x1, @@ -31259,418 +31230,423 @@ mod msm_tests { .span(), array![ -0x1, - 0x1, -0x1, - 0x1, + 0x0, + 0x0, 0x1, -0x1, 0x1, - -0x1, - 0x0, + 0x1, 0x1, 0x0, - -0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, 0x0, - 0x1, - 0x0, - -0x1, - 0x1, 0x0, - 0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, 0x1, 0x1, + -0x1, + 0x0, 0x0, + -0x1, 0x0, 0x1, 0x1, 0x0, - 0x0, -0x1, + 0x0, 0x1, + -0x1, 0x0, -0x1, 0x1, 0x0, -0x1, - -0x1, 0x0, + -0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, + 0x0, + 0x1, 0x0, -0x1, -0x1, + 0x1, 0x0, - 0x0, - -0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x0, + 0x1, + 0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, 0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x1, ] .span() ), ( array![ - 0x1, 0x0, -0x1, + 0x0, + -0x1, + -0x1, 0x1, -0x1, -0x1, + 0x0, + 0x1, + 0x0, -0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, - -0x1, 0x1, 0x1, - -0x1, - -0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x0, -0x1, 0x1, 0x1, 0x0, + 0x1, + 0x1, 0x0, + -0x1, 0x0, -0x1, - 0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, - -0x1, 0x1, -0x1, 0x1, - -0x1, - -0x1, - 0x0, - 0x0, 0x0, -0x1, - 0x0, - 0x0, -0x1, 0x0, - 0x0, - 0x1, - 0x0, + -0x1, 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, + -0x1, + -0x1, 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, - 0x0, - 0x0, -0x1, 0x1, - 0x0, - 0x1, - 0x1, + -0x1, + -0x1, 0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x1, 0x1, -0x1, - ] - .span(), - array![ - 0x0, - 0x0, - 0x1, 0x0, -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x1, 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x0, -0x1, + ] + .span(), + array![ 0x1, 0x1, - 0x0, 0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x0, -0x1, 0x1, 0x0, 0x0, -0x1, - 0x0, -0x1, 0x0, - 0x1, - 0x1, - 0x0, -0x1, 0x0, 0x0, 0x0, + 0x0, -0x1, - -0x1, + 0x1, -0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, + 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, + 0x0, + 0x1, 0x1, -0x1, - -0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x0, - 0x0, -0x1, 0x0, -0x1, + 0x0, + 0x1, + 0x1, + 0x0, + 0x1, + 0x0, + 0x1, + 0x0, + 0x0, 0x1, 0x0, + 0x1, + -0x1, + 0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x0, 0x0, 0x0, + 0x1, + 0x1, + -0x1, 0x0, 0x0, 0x1, 0x1, + 0x0, + 0x0, 0x1, ] .span() ), ( array![ - 0x1, 0x1, -0x1, 0x1, - 0x1, - 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x1, - 0x0, - 0x0, - 0x0, + 0x1, 0x0, -0x1, 0x1, - 0x1, - -0x1, 0x0, -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, -0x1, - 0x1, - 0x0, 0x0, + -0x1, 0x0, 0x1, - 0x0, -0x1, 0x1, + 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x1, + -0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x1, + 0x0, + -0x1, + -0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x0, + 0x1, -0x1, -0x1, 0x1, 0x1, 0x1, - -0x1, - 0x1, 0x0, + -0x1, 0x0, - 0x1, - 0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, + 0x1, 0x0, 0x1, - -0x1, 0x0, + 0x0, + -0x1, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + -0x1, 0x1, - 0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, - 0x0, + -0x1, + -0x1, 0x1, ] .span(), array![ -0x1, - 0x0, -0x1, 0x0, + 0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x0, + 0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, - -0x1, 0x0, 0x0, 0x0, - 0x1, -0x1, + 0x0, 0x1, - 0x1, - -0x1, - -0x1, -0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, 0x1, 0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, - -0x1, - 0x1, 0x1, 0x1, 0x1, 0x0, - 0x0, + -0x1, + 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x1, 0x1, 0x1, 0x1, - 0x0, 0x1, 0x0, 0x1, + 0x0, + -0x1, -0x1, -0x1, 0x0, 0x1, 0x1, + -0x1, + 0x0, 0x1, + 0x0, -0x1, 0x1, 0x1, + 0x0, 0x1, -0x1, - 0x0, - 0x0, + 0x1, + 0x1, -0x1, 0x1, + 0x0, -0x1, -0x1, 0x1, @@ -31681,145 +31657,132 @@ mod msm_tests { ), ( array![ + 0x1, + 0x1, -0x1, 0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x0, + -0x1, -0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, - 0x1, - 0x0, + -0x1, -0x1, 0x1, + -0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, 0x0, - -0x1, 0x0, + -0x1, + 0x1, 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x0, -0x1, 0x0, 0x1, 0x1, 0x1, - 0x1, - 0x0, 0x0, -0x1, + 0x0, -0x1, - -0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, 0x1, + 0x0, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x0, -0x1, -0x1, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, 0x0, 0x0, 0x0, - -0x1, + 0x1, + 0x0, 0x0, 0x1, 0x0, -0x1, - -0x1, - ] - .span(), - array![ 0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, - 0x1, - 0x0, 0x0, 0x1, -0x1, -0x1, - -0x1, - -0x1, - 0x1, 0x1, + ] + .span(), + array![ 0x0, 0x0, - 0x1, 0x0, + 0x0, + 0x1, 0x1, 0x0, 0x1, + 0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x1, 0x1, - -0x1, 0x1, 0x1, 0x0, 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x1, - -0x1, + 0x1, 0x0, -0x1, - -0x1, 0x1, 0x1, 0x0, -0x1, -0x1, + 0x0, + 0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, - 0x0, -0x1, - 0x1, -0x1, - 0x1, + -0x1, + -0x1, 0x0, 0x1, 0x0, @@ -31827,198 +31790,208 @@ mod msm_tests { 0x1, 0x1, 0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, -0x1, + 0x0, 0x1, -0x1, 0x0, 0x0, 0x1, - -0x1, + 0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, + 0x0, 0x1, 0x0, + 0x0, 0x1, - -0x1, 0x1, + 0x0, 0x1, -0x1, - -0x1, ] .span() ), ( array![ - -0x1, - -0x1, - 0x0, 0x0, -0x1, 0x1, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x1, 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x0, -0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x0, - 0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, 0x1, 0x1, + -0x1, 0x0, 0x0, + -0x1, 0x1, 0x0, - 0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x0, + -0x1, 0x0, -0x1, 0x1, - 0x1, - 0x0, - 0x0, 0x0, - 0x0, - 0x0, - -0x1, 0x1, + 0x0, 0x1, -0x1, 0x1, - 0x0, - -0x1, -0x1, 0x0, 0x1, - 0x1, - -0x1, - -0x1, -0x1, 0x0, -0x1, + -0x1, 0x0, - 0x1, 0x0, - -0x1, 0x0, - -0x1, 0x1, - -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, -0x1, - -0x1, - 0x0, 0x0, 0x1, - 0x0, + 0x1, -0x1, -0x1, - ] - .span(), - array![ -0x1, - 0x0, 0x1, 0x1, 0x0, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, 0x0, -0x1, -0x1, + 0x0, + 0x1, + ] + .span(), + array![ + 0x1, + 0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, 0x0, - -0x1, 0x0, 0x0, - -0x1, - 0x1, - -0x1, + 0x0, + 0x0, 0x1, 0x1, + 0x0, 0x1, 0x1, - 0x0, -0x1, 0x1, -0x1, - -0x1, 0x0, + 0x0, + 0x1, -0x1, -0x1, + 0x1, 0x0, + 0x1, + -0x1, + 0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x0, + 0x0, 0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x0, -0x1, 0x1, 0x1, -0x1, + 0x0, + -0x1, 0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, -0x1, + 0x1, 0x0, - 0x0, + 0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, 0x0, -0x1, + -0x1, 0x0, 0x0, -0x1, 0x1, 0x1, - 0x1, + -0x1, + -0x1, 0x0, - 0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, -0x1, -0x1, - 0x0, - 0x1, + -0x1, + -0x1, + -0x1, ] .span() ), @@ -32028,99 +32001,99 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xa6207862f534ea8ba3b06767, - limb1: 0xbc964935fbfbf85181f7de01, - limb2: 0xc5c1469f61afb33, + limb0: 0xb5acc53a4c7db0f4b5bdcfe8, + limb1: 0x55ab0dd0834e6c796ffde31a, + limb2: 0x6576e863caf9070c, limb3: 0x0 }, y: u384 { - limb0: 0x5608e80900e02629a67a562b, - limb1: 0x8ddcb56fc737cba848237a, - limb2: 0xd5927487649bbbdd, + limb0: 0xc2e2195da0c81a2d59ffab14, + limb1: 0x4f29c69bdfd64eefe560aab0, + limb2: 0xc87272bc5a423e9c, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x57a59fda8f639231827614c2, - limb1: 0xc598f478c70932ee1eb29d81, - limb2: 0x5ab437b20a359b31, + limb0: 0x6539f2f2677ad54f41715ae3, + limb1: 0xe93cee0fff318cf02d31e97f, + limb2: 0xa602971380365377, limb3: 0x0 }, y: u384 { - limb0: 0xb7197e983a366a06648ea313, - limb1: 0x96604716351ea31cd5ea1dc5, - limb2: 0xff50648e03313003, + limb0: 0x4be9eda0e62e98c5d7754005, + limb1: 0xf907b0fa7e475bfa97c19f, + limb2: 0x4fbd99791b3f45d6, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x82bed840b2d97def97a456aa, - limb1: 0x61f6433092a265f23e813ec1, - limb2: 0xb3439b5ff6d2b251, + limb0: 0x47240c7b1dc987a85b1092a7, + limb1: 0xf4e701570aeb2974755f56fe, + limb2: 0x18aef6a854d8971d, limb3: 0x0 }, y: u384 { - limb0: 0xa4cbb80133e629a10557aa72, - limb1: 0xb02359bfcd38040695fa4a93, - limb2: 0xf783a38515a06a0c, + limb0: 0x1ac418df23d039e9607c7e7d, + limb1: 0xa0834b37a1b368b0dfc9beb6, + limb2: 0xc3a4cf199e534531, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xd87a1ec7ffdc5c2a81a75983, - limb1: 0x763105eba613cb8235eabfa0, - limb2: 0xcef0e0b9e46f94cc, + limb0: 0x66cc0e5e591436115817f7ff, + limb1: 0x864b7233f02f295510714a8f, + limb2: 0x1a01467983e66fad, limb3: 0x0 }, u384 { - limb0: 0x3465638dcc30dac410d62e89, - limb1: 0x159d2b49e199304db49c9e6b, - limb2: 0x10bc196b01e57001, + limb0: 0x5ccea312721e7ada31159fd, + limb1: 0x1b1dcea533fc1dae72f5648b, + limb2: 0x4c01bf4c1169fef5, limb3: 0x0 }, u384 { - limb0: 0xf2bcc2eb07319ff5654ef1f2, - limb1: 0x41267fcf7d82695922d83bdd, - limb2: 0x9b4fe605f425cf02, + limb0: 0x2131e4f8272180a55f73840b, + limb1: 0x42ea64bf1dd3062e6859475b, + limb2: 0xa1c29d34d22cdd7d, limb3: 0x0 }, u384 { - limb0: 0xce5613ce4bf3d3809fd55643, - limb1: 0x912ba0721ec28193eb6bc834, - limb2: 0x1ff31f6a1f030cdc, + limb0: 0xdf36590cdd8ae65ac163d3d0, + limb1: 0xa5125218546bf0a9b25e690d, + limb2: 0x236d14ad84d950b, limb3: 0x0 }, u384 { - limb0: 0x2a6b2be12680305afdedc6d0, - limb1: 0xd06ee98357703c4a9387a5c6, - limb2: 0x6c14e17ebbff6a7b, + limb0: 0x3a1e7c7702a663887968c3b2, + limb1: 0x653da622f6d1ee4ca7fb0374, + limb2: 0xf70c63919371526f, limb3: 0x0 }, u384 { - limb0: 0xf52817d7a4e6541709829955, - limb1: 0xad83b46f42159576e1eaacaf, - limb2: 0xeec1d744323602e9, + limb0: 0x98037008aaad4153bc544fc1, + limb1: 0x53f6b214a271efb11d9c1514, + limb2: 0x2fd710b147c5b1c1, limb3: 0x0 }, u384 { - limb0: 0x6d4100da68bea93c82981496, - limb1: 0x3b2e8c1c0b7825803681abd8, - limb2: 0xc7fce5d4c6a4cee8, + limb0: 0x6244884ac525068309f03118, + limb1: 0x1c87bb58b6463de564b3becc, + limb2: 0x1f4455d12ad8d312, limb3: 0x0 }, u384 { - limb0: 0x2060b01d747d04e0277b93e2, - limb1: 0xc4a988c5fc4accdba96f9895, - limb2: 0x5bcbb5a6ed85591, + limb0: 0x5a746af0ed4d3922e214e565, + limb1: 0x6fd9111c47acffabbababaf9, + limb2: 0x9eeedaa880ece36c, limb3: 0x0 }, u384 { - limb0: 0xd590779eab92479eec962b9e, - limb1: 0x7ffffffffffffffe64f8b56b, + limb0: 0xa98b84995b7216f4a98390a5, + limb1: 0x80000000000000004ee2d0bc, limb2: 0x7fffffff80000000, limb3: 0x0 } @@ -32128,57 +32101,57 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x624ab0b1af80a8026ebe2228, - limb1: 0xdf4d1c937ed823b584a02a90, - limb2: 0x3ced7612c6af4539, + limb0: 0xd0bc25880f32722798f82783, + limb1: 0xf050b0b07cf49431a7ed99db, + limb2: 0x674c68d1a5bb9e18, limb3: 0x0 }, u384 { - limb0: 0x9880d4c3c890687122e95f74, - limb1: 0x349bbd63dcc1b5b96696a6a1, - limb2: 0x202c848aa2c7d47b, + limb0: 0x6f8e26165b9af887bcf6bd2b, + limb1: 0x415e4605dd35de56e7d16c4d, + limb2: 0x3b8f564cb8ab0dfc, limb3: 0x0 }, u384 { - limb0: 0x4b15c2a11829302468111460, - limb1: 0xa82eacc3ca8d3664828beb60, - limb2: 0x6924d3e926cbc68e, + limb0: 0x31943316c2be60fc5195d2d4, + limb1: 0x7b9de73025ac2892b993bde7, + limb2: 0xf226e1348ff63c59, limb3: 0x0 }, u384 { - limb0: 0x31485913337893f3d221c9bf, - limb1: 0xb34c5f5fdda7bd2009b18835, - limb2: 0xac0f4ca8b61e204f, + limb0: 0x32c558244e2910f684cdf461, + limb1: 0x672e576c27a3ade2bd068c1b, + limb2: 0xb39de479d6aa4ae3, limb3: 0x0 }, u384 { - limb0: 0x131dc71b6f54940ea1911ab6, - limb1: 0x4d5c72f04dcd40948af2e52, - limb2: 0x5120f6eb18f3063a, + limb0: 0x1a769cdf06603aa52c6546d1, + limb1: 0x6bbe0ec7ac4396b04ac61638, + limb2: 0x8e1151079280f013, limb3: 0x0 }, u384 { - limb0: 0x8b3a663defafa2af471365eb, - limb1: 0xfff1e1be2e38b7687b4e1301, - limb2: 0x9ee25cee90caf746, + limb0: 0xc0e6f0db779448180491e0d5, + limb1: 0xd8770a78253a895c6f4c0180, + limb2: 0x7f870f3f4ab52fd7, limb3: 0x0 }, u384 { - limb0: 0x4591162623a094bacb0b6463, - limb1: 0x7d3e6378768e437343b24bac, - limb2: 0x37beae93fea71329, + limb0: 0x2f65c2fe4662d88b40500fac, + limb1: 0xd4146013ebc4fecbc2700699, + limb2: 0x5cf34e68e93db678, limb3: 0x0 }, u384 { - limb0: 0x781755d70844df46d1eedac9, - limb1: 0xeeccc1fc180628f328b3bbdb, - limb2: 0xe881e19a42e7743c, + limb0: 0xf9f42aac511c42c79ffb7edd, + limb1: 0xae465a7ff884fa16c5cc6890, + limb2: 0xf8044f7bf1993b55, limb3: 0x0 }, u384 { - limb0: 0xc0e1beed331b574504039b75, - limb1: 0x30c4467cac3bc3a54df79ce3, - limb2: 0x6d7ace668adaceb2, + limb0: 0xae7373288434488e51ff20ac, + limb1: 0x5185edc09810ef3fc3f9d93c, + limb2: 0x6d0cf387fd71e14e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32186,138 +32159,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd4258912c1960b7389626fbd, - limb1: 0xe03af7fd81593822db621f48, - limb2: 0xc0f16f8c0b3eba81, + limb0: 0xf6b9fdafeccee0d02bb47664, + limb1: 0xd9c937788cf4352745354bfd, + limb2: 0x4ee17c35f14db982, limb3: 0x0 }, u384 { - limb0: 0x8177c10694fd0c5a4a6df063, - limb1: 0x4ed3328827b1317470285970, - limb2: 0x9be0dc10a23354c2, + limb0: 0xff04b82e8afc841f329ddf56, + limb1: 0x494599bfff4134f4b0ee4b1a, + limb2: 0xe410ccbabed7e25b, limb3: 0x0 }, u384 { - limb0: 0xeac54b50018fad10e2e577d5, - limb1: 0xd25f1dbe1b6edd9a0c39cbd7, - limb2: 0xf97912aa22e8d9dc, + limb0: 0xa1d2c4c429e5428acffaecdd, + limb1: 0x4afc2f127ded2b048e3d6bee, + limb2: 0x98125f7180f48f92, limb3: 0x0 }, u384 { - limb0: 0xc54af560a32a25f3f3d80afd, - limb1: 0x10f1afa3199ba0def7b8506b, - limb2: 0x61cc41d1348907c5, + limb0: 0xb73f86433543a9f0701b7d49, + limb1: 0x6d868469c55dd303ce35a315, + limb2: 0xabb3f38a9a85a1ba, limb3: 0x0 }, u384 { - limb0: 0xf095658b19470cce38d99a19, - limb1: 0xdcfe4470299ae496988d956d, - limb2: 0x416d53a866a02b54, + limb0: 0xbb31c33323c66fab173a40d9, + limb1: 0xcd12849159adaa03567c480e, + limb2: 0x9417a53f1d082c58, limb3: 0x0 }, u384 { - limb0: 0xcc59eb708a096c5f690f94f7, - limb1: 0xb9a3b0e0fa612050c1dcce88, - limb2: 0x9b9d48d449c6789b, + limb0: 0x4d5910225548f7fc4f5c709d, + limb1: 0xdfb0ca60efd08e437c33ca30, + limb2: 0x23377e480641847, limb3: 0x0 }, u384 { - limb0: 0x593096be4b1e3e46add6b0b6, - limb1: 0x4e03a96a778f25ed8fda3364, - limb2: 0x2a05ea4245d16b09, + limb0: 0x3e30033f8fbba7fc4738939b, + limb1: 0xad1eb780c65077ad3423512b, + limb2: 0x15a482f6d9ce5fb4, limb3: 0x0 }, u384 { - limb0: 0xe8caf647ed2c32ec5b1aea86, - limb1: 0x90c838891a8a1856becddefc, - limb2: 0x9b3e4eee531b254e, + limb0: 0xd22fb0b3b52cc12374e5e9ec, + limb1: 0x34fafc42357dd31178b9775c, + limb2: 0x7d66072454e448, limb3: 0x0 }, u384 { - limb0: 0xcfee2c6984a890cd1f81cb53, - limb1: 0x23fbf55f75745672fc14cea6, - limb2: 0x1828f50dfa8663be, + limb0: 0x9642f893fadf649e52410563, + limb1: 0x9f6661d3a9263d45e90b8981, + limb2: 0x45d4a92d46aef6cb, limb3: 0x0 }, u384 { - limb0: 0xf0b04203ac3a03eb9c62e737, - limb1: 0x789a4622694cdde016ea544e, - limb2: 0x9ced0b50785ccaf8, + limb0: 0xfca744f842f3461e05dd1a57, + limb1: 0x8c7f510d0a0d5a5ce167ebea, + limb2: 0x10d6f607a3889cc3, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xf506bb193b47b227710f2ec6, - limb1: 0x2b29817ff5970450ebbf790b, - limb2: 0xcd5a43b770dac14, + limb0: 0xb3348115e05f7cf2e3943818, + limb1: 0xbecba524e373f5e27aff8cca, + limb2: 0x34f0065f9e6a7f1, limb3: 0x0 }, u384 { - limb0: 0x26cbd44a73121433820a86d8, - limb1: 0x38d84b6b8e9a90659b94b0fe, - limb2: 0x3464a6f2d7348b2f, + limb0: 0x7439fa7b3e9549d73b6cea1e, + limb1: 0x9acc23c4080ac3aed84b920e, + limb2: 0xea6ed8127e9e7af2, limb3: 0x0 }, u384 { - limb0: 0x318169440623998b79e45ae3, - limb1: 0x3827f1681bb5aa9733cdb8b, - limb2: 0xe96bf5fc6344c71e, + limb0: 0x429b2dfda6e722e4b0e76891, + limb1: 0xe053861b9306b1696852d3b8, + limb2: 0x44867538e3203938, limb3: 0x0 }, u384 { - limb0: 0x5c30854a8640d2ee5d9a9726, - limb1: 0xea7e537109f71ff817123d5a, - limb2: 0x192dfd8b2b2601de, + limb0: 0xedb8a1c5b0641e4c4fabfef1, + limb1: 0x98386382f3ff25c54d544946, + limb2: 0xb969c6c445b71a29, limb3: 0x0 }, u384 { - limb0: 0xde43c4064c892fcb72e92328, - limb1: 0xa3b6c8982210ec4f46691e94, - limb2: 0x8a3e8d4ee34754b8, + limb0: 0xfc62f852a11cc6e35267d0a4, + limb1: 0x25ebe8d8bac1957b0ce73f9, + limb2: 0xd90c02faf911058d, limb3: 0x0 }, u384 { - limb0: 0x800c74fad38797e584477207, - limb1: 0x2c15b3ea8e790b78f870ba0d, - limb2: 0x8b10984f96c5a753, + limb0: 0x900674da833713a9f05fa696, + limb1: 0xa45031dea7cd39ee395bb778, + limb2: 0xd6831b4cc9377f0, limb3: 0x0 }, u384 { - limb0: 0xeef432f5feff1c08d8157577, - limb1: 0xd03b1c377cc3a93efab6c91d, - limb2: 0xff439a87da887c82, + limb0: 0xb4752f024126d7ba6c2813fa, + limb1: 0xa0e049afb171b6cdaf38064, + limb2: 0xeab7d1969ec3161e, limb3: 0x0 }, u384 { - limb0: 0x6d3bb8b69e971fc5586e7e1d, - limb1: 0xc77bb9ab12a7e3afc634da06, - limb2: 0x5e7187f18c159297, + limb0: 0x80e43aec2c062d334f62eafe, + limb1: 0xdbf8b0f62f978198d2386350, + limb2: 0xcebf3552730151e1, limb3: 0x0 }, u384 { - limb0: 0xca815ec4eed192c6ddc0b8cb, - limb1: 0x1e0bd514876e57d998abedba, - limb2: 0xbf47f04fb9dd6a45, + limb0: 0xeaa58d80b286bb4afc994c5d, + limb1: 0xcd4a492f584443fdc84abac, + limb2: 0xab9992e926592fc, limb3: 0x0 }, u384 { - limb0: 0xcf3f8a54c61ccb29e6d2f24e, - limb1: 0x9edd4d57e8737f3fbee87bb2, - limb2: 0x4a14793808513afb, + limb0: 0xf05f1a7af5943b1e72250df2, + limb1: 0x936e54279a2ab7c8db9f8194, + limb2: 0x7092a9a89b22a676, limb3: 0x0 }, u384 { - limb0: 0x781755d70844df46d1eedac6, - limb1: 0xeeccc1fc180628f328b3bbdb, - limb2: 0xe881e19a42e7743c, + limb0: 0xf9f42aac511c42c79ffb7eda, + limb1: 0xae465a7ff884fa16c5cc6890, + limb2: 0xf8044f7bf1993b55, limb3: 0x0 }, u384 { - limb0: 0xc0e1beed331b574504039b75, - limb1: 0x30c4467cac3bc3a54df79ce3, - limb2: 0x6d7ace668adaceb2, + limb0: 0xae7373288434488e51ff20ac, + limb1: 0x5185edc09810ef3fc3f9d93c, + limb2: 0x6d0cf387fd71e14e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32327,114 +32300,114 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xc760e1ff10862c1416fc5fc, - limb1: 0x7a14dfa5bca632985f282abc, - limb2: 0x916129f8481a7c61, + limb0: 0xdd68ef363a2b19104f4421c9, + limb1: 0xc9de5745ada0931d7d86447, + limb2: 0x6cb7b598d897d1ae, limb3: 0x0 }, u384 { - limb0: 0x6fb2dc1e00ddf3ac7fbc200d, - limb1: 0xe65f2000fe7bfc8c66025b70, - limb2: 0xd615dead913391b0, + limb0: 0x8abb3f8043857855e7acd641, + limb1: 0x299f257bdcee758977d23964, + limb2: 0x69fb16ad61ce52e7, limb3: 0x0 }, u384 { - limb0: 0x85507090936060489b9d3c54, - limb1: 0xaae42a13ac9df981430c70a, - limb2: 0x878b3db221556e67, + limb0: 0x633a56852fa261ae95ec6326, + limb1: 0xa62b120e3a8d6300135c0f94, + limb2: 0x2b53c8997d32c1cc, limb3: 0x0 }, u384 { - limb0: 0xf9d72fc9ff88df013e1b2aaa, - limb1: 0x269cae6f7fe8da1376582139, - limb2: 0x63850992b05e4b02, + limb0: 0xdd9a63bf02a11264130d1cd3, + limb1: 0x200a7d63aa8096dae8f616e8, + limb2: 0x3eab77edb60f5f13, limb3: 0x0 }, u384 { - limb0: 0x377d5d944f1d7b8b38b515fe, - limb1: 0xe039f8754a16d75098860e2e, - limb2: 0x6d94cce9c622ce41, + limb0: 0x8f80b861624fca776e2bcb89, + limb1: 0x145a38f878b0b2411740b6c0, + limb2: 0xb4638fbc26a6e857, limb3: 0x0 }, u384 { - limb0: 0xf9b1ef280ff1c568d51f1e65, - limb1: 0x463f0108f39d49e3cee2f5eb, - limb2: 0x7d512ffd779e8f90, + limb0: 0x3245a91ee2ed799eeb103a22, + limb1: 0xf88170db80fd630cad6eaae7, + limb2: 0xa99d57f5d815d2d2, limb3: 0x0 }, u384 { - limb0: 0x128512cf6955a624fe40443a, - limb1: 0xce0242fb4815efa33df3aa57, - limb2: 0x6a0123072ccd7c31, + limb0: 0xadf128a1d035ec8ed2119efc, + limb1: 0x4e0e4ae21039178f5016162d, + limb2: 0x70918260a67af206, limb3: 0x0 }, u384 { - limb0: 0x269008f8093a6119c405d3d6, - limb1: 0x5ba219da5e006a963c9cec51, - limb2: 0x364f5d876c42922c, + limb0: 0x49067f6bb62d973623dcaeaf, + limb1: 0x2de834357b0b70714d7e8c93, + limb2: 0xdb35f83566fba50d, limb3: 0x0 }, u384 { - limb0: 0xed1677517335c882514a8bbb, - limb1: 0xffffffffffffffff7d57ea7b, - limb2: 0xffffffff00000000, + limb0: 0xe9020edeb339c3a378b8650f, + limb1: 0x7ffffffffffffffe6ac0f9d8, + limb2: 0x7fffffff80000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x5223a3486ea95297a7d841a0, - limb1: 0xbb825926f00e3a299fbda8a7, - limb2: 0xe9f02301335a49e6, + limb0: 0xeb0183b1df53e8f7df415a7a, + limb1: 0xbb20fff9492faa5984776dde, + limb2: 0x3440e67f93e81a2d, limb3: 0x0 }, u384 { - limb0: 0xce9caa88826fe1bb86fd91be, - limb1: 0x86fb16657f59b0c5b8960306, - limb2: 0x2c9d9d08d06a53f7, + limb0: 0x6862063bf4a3191cb1dbe80e, + limb1: 0x7993ad4c85e4285b55b14eac, + limb2: 0x48d95c63e44a7e2f, limb3: 0x0 }, u384 { - limb0: 0x9fe02c84bb4970b9f133aca9, - limb1: 0xbf5342452ae65a4aac89e0f6, - limb2: 0x9aa1c2a58001fa66, + limb0: 0x25527bdd9cb497055da5c48b, + limb1: 0x82896157963a6c6eebb1b802, + limb2: 0x51d59a4a542cc077, limb3: 0x0 }, u384 { - limb0: 0x65ec0a9ece480a92d64c48f, - limb1: 0xa0110dff09e3a00753e3522a, - limb2: 0xa6858f0554f2908f, + limb0: 0x11e652db5b4979ff1a3e2e1, + limb1: 0x93ec4be43275a8c7d30ad434, + limb2: 0xa1b7353d7fb7fa0a, limb3: 0x0 }, u384 { - limb0: 0x9353860d32c8fbe1ba660c8d, - limb1: 0x96e899d7a19b570d0ccca563, - limb2: 0xa16c2e07c2e384c6, + limb0: 0xf5162c9654a71b28b543f390, + limb1: 0x107797d2abddf5fac4451fba, + limb2: 0x6e669b85ca64a3c7, limb3: 0x0 }, u384 { - limb0: 0x1ad19242389796d337f253a4, - limb1: 0x4f3dc318fe2b967ed56b1450, - limb2: 0x24415fc03815115d, + limb0: 0x87428ef62fd4883237e74070, + limb1: 0xa4460986aa4b542ae2e0758a, + limb2: 0x5bfeb6d11d93b1e7, limb3: 0x0 }, u384 { - limb0: 0x6e82fefebc78be59f27cb21c, - limb1: 0x847baad164d2d79434ad9abb, - limb2: 0x9becc755680a2312, + limb0: 0x29caf614a56aa18a35242d2e, + limb1: 0x1117c61d31e5492bf0674253, + limb2: 0x6df678c93a9e11a2, limb3: 0x0 }, u384 { - limb0: 0x9e80547c5506b59f7fe83319, - limb1: 0x72c164aaa3c6e7448ed8b83f, - limb2: 0xeffc43903fa6f212, + limb0: 0x9c5fcadbb656ec63510ed39d, + limb1: 0xba042567595ef7794015ecc3, + limb2: 0x6d06d1d07f68462a, limb3: 0x0 }, u384 { - limb0: 0xf5c977598ecaf9f253dee1a, - limb1: 0x27c19b39e12e8908b13cdd64, - limb2: 0x1f22ab1e76c02eb4, + limb0: 0xfee6457069372433c64b95b1, + limb1: 0xbdf40d811c2dcec906c5d2d7, + limb2: 0x2c8144d8483494e2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32442,138 +32415,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x49a402653571e10d19038e71, - limb1: 0x73f679cd331c545299777ddf, - limb2: 0xa801b1d1dd9fd137, + limb0: 0xa93b252a1dab96c24d9f46ea, + limb1: 0x36c30eea2249f060d7f3c464, + limb2: 0xe2d01cd338c8fbd2, limb3: 0x0 }, u384 { - limb0: 0xa8c42b119054a053630b5c50, - limb1: 0x679cdb0ca561f18e6c397b94, - limb2: 0x885048e3a1318d4f, + limb0: 0xe0092e187ea3c1182e0f2ab7, + limb1: 0xdd885ea26f26da540086f246, + limb2: 0x8c4083ec4077dcd, limb3: 0x0 }, u384 { - limb0: 0x5fbc2f4e6401c76d96d3071a, - limb1: 0x1c764fc3f7d6ad26960dc33, - limb2: 0xa3202a10002f1365, + limb0: 0xa003798c6c355e2c71b647ca, + limb1: 0xe2e8cdb42d6d7265311a5ea, + limb2: 0xf8843567843ff272, limb3: 0x0 }, u384 { - limb0: 0xea8d77061322a676a2425cea, - limb1: 0x651bd9d503c232660aee5781, - limb2: 0xcb561b1c8cbd2902, + limb0: 0x757426f9b0fb79298c82ecfa, + limb1: 0x6405360b77b62498e5851f84, + limb2: 0x600c29c7e3d9ea99, limb3: 0x0 }, u384 { - limb0: 0xa04586f94ee48d2733dfc5d6, - limb1: 0xcd61c22aae1c0fb2ebfc624b, - limb2: 0x4822517f679d5dac, + limb0: 0x605740224136e4d07bddd365, + limb1: 0x2663b20cf7b7ce772299a3c0, + limb2: 0xfb1be0ecdfc7a8fe, limb3: 0x0 }, u384 { - limb0: 0x5fb760b6d413a0fd72653c9b, - limb1: 0x57e66075af6fc6d4b242c6cd, - limb2: 0x5875abb5ffccda9c, + limb0: 0x84bf00ef0c11355ea13c6361, + limb1: 0x4a1cb69d25ea0212d0d4b020, + limb2: 0xbcf738211914c4a3, limb3: 0x0 }, u384 { - limb0: 0x9d671ea39af6b918be317d43, - limb1: 0xc4dbe72dab9a4964c28cd096, - limb2: 0x76f31eddebc9f4c0, + limb0: 0x7a0bb0d7b40c7d9517bae361, + limb1: 0xa4ee687c1c277c76bcca8975, + limb2: 0xc0c7958d91ad2815, limb3: 0x0 }, u384 { - limb0: 0x4702813251e74bfa9dd94d9, - limb1: 0x4e762935441f533fd762615a, - limb2: 0x1f6cfc0e3bb2d124, + limb0: 0x24cf4e7792a49acffaa27ad8, + limb1: 0x2e1e18a81d28ef7c01ba564d, + limb2: 0x30a6c92b381daed8, limb3: 0x0 }, u384 { - limb0: 0x6dad8441fdd4ab57251ebbbb, - limb1: 0xa9d3a49737ad56f0533b2c82, - limb2: 0x7aa84b2752f96a8c, + limb0: 0x1c1580d90d68db055d6340e5, + limb1: 0x7af8a0fe2f65d186aa55c017, + limb2: 0x708c5baca34902c6, limb3: 0x0 }, u384 { - limb0: 0x24dc746cc661dcc87d16c466, - limb1: 0x8581513d68163978a05c6d43, - limb2: 0x6b987c8471017c47, + limb0: 0xeb198976f182f1d545bf99f9, + limb1: 0xcbc35d94e980daba7770ec1b, + limb2: 0x8057cb7e56cf9e79, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x75828ccc217186236118cde1, - limb1: 0xd1e48f5ff6474914b0bedfa1, - limb2: 0xebea13e26aa396f6, + limb0: 0xf970c563547d3481a11bdac0, + limb1: 0xc27edcc38bfdaf532e6723c2, + limb2: 0xd105aa8414d8e0d6, limb3: 0x0 }, u384 { - limb0: 0xe28520b582aabb292139dc3c, - limb1: 0xe7564dee9e38215bb94c003f, - limb2: 0xd4fa1af7e1fd03d8, + limb0: 0xf9f1514486582fa7ce2503d1, + limb1: 0x34778b7cd6d83f9f5bee5ca6, + limb2: 0xc30549f0b4c85dfb, limb3: 0x0 }, u384 { - limb0: 0x5da9242d1b669ffbbfc512a1, - limb1: 0x15e67b74252956eec55accc7, - limb2: 0xf6a69df7f77c2bfa, + limb0: 0x54a484463eb51b9ae759396e, + limb1: 0xac1ce488445000e807682cd9, + limb2: 0xcb2a33d1306b7719, limb3: 0x0 }, u384 { - limb0: 0x6e9b4f82c33787a799b114b5, - limb1: 0xa5ceae1a251e025ae5e096e0, - limb2: 0xada5610a45b2bba5, + limb0: 0xbdb7d4d7cc5ed75861200c2c, + limb1: 0x390ee04eda138cff0117af3d, + limb2: 0x5804943e0b44c51a, limb3: 0x0 }, u384 { - limb0: 0xc33d6648fa6ac8bc3dbcd36e, - limb1: 0x3b6e0e16e3ebc0f3549c6b0f, - limb2: 0x9647b610da3b318a, + limb0: 0x25bc618baae050472d6e8c90, + limb1: 0xe66bac99b6fd1f4fcd00b888, + limb2: 0xdcff7cd60c2d35aa, limb3: 0x0 }, u384 { - limb0: 0x5f02c6835014d9c853d0d1a1, - limb1: 0x2b9314124dfe99aeb3f7758c, - limb2: 0xba8e669748169b55, + limb0: 0xe96e70caad050414f85c60e1, + limb1: 0x6b049609a3fa2d0f02048061, + limb2: 0xf3c3fd5ca003e85b, limb3: 0x0 }, u384 { - limb0: 0xc2fc723b2eeee7369f4d8d52, - limb1: 0xcd6b7dbfaa5aefad531cbb90, - limb2: 0x1c0f2500fb420d0c, + limb0: 0x23e7a7ce207dd0e754d1b634, + limb1: 0x71d455dedcf0867e6fb6316d, + limb2: 0x3ab448132c82c795, limb3: 0x0 }, u384 { - limb0: 0x9b2c8a97c954ec62d6110216, - limb1: 0xdd986cbc4d26d846adaea0ff, - limb2: 0xf737b73576b79308, + limb0: 0x4fc32a761c33a5ee26fa2c2a, + limb1: 0xea3ada02fd1f70babef94b28, + limb2: 0x4b9ce7c4ed533e98, limb3: 0x0 }, u384 { - limb0: 0x1e23e441226a632b30902b0d, - limb1: 0x1e6b09020d8c43f1811a933d, - limb2: 0xc63ab7371260b8fd, + limb0: 0x6e0ec095bb4251ea81b249ae, + limb1: 0xe43ac32ba7281023f1ecdc03, + limb2: 0x35090de522282a0c, limb3: 0x0 }, u384 { - limb0: 0xcc0e9942d80ebbaaa954819, - limb1: 0xc122967937dfc33686140940, - limb2: 0x994afbd2ae042add, + limb0: 0xf96bd6b9a593712d0a13cc66, + limb1: 0x8b275aef53f4638d4132d07b, + limb2: 0x4338e0190c3ae6e1, limb3: 0x0 }, u384 { - limb0: 0x9e80547c5506b59f7fe83316, - limb1: 0x72c164aaa3c6e7448ed8b83f, - limb2: 0xeffc43903fa6f212, + limb0: 0x9c5fcadbb656ec63510ed39a, + limb1: 0xba042567595ef7794015ecc3, + limb2: 0x6d06d1d07f68462a, limb3: 0x0 }, u384 { - limb0: 0xf5c977598ecaf9f253dee1a, - limb1: 0x27c19b39e12e8908b13cdd64, - limb2: 0x1f22ab1e76c02eb4, + limb0: 0xfee6457069372433c64b95b1, + limb1: 0xbdf40d811c2dcec906c5d2d7, + limb2: 0x2c8144d8483494e2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32583,9 +32556,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xc1a781342f28b85e0a01cb14, - limb1: 0x126c3f26f1341d03716d9eb4, - limb2: 0xd380686cc0ee9f70, + limb0: 0xc9c9dea9ceab36f4f84360c3, + limb1: 0x3f8faf4290191974f6a9e7d6, + limb2: 0xe7e87b77988bcba7, limb3: 0x0 }, u384 { @@ -32598,15 +32571,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x42c6b3c2f5e88ebc5a1d98bb, - limb1: 0x34d60971b717f329a585b666, - limb2: 0xc8ab41f51527f964, + limb0: 0xe3664f2d3832c26d89168c55, + limb1: 0x24ccee82ca177782fc847d7, + limb2: 0x672b9962556a0cce, limb3: 0x0 }, u384 { - limb0: 0x259b87e4bdc2efdee5e59492, - limb1: 0xd870c856a654671fa2cc23bf, - limb2: 0xf2082cebfef7b27e, + limb0: 0x53a200927abba308637e1275, + limb1: 0x21dc1098f5e3499b5d6ebf83, + limb2: 0x414e72432af1156b, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32614,54 +32587,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x4a52b051e3266e315b159f9, - limb1: 0xa27a930b48e68d5e40e68581, - limb2: 0x45867ed1077abcc6, + limb0: 0xe6cafda3cdea6deea11c319, + limb1: 0x470b7fcfcfb8a6e607cf8287, + limb2: 0x3f20d2964192632f, limb3: 0x0 }, u384 { - limb0: 0x83a6bbe2984e92261a8e8da, - limb1: 0x4b7bbdd86b986ef73895758f, - limb2: 0xf9ddeab3a4ae6e96, + limb0: 0x64bfc648b58dcfeef57653b7, + limb1: 0xc74563dfc383b69b6fcbbc1a, + limb2: 0x95b3ee7d56259077, limb3: 0x0 }, u384 { - limb0: 0x5f2d4de85b3cf9ba40ebab50, - limb1: 0x9bfa79fbd4ccc881d3f66e66, - limb2: 0x95ddb8c7ed093273, + limb0: 0x8f1d66292b0d5e3d753fd201, + limb1: 0x2effd6843646ee3e74c1081, + limb2: 0x4e491f437659b9c3, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x1681f0d2a88cdd51ec092fd8, - limb1: 0x6ee5cadd873a916d09d5f866, - limb2: 0xa3ab03ffd6eac806, + limb0: 0xaa3cfdbb95d423c41e4d4f6d, + limb1: 0xeeed115dbec935f95a6dc5a5, + limb2: 0xb4421c6a02f8b706, limb3: 0x0 }, u384 { - limb0: 0x6925fe8f9a749ac428d0c27a, - limb1: 0x622f13c73ca3cfccd3be4de2, - limb2: 0xecb90498420043dc, + limb0: 0x8f40b4833b5329d8c442aa35, + limb1: 0x8b4e41db3c43b875f8247d5a, + limb2: 0x6936a85360f8d0d5, limb3: 0x0 }, u384 { - limb0: 0x5b81194802856ca17621a292, - limb1: 0x2a996451839b515d7cb89b76, - limb2: 0x84adaf11ad537c6e, + limb0: 0xd16daf3ecb9b5324fd5828eb, + limb1: 0x4e578b8a94eea9ea4cd0c827, + limb2: 0x96dadf0e296753a7, limb3: 0x0 }, u384 { - limb0: 0x42c6b3c2f5e88ebc5a1d98b8, - limb1: 0x34d60971b717f329a585b666, - limb2: 0xc8ab41f51527f964, + limb0: 0xe3664f2d3832c26d89168c52, + limb1: 0x24ccee82ca177782fc847d7, + limb2: 0x672b9962556a0cce, limb3: 0x0 }, u384 { - limb0: 0x259b87e4bdc2efdee5e59492, - limb1: 0xd870c856a654671fa2cc23bf, - limb2: 0xf2082cebfef7b27e, + limb0: 0x53a200927abba308637e1275, + limb1: 0x21dc1098f5e3499b5d6ebf83, + limb2: 0x414e72432af1156b, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32671,9 +32644,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x15f297084c5db2374a9e4fbb, - limb1: 0x665f8d4956be4e4bdf7ae4d9, - limb2: 0x3390125c11ffcd93, + limb0: 0x5088516138a647fd64d3611b, + limb1: 0x6f5e1d10d405b142fd724956, + limb2: 0x6942867bf8d0fd46, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -32684,15 +32657,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xa478189d3575ce22d9049445, - limb1: 0xb653a6bffdbf9845f7ea496d, - limb2: 0x134fe88b6f9da17, + limb0: 0xecd1fea76d95f765968a1f56, + limb1: 0x270c61ba411d8f944af1bf6a, + limb2: 0x865708bee0efbd97, limb3: 0x0 }, y: u384 { - limb0: 0xef7c7df3211e9e54755fd5db, - limb1: 0xf7b7c98343aad6336baa8279, - limb2: 0x2b429ff7003d204a, + limb0: 0xb96f639fc3b939b23a19efb0, + limb1: 0xb5caacc2f1866cf6d21c9624, + limb2: 0xb7dfb826c9022cc, limb3: 0x0 } } @@ -32705,15 +32678,15 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xd942347f8a97388a34985899, - limb1: 0x3238efb6e49edf70a29aabbf, - limb2: 0xb26d4203cf4e6fa5, + limb0: 0x3ad455e264c303a2cb5f3645, + limb1: 0xd2a2a0a7cd290becd261baa7, + limb2: 0x99c7e979d743abfd, limb3: 0x0 }, y: u384 { - limb0: 0xf0ab3b6f31a6e444ffbc25e, - limb1: 0xfd5cb563de19c46290daa1b2, - limb2: 0xeaae4778b98b65dd, + limb0: 0xe5214314b09ba51440236152, + limb1: 0xd7e77444525365c078db828e, + limb2: 0x93ad41142dc8a545, limb3: 0x0 } }, @@ -32721,7 +32694,7 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xd95e17e1900f72f74f4b4ed5ac1d02e8, high: 0x2e4025346987b05274219d3ecdc39412 + low: 0x263e187614c90a5302b13bbc444634e4, high: 0x49b9f919eef272261e4129f8f3659c3a }, ] .span(); @@ -32729,171 +32702,170 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x0, - 0x0, + -0x1, + -0x1, + -0x1, + 0x1, + -0x1, + -0x1, + -0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, - 0x0, 0x0, 0x1, 0x0, 0x0, -0x1, - 0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, + 0x0, + -0x1, 0x1, 0x0, -0x1, -0x1, - 0x0, - 0x1, + -0x1, 0x1, -0x1, - 0x0, -0x1, - 0x0, -0x1, - 0x1, + -0x1, 0x1, -0x1, 0x0, -0x1, + -0x1, + 0x0, 0x0, - 0x1, 0x0, 0x0, -0x1, 0x1, -0x1, - -0x1, - 0x0, 0x1, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, - -0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, -0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x1, -0x1, -0x1, + 0x0, -0x1, 0x0, 0x0, - -0x1, 0x1, - -0x1, 0x1, -0x1, - 0x1, + -0x1, 0x1, 0x1, -0x1, - -0x1, - 0x0, - 0x0, 0x0, + 0x1, -0x1, - -0x1, + 0x0, 0x1, 0x0, 0x0, -0x1, - -0x1, ] .span(), array![ + 0x0, -0x1, -0x1, - -0x1, - -0x1, - 0x1, - -0x1, - 0x1, - -0x1, - 0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, -0x1, + 0x0, -0x1, + 0x0, 0x1, 0x0, - -0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, - -0x1, - 0x1, 0x1, 0x1, 0x0, - -0x1, 0x1, 0x0, + 0x0, 0x1, -0x1, -0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, -0x1, - 0x1, 0x0, + -0x1, 0x1, + -0x1, 0x0, + -0x1, + 0x0, + -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, 0x0, -0x1, 0x0, 0x0, - -0x1, + 0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, + -0x1, 0x1, - 0x1, - 0x1, - 0x0, -0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, 0x0, 0x1, - -0x1, + 0x0, -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, - -0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x1, - 0x1, - -0x1, ] .span() ), @@ -32903,57 +32875,57 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x7c6e2676988b37ef1779734, - limb1: 0x623c6fd7a24fa1dc286d5369, - limb2: 0xac040393e0a31c71, + limb0: 0xb4c419a08aaf3917719164b3, + limb1: 0xf5f6d9fc25da26d857bf1e31, + limb2: 0xed8472c644847e35, limb3: 0x0 }, y: u384 { - limb0: 0x32dba343f91dfa20d12f49d9, - limb1: 0xb654f3ec9919b33063b37cce, - limb2: 0x5542eb2f9eb25949, + limb0: 0xfaf0de425977d9d05aa37bcd, + limb1: 0xd1593827aeea60c9de92e7ba, + limb2: 0x9cc5e481e0e19a51, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xc33808dd944f6d024c608789, - limb1: 0xcdaed4f2c6fe340bda751fa9, - limb2: 0x3d4c921dd788dde9, + limb0: 0x47a2549fd9d37cb22bb11a03, + limb1: 0xf41017644ffed253eff8d973, + limb2: 0x5a7854563918b733, limb3: 0x0 }, y: u384 { - limb0: 0x12d01a59ac7b1cce34d941c1, - limb1: 0x7446228d5375b0dbf25f96b0, - limb2: 0x2cff0ea6d0eed52e, + limb0: 0xa399c84de30ad909a43e71df, + limb1: 0xdd0a563a10c57f494ecc918d, + limb2: 0x692b5d4f4b93a427, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xa7fa733594891c4f823e5569, - limb1: 0xaa88671f41f3d4667f95c789, - limb2: 0x542b1cd6454fa06e, + limb0: 0x377227aed4677ca6a0510f6e, + limb1: 0x671e171b9b3ddc6491dbdad, + limb2: 0xbedb538d5a3a1d5c, limb3: 0x0 }, y: u384 { - limb0: 0x7a20fd3c18ac2e7d55012709, - limb1: 0xdd9beec35d8ed0a320bfb7de, - limb2: 0x657ed687a3e07eb8, + limb0: 0xc2d6603f440fb428393703a4, + limb1: 0xba114670becbd3a5d99ef321, + limb2: 0xd3a535624b405fa, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x5ae384935b0fa5dd46387c88, - limb1: 0x91428aac54a3d1085011dc2, - limb2: 0xee26cc509128e7c8, + limb0: 0xdfbb608364f9e38191097757, + limb1: 0x1a518a280ae849b1ef6ebcc6, + limb2: 0x25907e0b3aca74a6, limb3: 0x0 }, u384 { - limb0: 0xac537ea27e1dcb522ca6fdc7, - limb1: 0xffffffffffffffff8f327eaf, + limb0: 0x5c502ba58d5d363eaf7f5be4, + limb1: 0xffffffffffffffffee33b475, limb2: 0x7fffffffffffffff, limb3: 0x0 } @@ -32961,15 +32933,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x27787e2a419c228f457fe360, - limb1: 0xd58f017e5a4deebdd9dea7b3, - limb2: 0xd17139e9e38a0b2c, + limb0: 0xca48deb295f658f4be108d84, + limb1: 0x48dcf47ee27dc0cebc0b60ff, + limb2: 0xfddcdb2b67d74f6c, limb3: 0x0 }, u384 { - limb0: 0x1ef6e9190be013f4d9f00891, - limb1: 0x6b8aa07179117eb334f800d7, - limb2: 0xa18eba68500e73e9, + limb0: 0x1067907d108dc343c30f5d66, + limb1: 0x3766855c0cfccd3ad5df2727, + limb2: 0x78b3a3bfe437d5cc, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -32977,49 +32949,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x74d693b46d9ad42644c519b2, - limb1: 0xb57105bf28d6510352498153, - limb2: 0xfa5a215a2f58384f, + limb0: 0xac4c8e7e69df0f7cd50e2b7c, + limb1: 0xf6b11baa4140df7c7a7ca987, + limb2: 0x21a60dd3bc64447c, limb3: 0x0 }, u384 { - limb0: 0x5a335f94257376b134cd5082, - limb1: 0x484035de9298272151c80ec3, - limb2: 0x5e31ecfb5bba589a, + limb0: 0x220735fbb6a0d22683ddcbdc, + limb1: 0xcc24cf3384a037d552baa622, + limb2: 0x4e15b25275d02fab, limb3: 0x0 }, u384 { - limb0: 0x5b712250864438766ab22c83, - limb1: 0x17817d10d494d4704520ace4, - limb2: 0x527eb63f29640979, + limb0: 0x608b8e63d00140cfcb42f439, + limb1: 0xce759cd69c261571cf2eeb7e, + limb2: 0x27106d423470870b, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x144b7327cb44f1efe67f4ab5, - limb1: 0xd6e90a7478218730f51695e6, - limb2: 0xba18956538c64e39, + limb0: 0x87fe16e219bc6eb73273f582, + limb1: 0xfe0aaf78317045a7244fa6fe, + limb2: 0xf109fe2fd6e32bf5, limb3: 0x0 }, u384 { - limb0: 0xd8c05faf53208bb5f5904b3b, - limb1: 0xf0ca631a4f7a76e672c805e1, - limb2: 0x6ae718da30652b61, + limb0: 0x72d4f36b73e056dd556b993d, + limb1: 0x83cda5845ae99c9bd91a1211, + limb2: 0x4ce97a3f3d86d895, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x27787e2a419c228f457fe360, - limb1: 0xd58f017e5a4deebdd9dea7b3, - limb2: 0xd17139e9e38a0b2c, + limb0: 0xca48deb295f658f4be108d84, + limb1: 0x48dcf47ee27dc0cebc0b60ff, + limb2: 0xfddcdb2b67d74f6c, limb3: 0x0 }, u384 { - limb0: 0x1ef6e9190be013f4d9f00891, - limb1: 0x6b8aa07179117eb334f800d7, - limb2: 0xa18eba68500e73e9, + limb0: 0x1067907d108dc343c30f5d66, + limb1: 0x3766855c0cfccd3ad5df2727, + limb2: 0x78b3a3bfe437d5cc, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33029,30 +33001,30 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xce9d02a31349a6ac6a9a3589, - limb1: 0xa9af47544205f9ab0a198125, - limb2: 0x13d1de8fd8f06e98, + limb0: 0xcc131d31813080b6dc50d1fc, + limb1: 0x47ab37840029d07ebab66793, + limb2: 0xf510e0884fa731dc, limb3: 0x0 }, u384 { - limb0: 0x1df1b6efa921cc8d2fe99ebd, - limb1: 0xfffffffffffffffff206e230, - limb2: 0x7fffffffffffffff, + limb0: 0xf34ec2ba6447089bb6aef375, + limb1: 0x24cfcf24, + limb2: 0x8000000000000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x7c6e58150917067cb43920d8, - limb1: 0xf8b875d352ad7d5cab6f1c34, - limb2: 0x53569a86b9a5ea68, + limb0: 0xf13cbbb9618198281495c24e, + limb1: 0x29b678da1fc3da339aca9060, + limb2: 0x247725ef71215d75, limb3: 0x0 }, u384 { - limb0: 0x6385c2a2e1195a727f071c0d, - limb1: 0x183b565462ec8382f03496, - limb2: 0x10462bde5928b271, + limb0: 0x7d89557dc1697faa08efabe7, + limb1: 0x394d47f3e2d821bf3da56be5, + limb2: 0xbbfc22fefa39cce, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33060,49 +33032,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xfc34d44b0ad148351450a068, - limb1: 0xefcb6e908c01d4a967ec5f75, - limb2: 0x595d341e4b45e9dc, + limb0: 0x684ba78f8a902cab83c8ed69, + limb1: 0x3f804dc5f89d150673e30c7f, + limb2: 0x1094a3ef1a1a42df, limb3: 0x0 }, u384 { - limb0: 0xba3145e1dd5cc18ff7375c93, - limb1: 0xbae1485caa596d598b08ca6d, - limb2: 0xd2c4b5d8c74800dc, + limb0: 0x60c9a37f673299e07a0bbc09, + limb1: 0xf4809e740ce4adfa0f7709bd, + limb2: 0x76b49d0256877ca6, limb3: 0x0 }, u384 { - limb0: 0xa26fa0b5b13c289d84a0230, - limb1: 0x299e397e07a51e2f1ef21f38, - limb2: 0x92478eabf4512111, + limb0: 0x88bc6f7848990f881ccbc3af, + limb1: 0x8fb8984dae18a501976de65, + limb2: 0xb81a0d8e3b7b1f55, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x670468933fa12d6aed8fed8a, - limb1: 0xcd0b38c742be6d88b009c56f, - limb2: 0x475e39af138968de, + limb0: 0x98a92211aa8b291890185022, + limb1: 0x23fd4df6de5af7693b89f2a6, + limb2: 0xff42098c17e98e34, limb3: 0x0 }, u384 { - limb0: 0xb8a8527427b179217931c45b, - limb1: 0xa99f5c4eb477989491701c, - limb2: 0x71eb3314701ce117, + limb0: 0x6ec1567049e27da63e8db351, + limb1: 0x911cf7ab33e8ec3aaf85f346, + limb2: 0x523e4f4f8d7949a3, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x7c6e58150917067cb43920d8, - limb1: 0xf8b875d352ad7d5cab6f1c34, - limb2: 0x53569a86b9a5ea68, + limb0: 0xf13cbbb9618198281495c24e, + limb1: 0x29b678da1fc3da339aca9060, + limb2: 0x247725ef71215d75, limb3: 0x0 }, u384 { - limb0: 0x6385c2a2e1195a727f071c0d, - limb1: 0x183b565462ec8382f03496, - limb2: 0x10462bde5928b271, + limb0: 0x7d89557dc1697faa08efabe7, + limb1: 0x394d47f3e2d821bf3da56be5, + limb2: 0xbbfc22fefa39cce, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33112,9 +33084,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x62737557aa9b777032ad9b0d, - limb1: 0x9757c1e565a7cadf19806b7d, - limb2: 0x997670d89b059e4a, + limb0: 0xb24f43284777863dfec845c5, + limb1: 0xb5952cca886f16f0f58d8fb7, + limb2: 0x5619f0d22ef4762a, limb3: 0x0 }, u384 { @@ -33127,15 +33099,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x9d226295be2c21085acbbe0b, - limb1: 0x8f7bdc36f2c2689794a1ae64, - limb2: 0x26c503a703498659, + limb0: 0xf40966733351d780f40e3462, + limb1: 0x74c527c374902beb222b7f00, + limb2: 0x45a9e37e3c954d42, limb3: 0x0 }, u384 { - limb0: 0x94cd83ecd72776ad31611f3d, - limb1: 0x87c8c3edf70df78da5f518cc, - limb2: 0x6e88510be32781a7, + limb0: 0x80eb83b151c506a533fdceed, + limb1: 0x57e0729f64d4fe5c6e968df, + limb2: 0xe6ac581c6cad2b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33143,49 +33115,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd66935513a4cc290f4724215, - limb1: 0x4f05fde245ea4dcea8344fa3, - limb2: 0xe35ad51848c77f57, + limb0: 0x938a50f50d78b7151d15748d, + limb1: 0xd1dfff9f3b97bae90ca76601, + limb2: 0x2167659c59fd59f3, limb3: 0x0 }, u384 { - limb0: 0x679e5e11c7031d2e50883b3c, - limb1: 0x2627488bd76639f7dfa0fbfa, - limb2: 0x2288bf198c9b9ec7, + limb0: 0x16b7b40f4e40d3a10431e922, + limb1: 0x3958d60dda2edcf550e51bde, + limb2: 0x7ef2883d6fb2f9a9, limb3: 0x0 }, u384 { - limb0: 0xae8c6339edfd80213216d683, - limb1: 0xbfa3db4dc7a45e0c3e15d505, - limb2: 0x4018f83fc088d822, + limb0: 0x806b0f3009cbfaeb44dd7fa0, + limb1: 0x6f97176399ed1a18e0fa2c46, + limb2: 0xcd63393a9760a920, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x4bf0b2183334e73b7b92361e, - limb1: 0xec630580a350dc25106bc4c0, - limb2: 0xf6319911702ac72, + limb0: 0xac41cd26673ce487ac63727f, + limb1: 0x316416582ff1336def307906, + limb2: 0xe7a53873a8151cd1, limb3: 0x0 }, u384 { - limb0: 0x119e9b79e2143ebf59a7e61e, - limb1: 0xb67d5b81c161c4df89b3ad98, - limb2: 0x5ba375336148b94, + limb0: 0x867099d93c632e8a6bf0bf61, + limb1: 0x26723225bc1d2f487061de1c, + limb2: 0x4eb668c6f8bc3010, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x9d226295be2c21085acbbe0b, - limb1: 0x8f7bdc36f2c2689794a1ae64, - limb2: 0x26c503a703498659, + limb0: 0xf40966733351d780f40e3462, + limb1: 0x74c527c374902beb222b7f00, + limb2: 0x45a9e37e3c954d42, limb3: 0x0 }, u384 { - limb0: 0x94cd83ecd72776ad31611f3d, - limb1: 0x87c8c3edf70df78da5f518cc, - limb2: 0x6e88510be32781a7, + limb0: 0x80eb83b151c506a533fdceed, + limb1: 0x57e0729f64d4fe5c6e968df, + limb2: 0xe6ac581c6cad2b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33195,9 +33167,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x347be6899cd0de92ab052cda, - limb1: 0xe9362ec7b9b8b18d19202e5, - limb2: 0x73342276ae39e122, + limb0: 0xc5e42910d217d7a73b6a4e85, + limb1: 0x1e352a6c1b9134bd9ea93ff4, + limb2: 0x616119081974e181, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -33208,15 +33180,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x7a6da233eec2bceda935c9af, - limb1: 0xf4088fcc1fccaf4d8a7bc3ee, - limb2: 0x8b91b0ea522b2c9f, + limb0: 0xe725211b1e874b985a7512e9, + limb1: 0x102f59df7abffac2d0b46728, + limb2: 0x2ebb56e5ce17fd34, limb3: 0x0 }, y: u384 { - limb0: 0x1ed2865b770c11cb909fe598, - limb1: 0xa2f2de4a31b8a06b5c277605, - limb2: 0x1925d67e40e5797f, + limb0: 0x5838a970689eb2e221a46f41, + limb1: 0xc1251fdb659637fb0cc3b78b, + limb2: 0x64f70c023b743cb0, limb3: 0x0 } } @@ -33229,29 +33201,29 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xa81f91a59c72f433c3867da6, - limb1: 0x888a789e67fa9ab2d8f0c512, - limb2: 0xad542c9de5d94f5a, + limb0: 0x7da2517f7b0a6ca33fa4e194, + limb1: 0x88b69399e6af4c9700b122d1, + limb2: 0xd91e324361cafa7e, limb3: 0x0 }, y: u384 { - limb0: 0x28ad7de5a6ea52724a441b77, - limb1: 0xcb9c729124e4315235439191, - limb2: 0xcab3118a5f58d467, + limb0: 0x2153ab8d10e9d865118d4edf, + limb1: 0x1701f7793bb215fc2bb1cedf, + limb2: 0xf9ab0e89c9eaf969, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x841f6a3f250323a023d4494d, - limb1: 0x656bb13a8334d8af17e60636, - limb2: 0x755f6b11dc9f57ba, + limb0: 0x933a684ec643b3fba24ab095, + limb1: 0xb48dc0f3872a6b7c7f807ce6, + limb2: 0xfb004765e3d930f2, limb3: 0x0 }, y: u384 { - limb0: 0x3d4fc455845f5c8c09fc009c, - limb1: 0xff5562d57586fe237e57bd87, - limb2: 0x3caf79ad4611abcb, + limb0: 0x6e9a5a0d4290f58fbc43561a, + limb1: 0x6a6d93096c2144440d652452, + limb2: 0xc8e509cbda6be4b3, limb3: 0x0 } }, @@ -33259,10 +33231,10 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xe5a1bdaea747795eb0c952af9db31510, high: 0xca6ef7ce74db99f352a33c33037e5725 + low: 0x199e9c836d350dc8eecfa0148f0eb1d1, high: 0x52a1d08764be2c694ac1b5ebdf49a5d1 }, u256 { - low: 0xb1e186d7df254e5dbefa9c478dd6650f, high: 0xdba45b5e1498665b79fe0a1b7efbe877 + low: 0x5b998aa4b8728bd62314871efa626e59, high: 0xbce6de07d7de7b2de364905da08f46c3 }, ] .span(); @@ -33270,67 +33242,66 @@ mod msm_tests { array![ ( array![ - -0x1, 0x0, + 0x1, 0x0, 0x0, 0x1, - -0x1, - 0x0, 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x0, -0x1, - 0x1, - 0x0, - 0x1, 0x0, 0x0, + -0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, -0x1, -0x1, + -0x1, + 0x1, + 0x0, + -0x1, 0x1, 0x1, + 0x0, 0x1, 0x0, 0x0, + -0x1, 0x1, 0x1, - -0x1, 0x1, 0x0, 0x1, - 0x0, -0x1, - 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x0, - 0x0, - 0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, @@ -33338,15 +33309,14 @@ mod msm_tests { 0x0, 0x0, 0x1, - 0x0, - -0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, @@ -33358,164 +33328,155 @@ mod msm_tests { -0x1, -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, + -0x1, 0x1, 0x1, 0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x0, - 0x1, -0x1, -0x1, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, 0x1, - 0x0, - -0x1, - -0x1, 0x1, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x1, 0x0, -0x1, - 0x0, - -0x1, 0x1, 0x0, 0x1, + -0x1, 0x1, - 0x0, 0x1, + 0x0, + 0x0, + -0x1, + -0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x0, - 0x1, -0x1, - 0x1, -0x1, 0x1, - -0x1, - 0x0, 0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x0, - 0x0, 0x1, + -0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x1, - -0x1, - -0x1, ] .span() ), ( array![ - 0x1, - 0x1, - -0x1, - 0x1, -0x1, -0x1, -0x1, + 0x1, + 0x0, 0x0, 0x1, + -0x1, 0x0, 0x1, 0x1, 0x0, 0x1, - 0x0, - 0x0, 0x1, + 0x0, + -0x1, 0x1, 0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, -0x1, - -0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, - -0x1, - 0x0, - -0x1, - -0x1, - 0x1, - -0x1, 0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, -0x1, - 0x0, 0x1, - -0x1, + 0x1, -0x1, 0x0, 0x1, 0x0, + 0x0, 0x1, -0x1, 0x0, -0x1, 0x1, 0x1, - 0x0, - -0x1, - 0x0, + 0x1, -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x1, -0x1, 0x1, 0x1, + 0x1, -0x1, 0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x1, 0x1, @@ -33523,90 +33484,97 @@ mod msm_tests { -0x1, 0x1, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x1, ] .span(), array![ - 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x1, - -0x1, 0x0, -0x1, - 0x1, - 0x0, - 0x0, - 0x1, -0x1, - 0x1, - 0x0, -0x1, - 0x0, + -0x1, 0x1, 0x1, 0x0, + 0x1, 0x0, 0x0, - 0x0, - -0x1, - -0x1, - 0x0, -0x1, 0x0, - 0x0, 0x1, - -0x1, 0x0, 0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, - 0x0, - 0x1, 0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, 0x1, + -0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x1, -0x1, + 0x0, 0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, + 0x0, + 0x0, + -0x1, -0x1, 0x1, - 0x0, -0x1, + -0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x1, -0x1, - -0x1, 0x0, + 0x1, + -0x1, 0x0, + 0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, + -0x1, + -0x1, + 0x1, 0x0, + -0x1, 0x0, + 0x1, -0x1, -0x1, ] @@ -33618,85 +33586,85 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x426d60269676e1c6d87d1a4a, - limb1: 0xd712bb033c35d6f833b9fcd6, - limb2: 0xf29f91d7af10bad6, + limb0: 0xc8b56ffa1209d6cc36b8b50, + limb1: 0x1ee0adff23bad471a52c1f5d, + limb2: 0xef259cb2b98da110, limb3: 0x0 }, y: u384 { - limb0: 0x26cd258837db71b38766de46, - limb1: 0x6db04f36d2d81da4bd27feff, - limb2: 0x65978656e30fa403, + limb0: 0x2eec5c561ee4d0c5cd2256ad, + limb1: 0xd75a69a3c9950813e5c21763, + limb2: 0x15a944620e3847fb, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xed76bcbd53f694809a9bf4ff, - limb1: 0x241950a87c47d3306138c5ec, - limb2: 0x3f8eaa6b5978ee8, + limb0: 0x8bafb198fb6765b23e27c436, + limb1: 0x6e059029b1b0c7276778df16, + limb2: 0x4e08c4afe4f4b527, limb3: 0x0 }, y: u384 { - limb0: 0x23038c79990d7969d4d7cb44, - limb1: 0x911297419f769a293e40f72e, - limb2: 0xddf4c0d7dd2ef0d3, + limb0: 0x57a44cb79b2e9554ea0c58c5, + limb1: 0xd3069f409eff0df73174ae4b, + limb2: 0x737911fec846e358, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x389648b6915fdc3a6bebdc1b, - limb1: 0xd624021f97626832ec804d45, - limb2: 0xa13a76fbafd10cab, + limb0: 0x2b32f4a26e6a7a9ab0e69573, + limb1: 0x6ed9472f778f0a5447fbaab4, + limb2: 0x7320ba087c444134, limb3: 0x0 }, y: u384 { - limb0: 0x7b26e95d4f7fd2197ff89c82, - limb1: 0x3ff947b521bac54d96e08403, - limb2: 0x4f4ca40594ec380a, + limb0: 0x5d3beacb8f0de0919d58e495, + limb1: 0xbda7fc62cff2a59c56944ea1, + limb2: 0x26697513ddf48b40, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xb266c2a53036bf87ce36b80a, - limb1: 0x81975cd96ff6a834dde873c4, - limb2: 0xb4766ecdd11b5f7a, + limb0: 0xf9e08e97e636cbb5d1e49d10, + limb1: 0x97ee896e21eb3872f40c47a3, + limb2: 0x446e609a41315491, limb3: 0x0 }, u384 { - limb0: 0x7f22d5ea74842e3a5cf8fe8, - limb1: 0xe870a7915aaa51665f8d1980, - limb2: 0x9dcee927d59a189, + limb0: 0xa7ffe41de5595ebf448d7df4, + limb1: 0x3bd5b4fa4d1e800621c6272b, + limb2: 0x7f6d48cd01e33943, limb3: 0x0 }, u384 { - limb0: 0x7e5adefb85340e85a0895924, - limb1: 0xffffffffffffffff185c578f, - limb2: 0xffffffffffffffff, + limb0: 0xc420e21770c32d6d3587ebe3, + limb1: 0x1dcc79c6, + limb2: 0x8000000000000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x30fca4964469eb506a6c91fc, - limb1: 0x888b44a2f2d00a8018d587be, - limb2: 0xde4699f9b57be106, + limb0: 0xe44d10e30484370e8b29c58e, + limb1: 0xee3accc3a999f469a885da82, + limb2: 0x6d9594489d0773ea, limb3: 0x0 }, u384 { - limb0: 0x92fdda3296781f5910c617e8, - limb1: 0xdb2f3a48f400b77c1af7080a, - limb2: 0xe618c732d507a753, + limb0: 0x60b77336d30cfafde36be3e2, + limb1: 0xc0ffabed72ec1c20b9b6da16, + limb2: 0x4d98690e1687c811, limb3: 0x0 }, u384 { - limb0: 0x9153a3f4a813066240281350, - limb1: 0x3af71b23d89ab5a5db6f37e0, - limb2: 0xeaacd6788e769e14, + limb0: 0xe297ef321d9141f15aa4d714, + limb1: 0xa3dafd736e6b737adaa240ea, + limb2: 0x3cbbe9a400ce337e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33704,66 +33672,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd39320032ba63b37401ffc5, - limb1: 0x7fc3fcb1da0b458abe015edd, - limb2: 0xef22df0148bc95f4, + limb0: 0x60e81a6cfda715126059da61, + limb1: 0x9c0d62012338f55f8a573a7a, + limb2: 0xe57f66cf8e74cafd, limb3: 0x0 }, u384 { - limb0: 0x78f71adbc443d3a7a85cf1fc, - limb1: 0x849aae959b0167e8ce9d349a, - limb2: 0x8faac65a335c3744, + limb0: 0x3d59bb6cdc8b3c5f2cb0ca7a, + limb1: 0xd1a54f6aa8510e1ce8b2471c, + limb2: 0x2f9a4ee3871fa665, limb3: 0x0 }, u384 { - limb0: 0x527fc2aadc94786b4c22b8cf, - limb1: 0x70873be819b08dac9975d198, - limb2: 0x36c02e77a5a6f79d, + limb0: 0xbf906ce7ddc3a7e3cbc676b8, + limb1: 0xe35473444e4d08c4b8fc063f, + limb2: 0x71a8f1eb264281f6, limb3: 0x0 }, u384 { - limb0: 0xe630d61292fcaf681365fcc7, - limb1: 0x7dbb3d3e08cb8a335a4ed141, - limb2: 0x8b34a5e8adc8604b, + limb0: 0x827534df270dea89b3dbc181, + limb1: 0xed3be094cdd24aaca77a5df1, + limb2: 0x481cdc3629a70e6d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x56e8801bdee56f38e8f814ca, - limb1: 0xbbcee074a3b04980add6b633, - limb2: 0x13ee35d3f663272d, + limb0: 0x3e1b76351f9d8167ce246e84, + limb1: 0x839b9959a335aee39ba8f994, + limb2: 0xff170dfc4b342b6c, limb3: 0x0 }, u384 { - limb0: 0x4f0f7621d48db75756abe3e, - limb1: 0xfe4a97feac050464bcc1384a, - limb2: 0x4aad7263d335934a, + limb0: 0xa504267fc55adcf337f342d0, + limb1: 0x46fdb37e2474c4e513fff69c, + limb2: 0x1f2adf629db6787c, limb3: 0x0 }, u384 { - limb0: 0xf9497bb098852cb5c1189e16, - limb1: 0x9cc1bdfaec3af789000a8723, - limb2: 0x6ab9dd4be53e528d, + limb0: 0x32278a5ecef8cd9a7a81e55d, + limb1: 0x7afcee2804f0285bfa6fc66c, + limb2: 0xa923637c05a36876, limb3: 0x0 }, u384 { - limb0: 0x30fca4964469eb506a6c9203, - limb1: 0x888b44a2f2d00a8018d587be, - limb2: 0xde4699f9b57be106, + limb0: 0xe44d10e30484370e8b29c595, + limb1: 0xee3accc3a999f469a885da82, + limb2: 0x6d9594489d0773ea, limb3: 0x0 }, u384 { - limb0: 0x92fdda3296781f5910c617e8, - limb1: 0xdb2f3a48f400b77c1af7080a, - limb2: 0xe618c732d507a753, + limb0: 0x60b77336d30cfafde36be3e2, + limb1: 0xc0ffabed72ec1c20b9b6da16, + limb2: 0x4d98690e1687c811, limb3: 0x0 }, u384 { - limb0: 0x9153a3f4a813066240281350, - limb1: 0x3af71b23d89ab5a5db6f37e0, - limb2: 0xeaacd6788e769e14, + limb0: 0xe297ef321d9141f15aa4d714, + limb1: 0xa3dafd736e6b737adaa240ea, + limb2: 0x3cbbe9a400ce337e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33773,20 +33741,20 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xe7adc8a163514e681c12ea44, - limb1: 0x92601d7e0293d19826be208, - limb2: 0xd0ad451f980bc931, + limb0: 0xf1a47fa3b9419173893395df, + limb1: 0x1b2b275ffbcf6b69372e2287, + limb2: 0xe006411cc268cf2, limb3: 0x0 }, u384 { - limb0: 0x7722cc86cd188674babf995b, - limb1: 0xe44029508fd95609f1d4e083, - limb2: 0x5211de1086f40ff1, + limb0: 0xd10db07752966aae9710ff9e, + limb1: 0x799c86656120ca892db60cb6, + limb2: 0xc8b874995f6c1778, limb3: 0x0 }, u384 { - limb0: 0x6dcfc58d662c5f4b4ce96f6a, - limb1: 0xffffffffffffffff11ad30b3, + limb0: 0xd4a7dd61b9fdfd33d8f70a53, + limb1: 0xffffffffffffffffa50a6987, limb2: 0x7fffffffffffffff, limb3: 0x0 } @@ -33794,21 +33762,21 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x269197f0be55265a94b33401, - limb1: 0x6f90e2b38b39e6acb0cc0a7d, - limb2: 0xfa93c85e7d02815f, + limb0: 0x11de3c2a4553c91e32908986, + limb1: 0x9db84ccfda2a6190fc29d38c, + limb2: 0xa2beca753abafe22, limb3: 0x0 }, u384 { - limb0: 0xc3d288015209105ff4c2f1eb, - limb1: 0xcc14d14dcf26b78622c06e6e, - limb2: 0x8555cc792b096cca, + limb0: 0xe47a5140d9786f66034f31f8, + limb1: 0x16d1bed55d7630a456deaab6, + limb2: 0xa11c93016c99639f, limb3: 0x0 }, u384 { - limb0: 0xe64a475dea9353a97e093c6c, - limb1: 0xedf0857e9888b96dadf06ec9, - limb2: 0xd9537da987efca02, + limb0: 0x63739498c34a79abdfe89e2e, + limb1: 0x54b61b48e07580c518558131, + limb2: 0xddd8c1a6d5671f67, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33816,66 +33784,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x4907f762ef1bfa5b7a279ad3, - limb1: 0x8cd9d9408d19cd504655d2af, - limb2: 0xd3b1e90330f39dee, + limb0: 0xaa2602e891de32ddf4f54b8, + limb1: 0xdcce1c93709917feacfd1874, + limb2: 0x9415ccce17e0d4e1, limb3: 0x0 }, u384 { - limb0: 0x5910b9f923eff56b1e112a44, - limb1: 0xa72c2b60be625dbf6d978715, - limb2: 0x3d414685d6f0848c, + limb0: 0x26b6c2672d664334acc99242, + limb1: 0x600de4679d5c5792a78e7489, + limb2: 0x702efd3145f6357d, limb3: 0x0 }, u384 { - limb0: 0xa60ea4a1e2fa8060d78cae32, - limb1: 0xed1feb19f763045687a0506d, - limb2: 0x19a2aa2d40e3a47d, + limb0: 0x52f0f7fef80396bb3b129e78, + limb1: 0x9727891c6604a12bbb0d519, + limb2: 0xd62f5b45cb323375, limb3: 0x0 }, u384 { - limb0: 0x5af7d80cc3c46199dcff46e2, - limb1: 0xcc49f5765e115a7a523ebed2, - limb2: 0x62da82338a43b909, + limb0: 0xaee8a38d76871445f204d584, + limb1: 0x55c89639a8926808581164e1, + limb2: 0xf472ba32e8c663a7, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xdfb279534540c8010e682ed, - limb1: 0xcf632e8ce954eb8d594496c, - limb2: 0xda0a7a956b11899c, + limb0: 0x7d13a527e54a7fd761f3d1ee, + limb1: 0x500a19aef728aaf6e524c8d4, + limb2: 0x733789349b1cf2f2, limb3: 0x0 }, u384 { - limb0: 0x5ac1b8093e3f72a2b154a8e0, - limb1: 0x9491b920aa0f04aaf3430507, - limb2: 0xa55897502d41f98b, + limb0: 0x3f5838c5f24b0bce172a6d0c, + limb1: 0x9fbc37d58e3b547e6016ab00, + limb2: 0x67c80509f831b959, limb3: 0x0 }, u384 { - limb0: 0x4c07f3916a0749a77240ba09, - limb1: 0x8193a6762bbd11ffc1930785, - limb2: 0xf1486fa2b78e8614, + limb0: 0xb829102d570953b91f5c6a28, + limb1: 0x50fabefe23368563aa568859, + limb2: 0x10ed4b8fd5d1dbd3, limb3: 0x0 }, u384 { - limb0: 0x269197f0be55265a94b33408, - limb1: 0x6f90e2b38b39e6acb0cc0a7d, - limb2: 0xfa93c85e7d02815f, + limb0: 0x11de3c2a4553c91e3290898d, + limb1: 0x9db84ccfda2a6190fc29d38c, + limb2: 0xa2beca753abafe22, limb3: 0x0 }, u384 { - limb0: 0xc3d288015209105ff4c2f1eb, - limb1: 0xcc14d14dcf26b78622c06e6e, - limb2: 0x8555cc792b096cca, + limb0: 0xe47a5140d9786f66034f31f8, + limb1: 0x16d1bed55d7630a456deaab6, + limb2: 0xa11c93016c99639f, limb3: 0x0 }, u384 { - limb0: 0xe64a475dea9353a97e093c6c, - limb1: 0xedf0857e9888b96dadf06ec9, - limb2: 0xd9537da987efca02, + limb0: 0x63739498c34a79abdfe89e2e, + limb1: 0x54b61b48e07580c518558131, + limb2: 0xddd8c1a6d5671f67, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33885,9 +33853,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x6251fb67fd4ae59691cd4fce, - limb1: 0x6cb1ff6387df10e207806f88, - limb2: 0x1d15f19941295f08, + limb0: 0xa71a6dd82afbbdb2166925ee, + limb1: 0x657b4d915d0a6ab70c365f6c, + limb2: 0xfced3a071777d812, limb3: 0x0 }, u384 { @@ -33900,15 +33868,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x137d797a9ba8616b6ff1a5f, - limb1: 0x89bc744e0523bb4078b2270d, - limb2: 0xebe70ab5bdddf97f, + limb0: 0x784de462ee673cf2a5ec2914, + limb1: 0x3450434453c4309de3a6f67e, + limb2: 0xe6e581a7fdc0084c, limb3: 0x0 }, u384 { - limb0: 0xd9f2fa8c1aa98f43f9782b15, - limb1: 0x5c2ad37ec55c49cb246eccd, - limb2: 0x5acc9e5d9a97646c, + limb0: 0x491d59c4962e1fb210f1a286, + limb1: 0x232128a6d6c02e84508b7635, + limb2: 0x3ed681479ec709a4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33916,49 +33884,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x9cde05cc8ca60190d30f1128, - limb1: 0x9870be72d5aa7658035763a3, - limb2: 0xa684796685382a9a, + limb0: 0xb5fa32315c81ddb89f49ca43, + limb1: 0x12935edccb965832594b2d59, + limb2: 0xdaabf17d7b04eca5, limb3: 0x0 }, u384 { - limb0: 0xa02f3ee7371bc6ed7f5455e8, - limb1: 0xb0dd6ee5b737cdee241af541, - limb2: 0xfb4fb2cd94ce3af9, + limb0: 0x64c9fc9409447539e0ded2e9, + limb1: 0xa80f1f45b434e5f80ccbda6c, + limb2: 0x9daea3eb0082e1e8, limb3: 0x0 }, u384 { - limb0: 0x5dd985dc06b901cf30317a6e, - limb1: 0x94748a27f3f997eefd201a, - limb2: 0xfc2ed98b4239478e, + limb0: 0x6d3b9de16b313bd6c2a7123c, + limb1: 0x118fb2f42705af9152ce6bdf, + limb2: 0xbb684f97d3ee6d1c, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x886e525a419aaa500f9cf7f, - limb1: 0xc4272e2223fa1ec34cdf115b, - limb2: 0x73514af83111d27c, + limb0: 0x4a213eb484d2aaa889753672, + limb1: 0x6e31d6de4a5d54513990bd75, + limb2: 0x50468b97f0403a15, limb3: 0x0 }, u384 { - limb0: 0xf5a4d9d4baa2eaddd2493535, - limb1: 0x2852bc8776586048dff079a0, - limb2: 0x7b98548f3a23bef4, + limb0: 0xffcd74601b42dddf769b757b, + limb1: 0xf5e81c8fdf41459e33d03b74, + limb2: 0xb7dd88f55771437c, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x137d797a9ba8616b6ff1a5f, - limb1: 0x89bc744e0523bb4078b2270d, - limb2: 0xebe70ab5bdddf97f, + limb0: 0x784de462ee673cf2a5ec2914, + limb1: 0x3450434453c4309de3a6f67e, + limb2: 0xe6e581a7fdc0084c, limb3: 0x0 }, u384 { - limb0: 0xd9f2fa8c1aa98f43f9782b15, - limb1: 0x5c2ad37ec55c49cb246eccd, - limb2: 0x5acc9e5d9a97646c, + limb0: 0x491d59c4962e1fb210f1a286, + limb1: 0x232128a6d6c02e84508b7635, + limb2: 0x3ed681479ec709a4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -33968,19 +33936,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x536a321be8cab19163ee1ec9, - limb1: 0x18af8d1406b562b393f9d372, - limb2: 0xd834a14e3991d29, + limb0: 0xe72f62b0b95306a3d6a56c5c, + limb1: 0x8d409930412de0bdd15e0638, + limb2: 0x616c377923e326fd, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0xe35c98a7cf9dce5c9ed730ca, - limb1: 0xcdb9d2119088378b3956ab7f, - limb2: 0x6d17494ca0079d16, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 2 @@ -33988,15 +33949,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xfbbd846a96983f66e03d4093, - limb1: 0x7de400038a8429ac50f0d206, - limb2: 0x6f70fd7b98cd9f94, + limb0: 0x90bac1f714b8894dc966ca, + limb1: 0xade569e4ac4f6c156fb3c6d8, + limb2: 0xb729bd0bfad8faa8, limb3: 0x0 }, y: u384 { - limb0: 0xc25d28dd2b69391dcd3ee596, - limb1: 0x13a7e8e98c0870d429eb1d10, - limb2: 0x4d84daa0644ac45a, + limb0: 0xaceeacb3c059a1e89422f3a2, + limb1: 0xd02b294e858d61cc272ed88b, + limb2: 0x79523b253f20a956, limb3: 0x0 } } @@ -34009,43 +33970,43 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xae1d1173122eea7eb62cf96f, - limb1: 0x22e1b222a73cd7bcbf113513, - limb2: 0x6abdc4eaf5c41612, + limb0: 0xcb2533ce4b16b0b8c66382c2, + limb1: 0x44b11c24b445bc54c37f6d8, + limb2: 0x8e5056c2a1b78502, limb3: 0x0 }, y: u384 { - limb0: 0xc9a85f8591b082643e79c7df, - limb1: 0xdbddcce7b0fc05c3480f80b8, - limb2: 0x603f4455ebb8ec0c, + limb0: 0xc1603fb4c54a6517b49c1035, + limb1: 0x62b283d0ee5cf96d64358b13, + limb2: 0x6296a690967fbcfe, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb7ea64f05dcbd774f084d660, - limb1: 0x5ce0c13298893646722aae75, - limb2: 0x8613ff687268852, + limb0: 0xad2949f2b273aab61207341b, + limb1: 0xa63c8a8be10392b04820681e, + limb2: 0xe121986b7689d45c, limb3: 0x0 }, y: u384 { - limb0: 0xcf46c60d2aa034435ec40bfe, - limb1: 0x1ed68cb57747ff6c2f418847, - limb2: 0x246a996a4fc70802, + limb0: 0x827665be590762d6130d5a09, + limb1: 0x887198d84fa72d8c938b389a, + limb2: 0x183ffef5c0d406a7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xf3d35428a05342042a4b6ad8, - limb1: 0x57d1be028eb0bfaeaf2f9b0a, - limb2: 0xa4fc93e6d1c9ee48, + limb0: 0x699f4262c96c71c71e96703e, + limb1: 0xbc25f4d11b73fba0981caed4, + limb2: 0x4047c52e4c14b521, limb3: 0x0 }, y: u384 { - limb0: 0x4e9c606dace6beaf39a5d208, - limb1: 0x602a97abacddbddb72aa795e, - limb2: 0xff47a8c60f693733, + limb0: 0xac659dbd9bc8071f145ad66, + limb1: 0x1194266849e8f4bc00125eca, + limb2: 0x1a28316c7007d48, limb3: 0x0 } }, @@ -34053,13 +34014,13 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xce03a34da022dfee843fb606e8b7e2da, high: 0x2f9cc4096bfafff5b7751f497e28aa + low: 0xa18ebf04a03bdcbcf55d58eef27688df, high: 0x4ceb8a7ab302ea5e9a7c20e58aa1bd9f }, u256 { - low: 0xf1c51dda282803705672ebc7606e8502, high: 0x291a58af259a2b28b22b89748c5c192f + low: 0x1aae18f87f8a49bbff791c6649ae99db, high: 0xa0cde993cabcd1b0ce670d697a7a540 }, u256 { - low: 0x28b299bcebbe1a41c781e11f2cb38568, high: 0xf172840f3e19d0baae09ccfba3dee81f + low: 0x1c49481f043a945e872e38d7479ae730, high: 0xb41b98e82e70f5e5305d59a2eb3786be }, ] .span(); @@ -34073,159 +34034,164 @@ mod msm_tests { 0x0, -0x1, -0x1, + -0x1, 0x0, - 0x1, - 0x0, - 0x1, + -0x1, 0x0, -0x1, -0x1, 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, -0x1, - 0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x0, 0x0, - 0x1, -0x1, 0x0, + 0x1, + 0x0, + 0x1, + 0x1, -0x1, + 0x1, + 0x1, -0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x0, 0x0, 0x0, + 0x1, -0x1, + 0x0, 0x1, + -0x1, 0x0, 0x0, 0x1, 0x1, 0x1, - -0x1, - 0x0, 0x0, -0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, 0x1, - -0x1, + 0x1, 0x0, + 0x1, -0x1, - -0x1, + 0x1, ] .span(), array![ 0x1, - 0x0, - -0x1, -0x1, -0x1, -0x1, 0x0, + 0x1, 0x0, 0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x1, 0x0, 0x1, - -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, - 0x0, - 0x0, - 0x0, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, - 0x0, + -0x1, + -0x1, 0x1, - 0x0, + 0x1, + -0x1, -0x1, 0x1, - 0x0, -0x1, + -0x1, + 0x0, 0x0, -0x1, 0x0, 0x0, - 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, - 0x1, - 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, -0x1, 0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x1, 0x1, + 0x0, + 0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, + -0x1, + -0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, -0x1, + 0x0, + 0x1, 0x1, ] .span() @@ -34233,18 +34199,26 @@ mod msm_tests { ( array![ 0x1, - 0x0, + 0x1, -0x1, + 0x0, + 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, 0x1, -0x1, + 0x1, + -0x1, -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x1, -0x1, @@ -34252,112 +34226,106 @@ mod msm_tests { 0x0, -0x1, 0x1, - 0x1, -0x1, - 0x1, - 0x0, -0x1, 0x0, 0x1, - 0x0, - -0x1, -0x1, 0x1, - 0x0, -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, 0x1, + -0x1, + 0x1, 0x1, + 0x1, + -0x1, -0x1, -0x1, + -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, + -0x1, 0x1, -0x1, -0x1, + 0x0, 0x1, 0x1, - -0x1, 0x0, 0x0, + 0x1, -0x1, -0x1, -0x1, - -0x1, - 0x0, - 0x0, - 0x0, - -0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x0, 0x1, - 0x0, -0x1, 0x1, - -0x1, - -0x1, + 0x0, -0x1, -0x1, ] .span(), array![ + 0x1, + 0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x0, - 0x1, 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, + 0x1, 0x1, -0x1, -0x1, - -0x1, - 0x1, 0x0, -0x1, - -0x1, 0x1, - 0x0, -0x1, -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, 0x0, + -0x1, + 0x0, 0x0, 0x0, 0x1, - 0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x0, + 0x1, + 0x0, + 0x1, + 0x0, -0x1, -0x1, 0x1, @@ -34365,98 +34333,87 @@ mod msm_tests { -0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x0, 0x1, - -0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x0, 0x1, -0x1, 0x1, - -0x1, + 0x0, -0x1, 0x1, + 0x0, -0x1, - -0x1, + 0x0, 0x0, 0x0, -0x1, 0x0, + 0x0, -0x1, + 0x1, + 0x1, + 0x1, ] .span() ), ( array![ + 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, - 0x0, -0x1, 0x1, -0x1, - 0x1, - -0x1, - -0x1, -0x1, 0x0, -0x1, - -0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, 0x1, 0x1, -0x1, - 0x1, + 0x0, + 0x0, 0x0, -0x1, - -0x1, + 0x0, 0x0, 0x1, + 0x0, -0x1, 0x1, -0x1, -0x1, 0x0, - 0x0, - 0x0, + 0x1, -0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x0, 0x0, 0x1, - 0x0, 0x1, 0x0, + 0x0, -0x1, - 0x1, - 0x1, -0x1, 0x0, 0x0, -0x1, + -0x1, + -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, @@ -34464,107 +34421,113 @@ mod msm_tests { -0x1, 0x0, 0x1, + 0x1, + 0x1, + -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x1, + -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x0, + -0x1, -0x1, - 0x1, 0x1, 0x0, - 0x1, 0x0, + 0x1, -0x1, + -0x1, + 0x1, 0x0, -0x1, + -0x1, + -0x1, ] .span(), array![ + 0x0, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, + -0x1, -0x1, 0x1, 0x0, - 0x1, - 0x1, 0x0, -0x1, - -0x1, 0x0, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x0, 0x1, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, - -0x1, - -0x1, - 0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x0, -0x1, 0x1, + 0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, + 0x0, 0x1, 0x1, 0x0, + 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, - -0x1, 0x1, -0x1, - 0x1, - 0x0, 0x0, 0x0, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, - 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x1, 0x0, 0x0, - -0x1, 0x0, - -0x1, - 0x0, - -0x1, 0x1, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, -0x1, + 0x1, + 0x0, + 0x1, -0x1, -0x1, ] @@ -34576,97 +34539,97 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x6952b4ad267e15311ea02c79, - limb1: 0x40c24ab8771c5bbd59ed8f4f, - limb2: 0x33d80079889eac68, + limb0: 0x866d484edccd5a92f1f76e27, + limb1: 0xb30f23de58ba3f91ed9c278c, + limb2: 0xc1a4deb078c8b816, limb3: 0x0 }, y: u384 { - limb0: 0x86351dc4c608918898135266, - limb1: 0x58ce431ce534dad250a84109, - limb2: 0x22fc104b83467f43, + limb0: 0x1167a5dfb26056985beee72f, + limb1: 0x2c58bf508fe25882ef2d646d, + limb2: 0xf9d4ad6d3d8d1fe4, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xd8ab0f10e279b2d1d5ffceb0, - limb1: 0x18ddb26b1eb23be36a964668, - limb2: 0x1feaa108f5462fbb, + limb0: 0x9a74a49a62d922192f9e92df, + limb1: 0xe7009f915587c698f2e31d4d, + limb2: 0x810a16e5ffc2bba, limb3: 0x0 }, y: u384 { - limb0: 0xc5bd2a4149461020a26860ce, - limb1: 0x1a0ec0e05b50bcb8062e766b, - limb2: 0x2b3a332e47d31970, + limb0: 0xcbf8d8e152934b47bb246b2e, + limb1: 0x260b59ba895278d6530d23a8, + limb2: 0xbe1493cbc2cbb587, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x42fd460aea567fe7c6bc3ef5, - limb1: 0xdd9a9df49da4289a1861fa07, - limb2: 0xfe199a69b83f03c2, + limb0: 0x1bd3cb23c0f9d4fe57354e06, + limb1: 0xebd33767fdc9768aa6e4cc8, + limb2: 0x179bd3a02ff75b2, limb3: 0x0 }, y: u384 { - limb0: 0xeabe2d5bd23a8e8cb74f4c3b, - limb1: 0x33ae22361f1712dbc5016e28, - limb2: 0xe37e21b1ba7ae200, + limb0: 0x3a8ab45b60a7ba6c74925d15, + limb1: 0x4741cd48718d48332931ed7d, + limb2: 0x7704953a1a9b9d1e, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x6c40822ec2e603c9161a42d8, - limb1: 0x900139dc70f0966519ed2b2e, - limb2: 0xf0978ed23b787bfd, + limb0: 0x25978e1a2a89a80725b363fc, + limb1: 0x309d8310b4a2a5647cc4640a, + limb2: 0x27004bccc86430aa, limb3: 0x0 }, u384 { - limb0: 0x6933005baffeaaaf2a0c913e, - limb1: 0x85ebaff1907af9f6c19f5f7d, - limb2: 0xda40d8398f250d4a, + limb0: 0xf2bbb164cf0216783ba1f88a, + limb1: 0x47b07e21874e9d010c90b963, + limb2: 0x6614d5c5d82e4fda, limb3: 0x0 }, u384 { - limb0: 0xd8c7b930862a2c8e60bb49a5, - limb1: 0x7455fe6abbafb51089cc832e, - limb2: 0x76fcce95c8ad7b3f, + limb0: 0x2a31ae4f28602e3609e9ca7d, + limb1: 0xd8ad1f05a9c6174b892d059a, + limb2: 0xa584a43f6f3f5f88, limb3: 0x0 }, u384 { - limb0: 0x5e30fd06b11d33e63fe51c05, - limb1: 0xffffffffffffffff0348e409, - limb2: 0x7fffffffffffffff, + limb0: 0xe39f47c37bead7b8c0bfdf08, + limb1: 0x114eee67, + limb2: 0x8000000000000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x939072fbc6a150a6f7b89214, - limb1: 0x8081b094de84b3d7436203b7, - limb2: 0xcd3810ae3bbf8854, + limb0: 0x8171132d0bb16c5ca7c4f217, + limb1: 0x4ed86c7826707bf020d050fa, + limb2: 0xd973c8372424c8ce, limb3: 0x0 }, u384 { - limb0: 0x27b20c625c76374322fb2dc5, - limb1: 0x15c84c35726319fb41bd257e, - limb2: 0xf9931a5b7a25859e, + limb0: 0xbd69963209e1a8079125ce62, + limb1: 0x56e0bd0a7c225dbec01595fe, + limb2: 0xf5f14083d0a53004, limb3: 0x0 }, u384 { - limb0: 0x4890fa575a7f1224f6491edb, - limb1: 0xb6995020874e7fa97ed89015, - limb2: 0x5c7aff8b0289252d, + limb0: 0xe256ba6219711724b7f7a09c, + limb1: 0xd4d38e16a712918ee42e929b, + limb2: 0xfc809f5b78e1731f, limb3: 0x0 }, u384 { - limb0: 0x3cd280c6c933e6d51062913e, - limb1: 0xe7a983efba6cd690c5a6f21c, - limb2: 0xb40c66be28acc6ea, + limb0: 0x97a4f78d5c3bd83417075f4b, + limb1: 0xe6434b025f89d657e5eecaa7, + limb2: 0x8ea16cf322e13968, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34674,78 +34637,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x38cd4327970c30ff991afaa5, - limb1: 0xfabda0dacd02f6b1f8650e3a, - limb2: 0x7a45f98728ec497a, + limb0: 0xaa122a8b81559281e931318e, + limb1: 0x7e0fa42de3df0384988bf134, + limb2: 0xda3369832314d381, limb3: 0x0 }, u384 { - limb0: 0xb98224761401ecad86974d5b, - limb1: 0xccb3c25a2cf9022e242db2ab, - limb2: 0x2cc3ceca31255f9, + limb0: 0x2cdac923eb720290d97716f1, + limb1: 0xcb31e33614d1ecdee5368986, + limb2: 0xb1e7179542b7bbad, limb3: 0x0 }, u384 { - limb0: 0xe536fc67749862e2e01311b3, - limb1: 0xaea40d06039fb7d462c5d7a4, - limb2: 0x4d48906d1e7231b5, + limb0: 0x473a649d8be8643dba6a0977, + limb1: 0xe3626dc4e2cb9524e740c7c6, + limb2: 0x5860f47b34d794d3, limb3: 0x0 }, u384 { - limb0: 0xba5827635a41d64ac1cca03, - limb1: 0xc8dbea5f931efde6da6d9a5a, - limb2: 0x42384c574f7706f2, + limb0: 0x6d2635a26df8f9713e14970a, + limb1: 0x70505529ef907667e274eabd, + limb2: 0x622ffa8f6bc91403, limb3: 0x0 }, u384 { - limb0: 0x5645aa4aa5224e947c128d76, - limb1: 0xc7cc3167d1c1f31e52f28743, - limb2: 0x9b60e449a2ab7867, + limb0: 0xc1fc54c29ea861e6474f4b12, + limb1: 0x914593f0b68fba7592ae4bdb, + limb2: 0xfb604e134cab04c1, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x8f324e26e693495c60c11a1, - limb1: 0x838bd41215a0eae2d7ae1a05, - limb2: 0x9c8874c3a23cba4f, + limb0: 0x8a17863b51d9f68d9662b1b6, + limb1: 0x27eaf7490d136390e5b236d9, + limb2: 0xf22a7981fd017da4, limb3: 0x0 }, u384 { - limb0: 0x15de56b0873b82dbf4de5749, - limb1: 0x987a157620b5b5decc2c0673, - limb2: 0xd305b8805706a752, + limb0: 0x2de31b5e452b983af808bb94, + limb1: 0x60252b4964f09037409719f7, + limb2: 0xb998c39ab484501e, limb3: 0x0 }, u384 { - limb0: 0xfbf6d86379797f04bbffdf9f, - limb1: 0xfe3130e3b3257da277ebf094, - limb2: 0x875cfccd11c0043f, + limb0: 0x305f18aeb217a20707c57b2a, + limb1: 0xd1c8e29e9181fae83d460243, + limb2: 0xe7845b804e2a25de, limb3: 0x0 }, u384 { - limb0: 0x3d51f86b470ca07f6a6a9ddb, - limb1: 0xd6244c22f77e91ccaaf2a27d, - limb2: 0xb98edfe15878f8c0, + limb0: 0xa6f3d80a915455cd48f89c68, + limb1: 0x9aaf7988c33558576a57db8f, + limb2: 0xbfddc2dd184d5aac, limb3: 0x0 }, u384 { - limb0: 0x27b20c625c76374322fb2dcc, - limb1: 0x15c84c35726319fb41bd257e, - limb2: 0xf9931a5b7a25859e, + limb0: 0xbd69963209e1a8079125ce69, + limb1: 0x56e0bd0a7c225dbec01595fe, + limb2: 0xf5f14083d0a53004, limb3: 0x0 }, u384 { - limb0: 0x4890fa575a7f1224f6491edb, - limb1: 0xb6995020874e7fa97ed89015, - limb2: 0x5c7aff8b0289252d, + limb0: 0xe256ba6219711724b7f7a09c, + limb1: 0xd4d38e16a712918ee42e929b, + limb2: 0xfc809f5b78e1731f, limb3: 0x0 }, u384 { - limb0: 0x3cd280c6c933e6d51062913e, - limb1: 0xe7a983efba6cd690c5a6f21c, - limb2: 0xb40c66be28acc6ea, + limb0: 0x97a4f78d5c3bd83417075f4b, + limb1: 0xe6434b025f89d657e5eecaa7, + limb2: 0x8ea16cf322e13968, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34755,54 +34718,54 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x71e15cba626be9f812a3d051, - limb1: 0xdc3983a61ec6ca47292a445a, - limb2: 0x5333d607317262a4, + limb0: 0x328bb3d3afe253047d16aa50, + limb1: 0x3593d3b593ee60decb39b4b5, + limb2: 0x1faa9849386f156e, limb3: 0x0 }, u384 { - limb0: 0x3673bb83480784ea86ebced9, - limb1: 0xc2abf63d6f4202067be6e217, - limb2: 0x1c97568d13cfb548, + limb0: 0xb232e143567f707c4ed340d6, + limb1: 0x93d9e76b71b2c934b3b4090e, + limb2: 0xef987a4a834acff5, limb3: 0x0 }, u384 { - limb0: 0x2bee6b942c2af022b77f3a11, - limb1: 0x4ec6bc63ede25c87d792f614, - limb2: 0x8e889251077f1a9a, + limb0: 0x2f166a7fabe8c5d4e7a77f1f, + limb1: 0x52b90a83d45814a7f4f10f4, + limb2: 0xbebc96e07327bdcb, limb3: 0x0 }, u384 { - limb0: 0x7ce6c8c5f5e7ce3b8bf79cf5, - limb1: 0xffffffffffffffff6eae5ea6, - limb2: 0x7fffffffffffffff, + limb0: 0xc8781b538062b02ea952ffeb, + limb1: 0xffffffffffffffffa4fb9667, + limb2: 0xffffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x41a1d9d9593d24f9003ad66e, - limb1: 0x1eb6754625f5a1a541e896d5, - limb2: 0x71c41b24ffb27ee6, + limb0: 0xd0c77767c7d81ebab3b45293, + limb1: 0x9209a4048ce91bf8e3cfd1e4, + limb2: 0x6ed79cdbd7c3a050, limb3: 0x0 }, u384 { - limb0: 0x755ceff967d26349dfb273a8, - limb1: 0xca95f5042cf86ffd53ff97b6, - limb2: 0x5c0880e36e61a6ec, + limb0: 0x881e8777ba40f115fdbea762, + limb1: 0xfb0708a8a4b6afa3c8ec8979, + limb2: 0x61e834aa28912108, limb3: 0x0 }, u384 { - limb0: 0x74dc9be0fe876c18aec6a267, - limb1: 0xaf56289ac8226d536b1f750e, - limb2: 0xfa6fd85f5e2d002f, + limb0: 0x80b70e8153025d1f53365325, + limb1: 0x4d0393116d5e6e5e43553c54, + limb2: 0x47fae37b4091e83e, limb3: 0x0 }, u384 { - limb0: 0xcd7a26630d3849345902ef07, - limb1: 0xf8e1c3d12d6f66ab4fe3b02, - limb2: 0xc7f9c62ebc054398, + limb0: 0x839d9b41d63010aed9603e64, + limb1: 0xb251cf4f62bc4f50e0a7d4e6, + limb2: 0x4835aa353badc5c4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34810,78 +34773,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x9f169f0838f68cf23ea81c0d, - limb1: 0xb45fe8b425ad8ea8361ace6a, - limb2: 0x7e44b0f8c03e2071, + limb0: 0xea245810de0a6546a789addd, + limb1: 0x2304aef2ca4b4b8d8ff9a1c9, + limb2: 0xcda2ac2187d47d3d, limb3: 0x0 }, u384 { - limb0: 0x1f765bb91dbbb0ca5c61b315, - limb1: 0x7f39f0fe19a1d217166c9568, - limb2: 0x523f17ac1fd28d5c, + limb0: 0x4219a6f292110a2460db1e5a, + limb1: 0x1c9bd6be9a11a8f92d59c2cf, + limb2: 0x6e480b37c5f5bff3, limb3: 0x0 }, u384 { - limb0: 0xf75451ca90bffec174185894, - limb1: 0x3346f8a2a735f03e63637e26, - limb2: 0xddcbda99cc097ff6, + limb0: 0x8e7787007023788151034cf4, + limb1: 0xf6c27a318dfed085bd5ff39, + limb2: 0x99b7277dba7427a3, limb3: 0x0 }, u384 { - limb0: 0x59ce854b6a7b685e7dd8e6ee, - limb1: 0x4ebe57636d36a6a25270f56c, - limb2: 0x7d5decad984b2b04, + limb0: 0xd22612d9d63ec4d7d58f8c04, + limb1: 0x24fa4436c2dc3dd74cfb923b, + limb2: 0xd69cc4a513c11701, limb3: 0x0 }, u384 { - limb0: 0x829e94eb3fe3559ddd294a70, - limb1: 0xa2b0080f594be86b93f6d250, - limb2: 0x902719f50391dd2, + limb0: 0x4a4e0eebfbbd9a9c0416db23, + limb1: 0x2670188b80355c6f0c8e36f0, + limb2: 0x232461af4a99cdad, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xcb6cf4f170ac02d2019be875, - limb1: 0xd6fd34eb09b76b84cd5c1fd4, - limb2: 0x1c5cbe02fde1784a, + limb0: 0xb57443d676e8d71de9ee4d78, + limb1: 0xfe437c1fda5fc3ce3aaebd41, + limb2: 0x7e54a02e6596233, limb3: 0x0 }, u384 { - limb0: 0x358a8fd1d6c0b7071de1313a, - limb1: 0x8a19b31d3acb0fed4bfd25fd, - limb2: 0x843b863804ab9079, + limb0: 0xb8d5b44617c6979bf0369b50, + limb1: 0xdd313c9c80fecd7a7e77c252, + limb2: 0xad5970a71bf7e73e, limb3: 0x0 }, u384 { - limb0: 0x32084326f5b3f4b2c76e87b7, - limb1: 0xcb5b1c3b78f0fd47eddc3365, - limb2: 0xd90eea9b933b014d, + limb0: 0x8501658945108bdc467c49d4, + limb1: 0x1b190579fd950493d754a64f, + limb2: 0xf7dc385ec3fd59b4, limb3: 0x0 }, u384 { - limb0: 0xdff8e68eb5c7256c6f4f72b4, - limb1: 0x8b993af1a9d65e9034dc33e8, - limb2: 0xe998866c23d7580e, + limb0: 0x6a16b634a3289384a5560ef1, + limb1: 0x72464f30400f472f0866a432, + limb2: 0x684f4450798408b1, limb3: 0x0 }, u384 { - limb0: 0x755ceff967d26349dfb273af, - limb1: 0xca95f5042cf86ffd53ff97b6, - limb2: 0x5c0880e36e61a6ec, + limb0: 0x881e8777ba40f115fdbea769, + limb1: 0xfb0708a8a4b6afa3c8ec8979, + limb2: 0x61e834aa28912108, limb3: 0x0 }, u384 { - limb0: 0x74dc9be0fe876c18aec6a267, - limb1: 0xaf56289ac8226d536b1f750e, - limb2: 0xfa6fd85f5e2d002f, + limb0: 0x80b70e8153025d1f53365325, + limb1: 0x4d0393116d5e6e5e43553c54, + limb2: 0x47fae37b4091e83e, limb3: 0x0 }, u384 { - limb0: 0xcd7a26630d3849345902ef07, - limb1: 0xf8e1c3d12d6f66ab4fe3b02, - limb2: 0xc7f9c62ebc054398, + limb0: 0x839d9b41d63010aed9603e64, + limb1: 0xb251cf4f62bc4f50e0a7d4e6, + limb2: 0x4835aa353badc5c4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34891,9 +34854,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xb560cc4de55a2a5e41f6f2a5, - limb1: 0x7906c569b48e7107f1c5a4b, - limb2: 0xa55c0e530a647758, + limb0: 0xcdc949f5e13905d9afc32cf4, + limb1: 0xc011a38edadd458bd6d7c753, + limb2: 0x8a705066548c32c8, limb3: 0x0 }, u384 { @@ -34906,15 +34869,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x681798e5c01a717c8175601, - limb1: 0x930ff23647547fc222b326eb, - limb2: 0x7219c89dde631f0c, + limb0: 0xa25f9d75c82e962e19fe73fa, + limb1: 0x452cb72bf959ef46739166f8, + limb2: 0xed91956ccb22ac15, limb3: 0x0 }, u384 { - limb0: 0xe457aae4332fcd446343eab9, - limb1: 0x987afa043a99b827d07bf8f, - limb2: 0xe1fbc48d527acc82, + limb0: 0x49b79041dc2d08e7792c1b4a, + limb1: 0xa422cf82a9ba1fe62ae95ea, + limb2: 0xf675a1579d045e93, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34922,49 +34885,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe97d82d71b7530d887fd656d, - limb1: 0xcc394a4d758bfdeda8e8426b, - limb2: 0xfcb976d8b207c2b, + limb0: 0x5c4957cec2b336694bd84d7, + limb1: 0x2e1d4fde140016229d563496, + limb2: 0x2f8766b6ace95595, limb3: 0x0 }, u384 { - limb0: 0xcc1b061f25879aa8fba79b16, - limb1: 0x7c9785d46d5525677af9cda0, - limb2: 0xe37e479d05567ff6, + limb0: 0xea79d9d191b9a0dd3494d5a5, + limb1: 0x43e288d03324201b46f68e3a, + limb2: 0x220f5a2925c83b4d, limb3: 0x0 }, u384 { - limb0: 0x67c14e6da3ddeb49ff9fc27, - limb1: 0x35981861ad99863db29e3e93, - limb2: 0xedd3216aafa08063, + limb0: 0x57cd7bc0d20b1981b20e5261, + limb1: 0x89a24472f51d79aa7dac77c3, + limb2: 0x3cf1c2282d934a7f, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x2d8a52e4840b91a978a3657a, - limb1: 0x56f9f7bf34f7e4ef2e6106d, - limb2: 0x1eb47c5114b5d958, + limb0: 0x709d4e3879461b48b5f542bc, + limb1: 0xe4390233d1758aed28f9d0cc, + limb2: 0x7efb15f98df2b494, limb3: 0x0 }, u384 { - limb0: 0x3e65ac3d664e9ce4b6db81f5, - limb1: 0x42b5cd61d9a340916b363cef, - limb2: 0x2de25fdd415b978e, + limb0: 0x404f1cd053b3e5a5034d5ec, + limb1: 0x47cf3ac92a416df4b2c61968, + limb2: 0xbd3769654b1e9605, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x681798e5c01a717c8175601, - limb1: 0x930ff23647547fc222b326eb, - limb2: 0x7219c89dde631f0c, + limb0: 0xa25f9d75c82e962e19fe73fa, + limb1: 0x452cb72bf959ef46739166f8, + limb2: 0xed91956ccb22ac15, limb3: 0x0 }, u384 { - limb0: 0xe457aae4332fcd446343eab9, - limb1: 0x987afa043a99b827d07bf8f, - limb2: 0xe1fbc48d527acc82, + limb0: 0x49b79041dc2d08e7792c1b4a, + limb1: 0xa422cf82a9ba1fe62ae95ea, + limb2: 0xf675a1579d045e93, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -34974,16 +34937,16 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x2cf542ea9e37d6ef1882353, - limb1: 0xd99f147bbd7893d471c62de4, - limb2: 0x5ccfd7dc1b09d0f7, + limb0: 0xd9d3fa9f5f9ab33b0aea1507, + limb1: 0xba7187e355a08a83dd44751b, + limb2: 0x6fb53076fe034213, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0x2c26aec30946de6525cce82b, - limb1: 0x909f1984c2370386a369842f, - limb2: 0x656cd6f9f66f3fcc, + limb0: 0x1f805aadf8e0d59e509070e7, + limb1: 0x6ee4f3e30f771138a4be10b5, + limb2: 0x2c658768510d272f, limb3: 0x0 } ], @@ -34994,15 +34957,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0xc641f115373b7446dda8a794, - limb1: 0x9c474b19c05e26a0151b108e, - limb2: 0x7456277c7e15c96a, + limb0: 0xcc5457251ac194ae7c6467b5, + limb1: 0x32cffbb0297a50f92e356991, + limb2: 0xfd6c8bdc581f4dad, limb3: 0x0 }, y: u384 { - limb0: 0x1560f7cc75d7ae8bc1b320e3, - limb1: 0xc52af524fc4f9288c3ef24d8, - limb2: 0x8dee80a0a965e44b, + limb0: 0x5eea6d6c40e5755a07720861, + limb1: 0x16523f6e7bc794502eb36768, + limb2: 0xc1b221e6732e0742, limb3: 0x0 } } @@ -35015,57 +34978,57 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x3a50730806a3fe9e11092cd8, - limb1: 0xc872e95b9145d79689fc43d8, - limb2: 0xea2a5e00ed5d9b71, + limb0: 0x9db4f484854f45c914f584aa, + limb1: 0x6f486474b535a1785f1a2fa4, + limb2: 0x675cc7d0b4fc7784, limb3: 0x0 }, y: u384 { - limb0: 0xfcac9147578305722d6f1ccc, - limb1: 0xb76baebb3ac751792d5611ad, - limb2: 0xac33a274813e5633, + limb0: 0x1398becbff6fe4da49773ca7, + limb1: 0xa27452254963d04bb2a1dcd2, + limb2: 0x684285f626ab2df7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1c1d1c308c7bcb75a7778a70, - limb1: 0x3db1da9d0f08f61495e32bf9, - limb2: 0xbf6f065f7dd9fc4b, + limb0: 0x6e965c8ef5297aa31792e94c, + limb1: 0x8ddd2f527ce9e919fb5be4ef, + limb2: 0xac016840a0552a0d, limb3: 0x0 }, y: u384 { - limb0: 0xa602615f45ae7e39174cdb9f, - limb1: 0xd91a8968f83593bae0007b01, - limb2: 0x4c96010e2dceb309, + limb0: 0x92f601db3bb3059750b49021, + limb1: 0xe7655195f4c05deb481945e2, + limb2: 0xc1205940b468e7b, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xef1d18a0e2fbfb33e066aea8, - limb1: 0xae17f9c560d8a18692f1d2bd, - limb2: 0x8c5392cc3eb57b25, + limb0: 0xe475cbb8bc29d34beb241249, + limb1: 0x34e4408e725e44fcad6c2ca6, + limb2: 0xc4857ecee324178e, limb3: 0x0 }, y: u384 { - limb0: 0x65807d3536c4817937913607, - limb1: 0x5ef80e6cc06c50fb1ed1f57c, - limb2: 0x72f05e0bed6e43b9, + limb0: 0x7c8da49401a3575e98ec7af7, + limb1: 0xb7328160463c698d66d9c1d9, + limb2: 0xf4faa17e9cce28c4, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x84e322dd379e175b1a1698dc, - limb1: 0x354bd5872fd5b09dad2a36a1, - limb2: 0xe4ba8a72c80a1488, + limb0: 0x198102475f672fb15128d6fa, + limb1: 0x980ea43fa5de414613f1f4f8, + limb2: 0x937ea1f52baf5f32, limb3: 0x0 }, y: u384 { - limb0: 0xe02b60ab338a17e1e4ed28a1, - limb1: 0x6f0da21819954854b77b0b67, - limb2: 0xe95ad09ef2a99c6a, + limb0: 0x266c5b406217aa67fcfd2d40, + limb1: 0x84b6d6516165655501d56a09, + limb2: 0x3b9e70fc5fc40825, limb3: 0x0 } }, @@ -35073,16 +35036,16 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x2982100c03729e33c5507d2b909e7f78, high: 0xafdb4e0b01716f1d956a2f20ee283bb7 + low: 0x9f09304fb382e25fc370e643ce430e91, high: 0x3c8d5ec3a6c5616acc29404f8edd5b72 }, u256 { - low: 0x2c05b870cd34bcd7b7ed75b463d0fccd, high: 0x671493804fe973d261cec19fff83cec + low: 0xeba71f554ef608a6e28e0dc078dc1ef9, high: 0xd43bcfc33479d19380445ac49c153e62 }, u256 { - low: 0xf2460382951fe052c553b5d2f74429, high: 0xecf150e6c6f149c70c15a57509c64c1d + low: 0x50c47c2cbc00d3decc8912c1b039ebee, high: 0x58657f3769e933b18224bd9112a1e47c }, u256 { - low: 0x25cf51c49c89929692b035e01ca5a2f5, high: 0xc96ef1a5ac7074642734f9bbc7405255 + low: 0xbedc37d18f325f312e2cd85fcef7750, high: 0x78b65d0bd8886ebab1e312441b687dc1 }, ] .span(); @@ -35090,34 +35053,37 @@ mod msm_tests { array![ ( array![ + -0x1, + 0x0, 0x1, + 0x0, 0x1, -0x1, -0x1, + 0x0, + -0x1, + -0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x0, - 0x0, 0x1, -0x1, + 0x0, + 0x1, 0x1, 0x0, - -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, - 0x0, + 0x1, -0x1, - 0x0, 0x1, -0x1, -0x1, @@ -35125,32 +35091,30 @@ mod msm_tests { 0x1, 0x1, 0x0, - -0x1, - 0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x0, - 0x0, + -0x1, 0x0, -0x1, 0x1, - 0x0, + -0x1, + -0x1, + 0x1, 0x1, 0x0, 0x0, 0x1, - 0x1, + -0x1, 0x0, - 0x1, + -0x1, 0x0, - 0x1, -0x1, + -0x1, + 0x0, + 0x0, 0x0, -0x1, -0x1, @@ -35158,45 +35122,62 @@ mod msm_tests { -0x1, 0x1, 0x1, - 0x0, - 0x1, - 0x1, - 0x0, + -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x1, + -0x1, 0x0, -0x1, 0x0, + 0x1, -0x1, + 0x1, ] .span(), array![ - 0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, - -0x1, - 0x1, - -0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x1, + -0x1, + 0x1, + 0x0, + -0x1, + 0x0, + 0x0, 0x0, + 0x0, + -0x1, 0x1, 0x0, 0x1, @@ -35205,493 +35186,457 @@ mod msm_tests { 0x1, 0x0, 0x0, - 0x1, + 0x0, 0x0, 0x1, - 0x1, - -0x1, -0x1, 0x1, 0x0, - 0x1, 0x0, 0x0, - -0x1, - 0x1, - -0x1, - -0x1, - -0x1, 0x0, -0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, 0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, - 0x0, - 0x1, - 0x0, 0x1, - 0x0, -0x1, 0x1, + 0x1, + 0x1, 0x0, 0x0, - -0x1, - 0x0, 0x1, 0x0, -0x1, - -0x1, + 0x0, -0x1, 0x1, - -0x1, - -0x1, + 0x1, ] .span() ), ( array![ - -0x1, - 0x0, 0x0, -0x1, - -0x1, - 0x0, - 0x0, - 0x1, - 0x1, 0x1, -0x1, - 0x0, -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, 0x1, -0x1, 0x1, - 0x1, -0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, + -0x1, 0x0, 0x0, 0x1, 0x0, - 0x1, + -0x1, -0x1, 0x1, 0x0, 0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x1, + 0x0, 0x0, 0x1, -0x1, + 0x0, + 0x0, + -0x1, 0x1, + -0x1, 0x1, 0x1, + 0x0, 0x1, -0x1, + -0x1, 0x0, 0x0, - 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, -0x1, - 0x0, + 0x1, 0x0, 0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, + 0x0, -0x1, - -0x1, - 0x1, 0x1, 0x0, - -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, - ] - .span(), - array![ -0x1, -0x1, -0x1, -0x1, -0x1, 0x1, + 0x1, 0x0, + -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, + ] + .span(), + array![ -0x1, 0x1, 0x1, - 0x0, + -0x1, 0x0, -0x1, 0x1, - 0x0, - 0x0, + -0x1, + 0x1, 0x1, 0x1, 0x0, - 0x0, + 0x1, + -0x1, 0x0, 0x1, + -0x1, + 0x1, 0x1, -0x1, + 0x0, -0x1, -0x1, + 0x0, -0x1, 0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, 0x1, 0x0, 0x0, - 0x1, - 0x0, -0x1, + 0x0, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x1, 0x0, - 0x1, - 0x1, + 0x0, + -0x1, + 0x0, + 0x0, + 0x0, 0x0, -0x1, -0x1, 0x1, + 0x0, + 0x1, + -0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, - 0x0, + -0x1, 0x1, 0x0, -0x1, - -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x1, - 0x1, + -0x1, + -0x1, + -0x1, + 0x0, + -0x1, + -0x1, ] .span() ), ( array![ - -0x1, - -0x1, + 0x1, 0x0, 0x1, 0x1, + 0x0, + 0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, - 0x1, - 0x1, + -0x1, + 0x0, 0x0, + 0x1, -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, - 0x1, 0x0, + 0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, - 0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, -0x1, - -0x1, - -0x1, 0x0, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, + 0x0, + 0x1, -0x1, 0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x1, + -0x1, 0x1, 0x0, 0x0, - 0x1, + 0x0, + 0x0, + -0x1, -0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, + -0x1, -0x1, 0x1, -0x1, - 0x0, + 0x1, -0x1, + 0x1, + 0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x1, 0x1, ] .span(), array![ + 0x0, + 0x0, 0x1, 0x1, - -0x1, + 0x0, + 0x1, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, - 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x1, + -0x1, 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, 0x0, -0x1, - -0x1, + 0x0, 0x1, -0x1, - 0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, + -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, - 0x1, - -0x1, - -0x1, - 0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, + 0x0, -0x1, 0x1, + 0x0, -0x1, -0x1, + 0x0, -0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, - -0x1, 0x1, -0x1, - -0x1, 0x0, -0x1, -0x1, 0x1, -0x1, + 0x1, + 0x1, -0x1, 0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, ] .span() ), ( array![ -0x1, - 0x0, -0x1, 0x0, -0x1, - 0x0, - 0x1, - 0x0, 0x1, - 0x1, - 0x0, - 0x0, -0x1, 0x0, -0x1, - -0x1, + 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, -0x1, - -0x1, - 0x1, - 0x1, 0x1, 0x1, 0x0, + -0x1, + 0x1, 0x0, 0x0, - 0x0, - 0x0, + -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x0, -0x1, + 0x1, + 0x0, 0x0, -0x1, -0x1, -0x1, - -0x1, - 0x0, + 0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, - 0x0, -0x1, 0x1, 0x1, + 0x1, -0x1, 0x0, -0x1, - 0x0, -0x1, 0x1, 0x1, - 0x0, - 0x0, - -0x1, - ] - .span(), - array![ -0x1, -0x1, - -0x1, - 0x0, 0x1, - -0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, 0x1, + 0x1, + 0x1, + -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x0, @@ -35699,10 +35644,19 @@ mod msm_tests { 0x0, 0x0, 0x1, + ] + .span(), + array![ + 0x1, + 0x1, + 0x1, + 0x0, 0x0, + 0x1, 0x0, 0x1, 0x1, + -0x1, 0x1, -0x1, 0x0, @@ -35712,53 +35666,68 @@ mod msm_tests { -0x1, -0x1, 0x1, - 0x0, - -0x1, - -0x1, -0x1, + 0x1, + 0x0, 0x0, - -0x1, - -0x1, 0x1, 0x1, + -0x1, 0x1, -0x1, - 0x0, - 0x0, + 0x1, + -0x1, + -0x1, -0x1, 0x1, -0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, + 0x0, 0x1, - -0x1, - -0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, -0x1, - -0x1, + 0x0, -0x1, 0x1, 0x1, + -0x1, 0x0, + 0x1, 0x0, - -0x1, 0x0, 0x0, + 0x1, -0x1, 0x1, 0x1, 0x1, 0x0, - -0x1, + 0x0, + 0x1, + 0x0, 0x1, 0x1, + 0x0, + -0x1, + 0x0, -0x1, -0x1, + 0x0, + 0x1, + 0x1, + 0x1, + 0x0, + 0x1, ] .span() ), @@ -35768,109 +35737,109 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x1343b7a57413ecc0941c367c, - limb1: 0x7e50686d3afce5e1fe33962c, - limb2: 0x6468334c663c3576, + limb0: 0x251201724f9c63d8468c62d9, + limb1: 0x7ae56dc9ba89288926b6911c, + limb2: 0xa99cc6b880d24c1d, limb3: 0x0 }, y: u384 { - limb0: 0x64d3abdaa3a4866bcb20e8cf, - limb1: 0xc303dcce27360597433ff6c1, - limb2: 0x6eac8291ab47d902, + limb0: 0x510f46e46c85f3a0797c3e43, + limb1: 0xbdb01baebfeb8b5974877c, + limb2: 0xab762f8d1333eb97, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xb532aaf8b850d7719e871904, - limb1: 0x653edfcc73e4bea49b6ec134, - limb2: 0x1037d270251e14be, + limb0: 0xbfc5a09c56a03eb5e4e8a0fb, + limb1: 0x90e4ab3e6b9a878477b731d4, + limb2: 0x72af3a49c9c2a046, limb3: 0x0 }, y: u384 { - limb0: 0xb117b2db7af42e0dc2e878d0, - limb1: 0x7a09cdc7db5a19b2c944bb53, - limb2: 0x5e584d8b0eeff552, + limb0: 0x502daa51aa1a362b732bb33e, + limb1: 0x3fb44c457f6c4694b0ccb0be, + limb2: 0x2ca3352a4c369c36, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x71d577aa8699fbe1658947ac, - limb1: 0x50c5ebbad688ebc776e233d1, - limb2: 0x12e0a27178f5a381, + limb0: 0xa05224f640de072853359222, + limb1: 0x1077ad6566f0066b5f882585, + limb2: 0x29242531da11ac14, limb3: 0x0 }, y: u384 { - limb0: 0x1ec66640eb402247e4782709, - limb1: 0x9540dc2db1d4dad83a01c83a, - limb2: 0x3607d36dfaa8599b, + limb0: 0xbe5f00161c8bccda2e2aab9b, + limb1: 0x319e57416415c434ac879299, + limb2: 0x81f1179be56dd4cb, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x7ea4c09cd64ad5f100d7a905, - limb1: 0x4377ddaef37aca28f2f9954c, - limb2: 0xa154ffc1ee3eebbd, + limb0: 0xa2eb2d208822e5ff9ab9ec7a, + limb1: 0xb29a2d409e91a41c4a6fa783, + limb2: 0x795042c0ef58ae08, limb3: 0x0 }, u384 { - limb0: 0xc62edf6e3645e606b555ebf6, - limb1: 0x75570d6f87bf78d108ed3b40, - limb2: 0xbb6ff8614f490a87, + limb0: 0xe268d4864cad30345196e1f7, + limb1: 0x2f10730b385be07f08060865, + limb2: 0x2a11347723a0d0fc, limb3: 0x0 }, u384 { - limb0: 0x46774416b76875c2e44f3b, - limb1: 0xeea77221f4683203b14c1d4d, - limb2: 0x5d7b6f02d363df6d, + limb0: 0x2a8a468336733a1939fd9b0e, + limb1: 0x5d58fc38f55f7b0856ca568, + limb2: 0x1daa5fba9dc1f21f, limb3: 0x0 }, u384 { - limb0: 0x113f2d6f0d672de9577b515b, - limb1: 0x38b9afa1d58694a83233a7d3, - limb2: 0x79c2e3b8dffddaa7, + limb0: 0xa904e7580aed584c6e485dd9, + limb1: 0x962d89308ef83bbe8bb24343, + limb2: 0x559cf6971acfba0, limb3: 0x0 }, u384 { - limb0: 0x1be8015509a9129a0ee90848, - limb1: 0xffffffffffffffffcc0b5c3e, - limb2: 0xffffffffffffffff, + limb0: 0xf5651ad751fc8d6b9958ef37, + limb1: 0xfffffffffffffffff3100a35, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xf2a2fc5effe018fd1cbff495, - limb1: 0x1a1eaac56bb3b82f8792307f, - limb2: 0xec39678b9681cede, + limb0: 0xaf72f871795067908b3cff03, + limb1: 0x1e80e991812b34a3b76b9fe0, + limb2: 0x4948b2a587168c4, limb3: 0x0 }, u384 { - limb0: 0xd8cd94b804f1ba05574c9c2b, - limb1: 0x1eca3bb8bd10b97b3cbdd537, - limb2: 0x3e287924abf11ea4, + limb0: 0x90eea671a29de5462d6f18dc, + limb1: 0xbf206cfa5289df3ff17c046f, + limb2: 0x1c83f1164f7d4949, limb3: 0x0 }, u384 { - limb0: 0xba37b6c3b7e7d83632ff93cf, - limb1: 0xd22afe2c6fb9d8403e6000b9, - limb2: 0x3f5b927c02aa7159, + limb0: 0x3a6c5a6ae7664337d1ff7c68, + limb1: 0x6caa1054d29b0e5609b9450e, + limb2: 0xe0e0e5c06c8d0355, limb3: 0x0 }, u384 { - limb0: 0x23ce028b9fde06dde3b35bcb, - limb1: 0x379b212832cdebc02c5c9844, - limb2: 0x2a1d7a4ab959a29f, + limb0: 0xdefb601777887ad92c384921, + limb1: 0xffea816cc059a14103fd398c, + limb2: 0x33a54fed8946fa92, limb3: 0x0 }, u384 { - limb0: 0x224e7da3de323698b8e5bb74, - limb1: 0x9827044d9405fa4ea1d0f0a3, - limb2: 0x80f04b1427cca31e, + limb0: 0xd0abdf7a1a59d8ba509e36aa, + limb1: 0xbb0219a0fb1ac6a1bd7538b0, + limb2: 0xeb00e8721b089b8f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -35878,90 +35847,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xc832ac02bc74e9358044f61, - limb1: 0x64eef0368db09ac50a6bf7c, - limb2: 0x4295c2423f0315d9, + limb0: 0x8b69b1ef35a5c40926075aba, + limb1: 0x87e2de88fb6b86bcc607a3ba, + limb2: 0xa4b0be5132721ec8, limb3: 0x0 }, u384 { - limb0: 0x26a21e6904676f5e18fb6e66, - limb1: 0xa6f13e4c03e462398608bf70, - limb2: 0x21b53ae85725c174, + limb0: 0x310f0eed2da31426ac747e80, + limb1: 0xf7d82c29e2d5bc340dd966fa, + limb2: 0x5bf69e0be0c4e161, limb3: 0x0 }, u384 { - limb0: 0x544a221126760162d1a3a43a, - limb1: 0xd4670de0e0405b307e20cb42, - limb2: 0x5c2dc5f677fa377, + limb0: 0x4f5903f73e194d6cfe5b9f27, + limb1: 0x803071d7cf07302682f8dc1d, + limb2: 0x5aaa88db244cc125, limb3: 0x0 }, u384 { - limb0: 0x150bfd93fea7d3720278afe3, - limb1: 0xd983e7d14bdc92805861f2a2, - limb2: 0x4d52a1b995575d15, + limb0: 0x329415e9409fe727d685e11b, + limb1: 0x70f2246e80ff304d350b02ac, + limb2: 0x66e449172199af4f, limb3: 0x0 }, u384 { - limb0: 0x49830d176643a4d7eeb80929, - limb1: 0xd894f4d7de0d18d252cf3b39, - limb2: 0xd5a82ceaf0c64e4d, + limb0: 0xff3ca5c8e925d6a2c087d7d8, + limb1: 0x2d6bbfe784db9a1f04226880, + limb2: 0xa5a330f3242ab5d4, limb3: 0x0 }, u384 { - limb0: 0xa1f03343402b6c95a28f50f5, - limb1: 0xf1ca96cf7244709bc94417b3, - limb2: 0x83b63ce179ac2028, + limb0: 0x703e8b0ab124b8e1a03ad440, + limb1: 0xe97f5b258e5e8605dc482484, + limb2: 0xeffe5a15e474c022, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xa274e698ff20aef1c93fc6f9, - limb1: 0xb6d6ab65f1ea094cb4ff537f, - limb2: 0x7591d4d11d8ca812, + limb0: 0xcc24cb1a5132d4f3ceaaf915, + limb1: 0xd58662fa882e707a03f15f24, + limb2: 0x200fce286b19dd5c, limb3: 0x0 }, u384 { - limb0: 0xed9f1108229c1626631848fe, - limb1: 0xd787a20d2b75125ea930d486, - limb2: 0xb31b5000b397d67c, + limb0: 0xf6868d1b725144eb3e09ae04, + limb1: 0x39e2fad841c51abf9a641f0c, + limb2: 0xc79b979c2c6d0104, limb3: 0x0 }, u384 { - limb0: 0x1785ff5a0756e97c64fd0e7a, - limb1: 0xbf2cf3370e14e9c1b4a00514, - limb2: 0xbb81016412a91974, + limb0: 0x98f678ec53cbd68cbdfc7dbe, + limb1: 0xf8a67251c23d645a4410e363, + limb2: 0x26264842f7db1755, limb3: 0x0 }, u384 { - limb0: 0xed450e305ef2491056a77ec4, - limb1: 0x9f5c92decf552a70be1a5a5c, - limb2: 0x1307bf96a7f54138, + limb0: 0xc8529915be0bc381c0c702bb, + limb1: 0x1dea738ac39e9d6ad35832ba, + limb2: 0x6e19baa9196242c9, limb3: 0x0 }, u384 { - limb0: 0xc8f30433185138356594c7ca, - limb1: 0x47db59d7c93a91a1a97469ad, - limb2: 0xc4ba86b1c289947a, + limb0: 0x45a1c2c85b12d26461c2ae68, + limb1: 0xdc2f206130454dac1fb09145, + limb2: 0x898a4c350cb98a37, limb3: 0x0 }, u384 { - limb0: 0xba37b6c3b7e7d83632ff93d6, - limb1: 0xd22afe2c6fb9d8403e6000b9, - limb2: 0x3f5b927c02aa7159, + limb0: 0x3a6c5a6ae7664337d1ff7c6f, + limb1: 0x6caa1054d29b0e5609b9450e, + limb2: 0xe0e0e5c06c8d0355, limb3: 0x0 }, u384 { - limb0: 0x23ce028b9fde06dde3b35bcb, - limb1: 0x379b212832cdebc02c5c9844, - limb2: 0x2a1d7a4ab959a29f, + limb0: 0xdefb601777887ad92c384921, + limb1: 0xffea816cc059a14103fd398c, + limb2: 0x33a54fed8946fa92, limb3: 0x0 }, u384 { - limb0: 0x224e7da3de323698b8e5bb74, - limb1: 0x9827044d9405fa4ea1d0f0a3, - limb2: 0x80f04b1427cca31e, + limb0: 0xd0abdf7a1a59d8ba509e36aa, + limb1: 0xbb0219a0fb1ac6a1bd7538b0, + limb2: 0xeb00e8721b089b8f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -35971,66 +35940,63 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x192b9abc6d3a1832ca9ec364, - limb1: 0x23b6dc0de50bff4b129c032b, - limb2: 0x9e5c259f9cf319f7, + limb0: 0x2c4f3fa400c5c4d6d9fc823, + limb1: 0xc9f54f02ed505b5f73b9446a, + limb2: 0xc0e226061e954538, limb3: 0x0 }, u384 { - limb0: 0xd85d3f1206d88907b80a81ac, - limb1: 0x50fb6ffe243f5b830e82fc4, - limb2: 0x2ff4067bb007c061, + limb0: 0x96452936b489ad253644ae51, + limb1: 0x429f7020be78deafaaf90428, + limb2: 0x5da233c012eb2d6f, limb3: 0x0 }, u384 { - limb0: 0xb4e78c8a37141b7aef0349ec, - limb1: 0x4439693675ab33e7afa3499b, - limb2: 0x805b573faba31f18, + limb0: 0xffad816f9546695787c3c1bc, + limb1: 0x71fd45cfb577d1e3838312c0, + limb2: 0x2337906979a37232, limb3: 0x0 }, u384 { - limb0: 0x43bcdd8ae516800f3a7a5182, - limb1: 0x757393eaef50d875b4fbc96e, - limb2: 0xf25727f1343748fc, + limb0: 0x66b092e87951fdc30597cf5b, + limb1: 0x5044d3abbb37d88b62a243bd, + limb2: 0xc2c76fbbb651599c, limb3: 0x0 }, u384 { - limb0: 0x83e4342834fd5f2f6878b334, - limb1: 0xfffffffffffffffe9f5c1b4c, - limb2: 0xffffffffffffffff, - limb3: 0x0 + limb0: 0x94997264a96056bddefa19c7, limb1: 0x29a3f65a, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x85467a327997797ca297081b, - limb1: 0x980dbcbd7b445ce5b6bc93ff, - limb2: 0x2cfdd32ada2efe56, + limb0: 0x95362f6743b5b8f9345c09af, + limb1: 0x491f6355f5a759943ed9c47, + limb2: 0x5253db38c2e518d4, limb3: 0x0 }, u384 { - limb0: 0x6bdd1ad566378543504396b9, - limb1: 0xde8e526861c1b08e32bec72e, - limb2: 0x7f24230e0ddc7fad, + limb0: 0x2c1abdfd7121d94d56f96fcf, + limb1: 0x11f9720cba8034d764fc8009, + limb2: 0xd03969c9d72fa6b4, limb3: 0x0 }, u384 { - limb0: 0x4ba09684b1e5f13b19993a18, - limb1: 0x31e4ee6f23b09e321f4a4a73, - limb2: 0xd62e87ee6ceb5af6, + limb0: 0x44b83d6b41450bb109b8e153, + limb1: 0xf55b41e88428ee836cfca515, + limb2: 0x486ab63548154f18, limb3: 0x0 }, u384 { - limb0: 0xd523ea6adaa11d9df882dd61, - limb1: 0x19d61659683cf0c15b896219, - limb2: 0x45c619fcdc06e4de, + limb0: 0xd36898ece2791499d655c052, + limb1: 0xf49b43e903feab3cde15ff23, + limb2: 0x145af2781f78e2c5, limb3: 0x0 }, u384 { - limb0: 0x805f8a5099f54be7ae7ad8ec, - limb1: 0xb1388cee5b1e218c0495c59a, - limb2: 0xd520abf068eac3d6, + limb0: 0x35f840501355fdddb241fc59, + limb1: 0xa502dc2c4a0967a66c7497f8, + limb2: 0x21ee74e0d2184766, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -36038,90 +36004,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x3a01296156d132497173819, - limb1: 0xdc226b981e2bfc1ff06aa180, - limb2: 0x840ff420d2ca213e, + limb0: 0x268ebe8cd1875f73ab3f35e, + limb1: 0x1a16884e95eee4e79bc6c69b, + limb2: 0x5f70cc8aa950f76c, limb3: 0x0 }, u384 { - limb0: 0x901eefa28f6f2a7c1e859055, - limb1: 0x7fc8a80ef35e5c9d0a7ce3a4, - limb2: 0x78e5214e4a74fa55, + limb0: 0xf18f1326c56ae4fedaa01772, + limb1: 0xe33d2c2173f112a835799c51, + limb2: 0xb2ece587d71ef147, limb3: 0x0 }, u384 { - limb0: 0xae39ff044a718f43c3de7e57, - limb1: 0x54a229faa0ec4ba20cdb4f1a, - limb2: 0x2438285b31606286, + limb0: 0x3d107f6a462fb6c851b68b5a, + limb1: 0xe45d545ae3a9e873d081a369, + limb2: 0xbdf8194e31be945e, limb3: 0x0 }, u384 { - limb0: 0x1dde7a6ce51332f68b65d6f, - limb1: 0x770791d03bcc979873c78d07, - limb2: 0x568ba651dce42cb6, + limb0: 0xf0166141ea134545ec3e8ae0, + limb1: 0xc9f3bc424787b5ceb8d0a7ca, + limb2: 0xad6177fb2e27ca4d, limb3: 0x0 }, u384 { - limb0: 0xe65db07d92a88311d4602581, - limb1: 0xbd38500ecc70cef1cdd9be67, - limb2: 0xb205f0ab890c2683, + limb0: 0x3c0e60061274a2c44ecea3cf, + limb1: 0x96e3ff75196666b4aa9ba920, + limb2: 0x381543e1f8664237, limb3: 0x0 }, u384 { - limb0: 0x9c8fad7cf7d332a10fc732a6, - limb1: 0x3f32ee74c4e5ec2733c0ff1a, - limb2: 0x50e47f1df85f9fdc, + limb0: 0x801d68b97c95a048fc24b0f2, + limb1: 0x8dbfa3fd8457b421d1157c7f, + limb2: 0x3411c2f0fe547c40, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xa4ed57615324526972213c8e, - limb1: 0x2860292e5ede8a47ff280bfc, - limb2: 0x3af0c62bf748f45e, + limb0: 0x147b4bd2d9f80ed26e844b6b, + limb1: 0x1ffdbb759b793730db7f45f5, + limb2: 0x404afe8d5443adcc, limb3: 0x0 }, u384 { - limb0: 0xf30bbbd5cb84a4da31d92a82, - limb1: 0x15e440daac4bd3e363377244, - limb2: 0x79fcf56261077dc1, + limb0: 0x34bb31ee17ecf12260d221be, + limb1: 0x7dd21e59198171e3c2e78040, + limb2: 0xb191e484e24d8eec, limb3: 0x0 }, u384 { - limb0: 0x11641da0dd4998a2b330a9bd, - limb1: 0x5d428509f9d4535edb080927, - limb2: 0xdb45b784fa6f7cbb, + limb0: 0xe109adeec8e351d8440e2d16, + limb1: 0xb57ecd5b9d1e8597fae88394, + limb2: 0xfaeafb74f89529ae, limb3: 0x0 }, u384 { - limb0: 0x5941e31e73ff48d06e2b1d64, - limb1: 0x4ce8592f54eef22f377e42b4, - limb2: 0x15688914de5f4069, + limb0: 0x5d125de17505492e10b44bed, + limb1: 0xb4d0d1947b51244356879642, + limb2: 0xe0d07c819f334c3d, limb3: 0x0 }, u384 { - limb0: 0xee79e3099bec989f159f9c13, - limb1: 0xb71a2cecdf949b6252d72e67, - limb2: 0x5308d6a0ec47da8c, + limb0: 0xa5e4802df87bca5e36c75a0f, + limb1: 0x950d7742c0c20a645c2ca7d2, + limb2: 0xbdbe9bef95d99a82, limb3: 0x0 }, u384 { - limb0: 0x4ba09684b1e5f13b19993a1f, - limb1: 0x31e4ee6f23b09e321f4a4a73, - limb2: 0xd62e87ee6ceb5af6, + limb0: 0x44b83d6b41450bb109b8e15a, + limb1: 0xf55b41e88428ee836cfca515, + limb2: 0x486ab63548154f18, limb3: 0x0 }, u384 { - limb0: 0xd523ea6adaa11d9df882dd61, - limb1: 0x19d61659683cf0c15b896219, - limb2: 0x45c619fcdc06e4de, + limb0: 0xd36898ece2791499d655c052, + limb1: 0xf49b43e903feab3cde15ff23, + limb2: 0x145af2781f78e2c5, limb3: 0x0 }, u384 { - limb0: 0x805f8a5099f54be7ae7ad8ec, - limb1: 0xb1388cee5b1e218c0495c59a, - limb2: 0xd520abf068eac3d6, + limb0: 0x35f840501355fdddb241fc59, + limb1: 0xa502dc2c4a0967a66c7497f8, + limb2: 0x21ee74e0d2184766, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -36131,9 +36097,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x1a0e39d8ede3282ac8df13f2, - limb1: 0x6eb653f5b52a8b22db28f1f7, - limb2: 0xa707236a0e98fbf2, + limb0: 0xf479166423d01ba574139e74, + limb1: 0xea9d3be1b6cd75c81171eb79, + limb2: 0x8ff30dac654598f8, limb3: 0x0 }, u384 { @@ -36146,15 +36112,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x1d80fc18b8c211c29b88385d, - limb1: 0x3bb16b5b3db7673a499e9670, - limb2: 0xdf0f3aa50645dc90, + limb0: 0xaaa34310b7ca2c3f0d5b0fbb, + limb1: 0x88056c4e5b97e6ff0120532d, + limb2: 0x833924b248cc4d8d, limb3: 0x0 }, u384 { - limb0: 0xd8f7dd5cc1152cabfbef9b7f, - limb1: 0x49fb3478b5925593edaf0af9, - limb2: 0xdce78b1e61ec47c0, + limb0: 0x9fe83a6d6881ba20c7e1c912, + limb1: 0x5ea3a75c2d75721028c0a8a5, + limb2: 0x642ca0845c2bb3a5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -36162,49 +36128,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xeadc1d2e1ed19c4f923647fb, - limb1: 0xfc4c05ed299cfb62e5a23c1d, - limb2: 0x8094c6de00757a05, + limb0: 0xbf17757789febac2971274c7, + limb1: 0x8bb9fb65fdae919c8bfa3998, + limb2: 0xf53cb0c668995b4e, limb3: 0x0 }, u384 { - limb0: 0xd0bc8fd30e6a02c2e1cae0bf, - limb1: 0x9986c59e0b319f6b214d5510, - limb2: 0x95a63d86175e567, + limb0: 0xc2a0cf777abad311e8b413b1, + limb1: 0xbeda2143efbf2e485b80ecdb, + limb2: 0xddec96ba1c6aeec5, limb3: 0x0 }, u384 { - limb0: 0xd50a8e2797e892b2d82a19c8, - limb1: 0x20973925cdd66ce81f7abc9f, - limb2: 0xf2e759a3dc457824, + limb0: 0xb4da47d5bf8cab2ab3650760, + limb1: 0x690c4135393309f5e82db69e, + limb2: 0xdad838629f8cef8d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xce86e4ad0d4e7c5840b9a171, - limb1: 0xa1d9ef7eb003d29803561d10, - limb2: 0x196a9a832be907f1, + limb0: 0xaa76d575068735bc5d7d7990, + limb1: 0xb825f624812750f907e2463f, + limb2: 0x969000dffd961ede, limb3: 0x0 }, u384 { - limb0: 0xeec70d89479438b9e38d575f, - limb1: 0x5de6f4cf700570b7fc94cd4, - limb2: 0xa54cdd4ad75f642, + limb0: 0x5f5998fddb8c16e7772c8720, + limb1: 0x967993853e361e711d449c87, + limb2: 0xbd38639e8531e985, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x1d80fc18b8c211c29b88385d, - limb1: 0x3bb16b5b3db7673a499e9670, - limb2: 0xdf0f3aa50645dc90, + limb0: 0xaaa34310b7ca2c3f0d5b0fbb, + limb1: 0x88056c4e5b97e6ff0120532d, + limb2: 0x833924b248cc4d8d, limb3: 0x0 }, u384 { - limb0: 0xd8f7dd5cc1152cabfbef9b7f, - limb1: 0x49fb3478b5925593edaf0af9, - limb2: 0xdce78b1e61ec47c0, + limb0: 0x9fe83a6d6881ba20c7e1c912, + limb1: 0x5ea3a75c2d75721028c0a8a5, + limb2: 0x642ca0845c2bb3a5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -36214,9 +36180,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xc6c688c273acbb9f6dc727a5, - limb1: 0x794cef1748ac1789d263db45, - limb2: 0x6a66c2cb9a1a3182, + limb0: 0xdbee1990fef2fa5020cd217b, + limb1: 0x3bcdd068d5621f3c69360831, + limb2: 0x4771333e1264222c, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -36227,15 +36193,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x7505270857bac57f7ed3a5ec, - limb1: 0x310938c14ae91095b810b958, - limb2: 0x13e5906ac70cacda, + limb0: 0xf841447057af913918e8e380, + limb1: 0xb0bc776fb1c5e8a376ac7a89, + limb2: 0xc8d8606896b3c334, limb3: 0x0 }, y: u384 { - limb0: 0x94c8d6c90318e0b4d5c4cee4, - limb1: 0x148ee3b1cdacfa72f31bb973, - limb2: 0xcddc35647f9d6e06, + limb0: 0xf4cace09b95d963f65e26441, + limb1: 0x99c1238889e5a1f7cf29ad30, + limb2: 0x51971df514f9bc8f, limb3: 0x0 } } @@ -36248,71 +36214,71 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xe3bfc5d191b042b4c1b4ab18, - limb1: 0xe56b349bec0e32bbceb616c, - limb2: 0xeaa0f2a6d0509a08, + limb0: 0x72aeb8fe52a2bf6323f8b931, + limb1: 0x9abefa14145221258a07a583, + limb2: 0x17cfbbf6813c410c, limb3: 0x0 }, y: u384 { - limb0: 0xd59ca4c76c400b08c896fd4c, - limb1: 0x84225aefabb87857ce8cbdde, - limb2: 0x2120ac00940ae6c1, + limb0: 0x9e06c5fabd2b7727d77f5bbc, + limb1: 0x15ed5e33e4ea522a3f8dde6a, + limb2: 0xa84b9bbdb115593a, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x22d47bd583cd326ce370083c, - limb1: 0x432d56fdebbf817f82570839, - limb2: 0x2061e03d4af71657, + limb0: 0x1d749e6c404ac941e1954794, + limb1: 0x1c067369189e68923c306079, + limb2: 0x9041f63654c73c04, limb3: 0x0 }, y: u384 { - limb0: 0xb9a13631951441952d3f106d, - limb1: 0x94ba3f3762040843ad85228f, - limb2: 0xe14a76148cb01063, + limb0: 0xc2e5def402fbc8b7314407d9, + limb1: 0x5f466d6a48477ebd1e472ae9, + limb2: 0x10cc592d86dfb99a, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xe332b9610661c5310a47b047, - limb1: 0x710ab1568d360d4bb5ffecbb, - limb2: 0x39e401d969a61856, + limb0: 0x732d286f534bacd4ee87ade3, + limb1: 0xb8b0312ab1019978d688313d, + limb2: 0x3b1813e65c72d71f, limb3: 0x0 }, y: u384 { - limb0: 0xf7bc585539ca5e52105e06ed, - limb1: 0x885e56efc0a2014771db1df0, - limb2: 0x8462f015c71f0489, + limb0: 0x11c257aab7dadeabcc98fd78, + limb1: 0x20479eb12a3b757b33933f5d, + limb2: 0xdea85e2bb995821d, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd2d9ed47f3cb0ffc18203e02, - limb1: 0x3c9528dd57f878b35d196f37, - limb2: 0x9c7c3bda47621ab3, + limb0: 0x135c007f857fd4738145e10, + limb1: 0x8c0d9ac6e72c0afea4dba53c, + limb2: 0x8245de0a12e2f9e9, limb3: 0x0 }, y: u384 { - limb0: 0xe91e57db78c44249749aa7b1, - limb1: 0x2b7a522699029f3193f3daa0, - limb2: 0x9d54dcea4e308af3, + limb0: 0xf2d4ea39576e7883dd50d9f6, + limb1: 0xd3dbbf92ca81784b8d6ed720, + limb2: 0x1fd2a24d39659ccb, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xebcd8e4b5caab2eb124aa59b, - limb1: 0x229fd889118f8a2a6c400654, - limb2: 0xa53e500f13d1e661, + limb0: 0xf215b20b57c03baff6e9f719, + limb1: 0xeca39ef156a937bd0a3fc6d, + limb2: 0x1863bfc0dc949047, limb3: 0x0 }, y: u384 { - limb0: 0xaeed63cf14bff8b119274848, - limb1: 0xd7edbb7a6c3700871114d4d6, - limb2: 0xb3af95892e1251fa, + limb0: 0x2775716d76f24c9534bdb122, + limb1: 0x88524d69a31060dcfbfe4225, + limb2: 0x7839eae9e92bbf3, limb3: 0x0 } }, @@ -36320,19 +36286,19 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x409b3c5bd5e8b89c11ab249d94d50a99, high: 0x86ce563de291f5e1469fc269ff7acd86 + low: 0x507e350773ade7a16ff90a45562b2d3f, high: 0x21a26d176a9b1779bc00a926aec3e7bc }, u256 { - low: 0x9aa1ecd6058fe8d58ad6cc515f2e1048, high: 0xe072caae797c27bfc79385209c921e7f + low: 0xdfc180c75acb33628f7570d9022cb597, high: 0x92fbe9317be2d2633b3b8ed646043108 }, u256 { - low: 0x9c684df10a515e8746ba68553cad275a, high: 0x6409df32cc4e66dade0989b952526d45 + low: 0x21df4d7e137a343839377d2fd84e201e, high: 0xba89fbfadd346683aecb3ad8ed223609 }, u256 { - low: 0x88d3281a1b4e1428a0483bb2f6d080c4, high: 0x24eac3f40c78c2f9da418b24e0acf9ff + low: 0xf4aa4202c8302c2305427289a637e64a, high: 0xb1bc921ee571ba117dd391d98ec75fe9 }, u256 { - low: 0xc48ae37406dc1579647640a1b6a659ef, high: 0xf9fb4010dec772b7bb22fa316bc9e970 + low: 0x3d8f08d1d4dc033da7093b22a63652e8, high: 0x8567f5bc07578c84a3581a03d2290fc6 }, ] .span(); @@ -36344,81 +36310,81 @@ mod msm_tests { 0x0, 0x1, 0x1, + 0x1, + -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, 0x0, 0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, 0x0, - 0x1, - 0x1, - -0x1, 0x0, 0x1, -0x1, 0x0, - -0x1, 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, - -0x1, - -0x1, - 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, + 0x0, 0x1, + 0x0, -0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x0, 0x1, -0x1, - 0x1, + -0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, + -0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x0, 0x0, - 0x0, - -0x1, -0x1, 0x0, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, 0x1, - 0x0, - 0x0, -0x1, + 0x1, + 0x1, -0x1, - 0x0, -0x1, 0x1, - 0x1, - 0x0, -0x1, -0x1, -0x1, + 0x0, + 0x1, + 0x0, + 0x1, + -0x1, + 0x1, + 0x1, 0x1, 0x1, ] @@ -36426,29 +36392,33 @@ mod msm_tests { array![ 0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, + 0x0, + -0x1, + -0x1, -0x1, 0x0, 0x1, + 0x1, + -0x1, 0x0, 0x0, 0x1, 0x0, - 0x0, - -0x1, -0x1, 0x0, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x0, -0x1, 0x0, 0x1, - -0x1, 0x1, + -0x1, + 0x0, 0x0, 0x0, 0x1, @@ -36457,225 +36427,220 @@ mod msm_tests { -0x1, 0x1, 0x1, - 0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, - -0x1, -0x1, -0x1, + 0x0, + 0x0, 0x1, + 0x0, 0x1, -0x1, 0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, + 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x0, + 0x0, -0x1, 0x1, - 0x1, -0x1, - 0x0, 0x1, + 0x0, 0x1, -0x1, + 0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, - -0x1, - 0x1, ] .span() ), ( array![ 0x1, + 0x1, + -0x1, + 0x0, 0x0, -0x1, - 0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, - 0x1, -0x1, - 0x0, - 0x0, 0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, -0x1, 0x0, 0x1, + -0x1, 0x0, - 0x0, + -0x1, 0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, + 0x0, + -0x1, + -0x1, -0x1, 0x0, - 0x1, -0x1, + -0x1, + -0x1, + 0x0, 0x1, + -0x1, + -0x1, 0x1, 0x1, 0x0, 0x0, -0x1, + -0x1, + -0x1, 0x1, - 0x0, + 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, + 0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x1, 0x0, - 0x1, 0x0, 0x0, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x1, ] .span(), array![ - -0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, + 0x1, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, + -0x1, + 0x1, 0x0, 0x0, -0x1, - 0x1, 0x0, 0x0, 0x1, - -0x1, 0x1, + 0x1, + -0x1, + -0x1, 0x0, -0x1, + 0x1, -0x1, 0x0, 0x0, - -0x1, + 0x0, 0x1, 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, -0x1, -0x1, -0x1, - 0x1, - -0x1, -0x1, - 0x1, + 0x0, -0x1, + 0x0, 0x1, - -0x1, 0x0, - -0x1, 0x1, 0x1, 0x0, - 0x0, -0x1, 0x0, - 0x1, + 0x0, + -0x1, 0x0, -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x1, -0x1, - 0x1, -0x1, 0x1, + 0x1, 0x0, + -0x1, 0x0, 0x0, -0x1, - -0x1, + 0x1, ] .span() ), @@ -36683,330 +36648,311 @@ mod msm_tests { array![ 0x1, -0x1, - -0x1, - 0x0, + 0x1, + 0x1, -0x1, -0x1, -0x1, 0x0, + 0x0, + 0x0, 0x1, -0x1, - 0x0, -0x1, + 0x1, + -0x1, + -0x1, + 0x0, 0x0, -0x1, + -0x1, 0x0, - 0x1, -0x1, - 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x1, -0x1, -0x1, + 0x1, 0x0, 0x0, -0x1, -0x1, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, 0x1, - -0x1, - 0x0, 0x0, -0x1, + 0x1, + 0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x0, 0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, + 0x1, -0x1, - -0x1, + 0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, - 0x0, - 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, - 0x1, - 0x1, -0x1, 0x0, -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, 0x1, - -0x1, 0x1, + 0x0, + -0x1, ] .span(), array![ + -0x1, 0x1, -0x1, -0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, 0x1, + -0x1, 0x1, - 0x0, 0x1, 0x0, 0x0, - 0x0, - 0x0, - -0x1, -0x1, -0x1, 0x1, -0x1, 0x0, + 0x0, 0x1, 0x1, + 0x0, -0x1, -0x1, - 0x1, 0x0, 0x1, - 0x0, -0x1, 0x1, 0x1, - -0x1, 0x1, -0x1, 0x1, 0x0, - 0x0, + 0x1, -0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x1, - 0x1, - 0x0, -0x1, - 0x0, -0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x0, + 0x1, -0x1, + 0x0, + 0x1, + 0x0, -0x1, -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, - 0x0, 0x1, - 0x0, -0x1, + 0x0, + 0x0, 0x1, 0x0, -0x1, - 0x1, -0x1, - 0x1, -0x1, 0x0, -0x1, 0x0, 0x1, 0x0, - -0x1, 0x0, 0x1, + -0x1, + -0x1, ] .span() ), ( array![ - 0x1, + 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x0, - 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x0, - 0x1, 0x0, -0x1, 0x0, - 0x0, -0x1, -0x1, 0x1, - 0x1, - 0x0, 0x0, -0x1, - -0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x0, -0x1, 0x1, - -0x1, 0x1, + -0x1, 0x1, -0x1, + 0x0, -0x1, 0x1, 0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x0, - 0x1, - 0x0, - 0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, + 0x1, + 0x1, + 0x1, + 0x1, 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, - 0x1, + -0x1, + -0x1, -0x1, 0x0, 0x0, 0x0, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x1, 0x0, -0x1, -0x1, 0x1, - ] - .span(), - array![ -0x1, - 0x1, -0x1, 0x0, -0x1, 0x1, - 0x0, + -0x1, + -0x1, -0x1, 0x1, + 0x1, 0x0, - -0x1, 0x0, -0x1, - 0x1, -0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, + -0x1, + -0x1, + ] + .span(), + array![ + -0x1, + -0x1, + -0x1, 0x1, -0x1, 0x1, 0x0, - 0x0, -0x1, 0x0, + 0x0, -0x1, + 0x0, -0x1, -0x1, -0x1, -0x1, 0x0, - 0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, - 0x1, - 0x0, - 0x1, 0x0, -0x1, -0x1, + 0x1, -0x1, -0x1, + 0x1, 0x0, 0x0, - 0x1, 0x0, -0x1, 0x1, + -0x1, 0x0, + 0x1, -0x1, 0x1, 0x0, 0x0, + -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x0, - -0x1, 0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x0, 0x0, -0x1, @@ -37015,178 +36961,198 @@ mod msm_tests { 0x0, 0x0, -0x1, - ] - .span() - ), - ( - array![ - 0x1, - 0x0, - 0x0, 0x0, 0x0, + 0x1, -0x1, + -0x1, + 0x1, + 0x1, 0x1, -0x1, 0x0, -0x1, 0x0, - 0x0, - 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x0, -0x1, - 0x0, - 0x0, + -0x1, + 0x1, + -0x1, + -0x1, + ] + .span() + ), + ( + array![ + 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, 0x1, 0x0, - 0x0, + 0x1, 0x1, -0x1, + -0x1, 0x1, 0x0, - 0x0, 0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, 0x1, 0x0, 0x0, - -0x1, - 0x0, - -0x1, 0x0, - -0x1, 0x1, - 0x0, - -0x1, -0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, 0x1, 0x0, - 0x1, + 0x0, 0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x0, 0x1, + -0x1, 0x0, -0x1, + 0x0, + -0x1, + -0x1, 0x1, 0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, + 0x1, 0x1, 0x0, - -0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x1, + 0x1, ] .span(), array![ - -0x1, + 0x0, 0x1, 0x0, 0x0, 0x0, - -0x1, - 0x1, - -0x1, - -0x1, - 0x1, - -0x1, - -0x1, 0x0, - 0x1, 0x0, - 0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, - -0x1, 0x0, 0x0, + -0x1, + 0x0, 0x1, 0x1, - -0x1, 0x1, + -0x1, 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, 0x0, 0x0, 0x1, - 0x0, - -0x1, - 0x0, -0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, -0x1, + 0x0, + -0x1, 0x1, 0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, - -0x1, + 0x0, -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x0, 0x1, -0x1, - 0x0, -0x1, 0x1, - -0x1, 0x1, + 0x0, 0x1, 0x1, + -0x1, 0x0, + 0x1, -0x1, -0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, + 0x1, + 0x1, + -0x1, + -0x1, + 0x1, ] .span() ), @@ -37196,121 +37162,121 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xadcdea6d1317a46247925cab, - limb1: 0x5a86ee20a9aea68651eba608, - limb2: 0x6cf93f58a49e329, + limb0: 0xd9882acfd56aeed7cdfdc329, + limb1: 0x850c407d5f82280cde77bb0f, + limb2: 0xb26669fa7d6d7565, limb3: 0x0 }, y: u384 { - limb0: 0xb1a8b6ff52d4471958107597, - limb1: 0xf69350a4366ef27a92d0ed15, - limb2: 0xc67b2a94246a1c97, + limb0: 0xe7c5659050c9613c9c9d07d2, + limb1: 0x8cafd638020a63d86c25e336, + limb2: 0x21ae6f34bd9d585d, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x934e9b57c7f50ec3b908a574, - limb1: 0x4de8e669258b0e8ceccff0a, - limb2: 0xe8964fa0d192c5b4, + limb0: 0xa5ee5234b53b46e782c5d94a, + limb1: 0x2f4cd9f92707f20f0e3f9511, + limb2: 0xf297df7faee70120, limb3: 0x0 }, y: u384 { - limb0: 0x499f356004d392fd407bd37e, - limb1: 0x3e90634d8786f648f0fdde3b, - limb2: 0x9765684c58572b4a, + limb0: 0x5ae37acf1488303523d53327, + limb1: 0x2b111e0d1bcd452ed12c3e9e, + limb2: 0xd8a01df8a2fe7250, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x65048ec69e7ab8c9f0bf2375, - limb1: 0x1213ef788c4fd292c0584a61, - limb2: 0x28b717f1a4fc6e32, + limb0: 0x73d97ff6b4b380bd041d8191, + limb1: 0xf04d31753ad931038095c30f, + limb2: 0xc30185e3ced219e3, limb3: 0x0 }, y: u384 { - limb0: 0x986cc25c48802ed632e81757, - limb1: 0x765d7bb2264ae1b6431f4854, - limb2: 0x18113bacc021695e, + limb0: 0x939e37b0fbe526c7e4e909f2, + limb1: 0xa24279f6ad2e877eef39711b, + limb2: 0x30335c51c2da0f30, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xdcb95a7c4f9fa10dc0325bfe, - limb1: 0x57041cb1ea01f5022f964d58, - limb2: 0xa37db8ccfba5d2e8, + limb0: 0xb1484412b02a807a81a877d0, + limb1: 0x9690b867d41e6f6115eb9641, + limb2: 0x2755f4bde996e779, limb3: 0x0 }, u384 { - limb0: 0x70c14069d8d8a9223fec26d5, - limb1: 0xacf9d26566d10d3da9106138, - limb2: 0x260fdc74a4f808db, + limb0: 0xc3e947d9517d4ee6c8e06205, + limb1: 0xb2129d3a64a9803a0244f70f, + limb2: 0x2f96e09ef5c656d0, limb3: 0x0 }, u384 { - limb0: 0x13683e53553922797ee531f4, - limb1: 0x3a28592662882a015fddc91a, - limb2: 0x975657d99579461e, + limb0: 0x5b2e27804ae267b30959046f, + limb1: 0xf343bc6fb3c8eae5c4ffe2b3, + limb2: 0x90032f19efd5059f, limb3: 0x0 }, u384 { - limb0: 0xc3832004ed45c41e638e3ac3, - limb1: 0x83f52b48417066898731727b, - limb2: 0x541978ff95ba2871, + limb0: 0x48fd54c5440338d90b79611b, + limb1: 0x85258f38f0b97de36fb2ecbc, + limb2: 0x6f97df2bcd0618f4, limb3: 0x0 }, u384 { - limb0: 0x84a8a68a56433f84d3513bda, - limb1: 0xccc384c16fca4d2879d15306, - limb2: 0x5f2da6be76130418, + limb0: 0x4f835aed49e64ebe4c34ccf1, + limb1: 0x5bd601ca9efeb0cebdc81da7, + limb2: 0x17f72df439ddda9d, limb3: 0x0 }, u384 { - limb0: 0x53ea447e48c141124d954ade, - limb1: 0x2dada2ff, - limb2: 0x8000000000000000, + limb0: 0xa5274e2e5acdfc9879036103, + limb1: 0xffffffffffffffff5534b8bc, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x14db7c97113480d8c930698, - limb1: 0xa71b3d7fb95350d84630e428, - limb2: 0xc463ca848cb9ed95, + limb0: 0xeb467dcc7902638e2e871d0c, + limb1: 0x8be5213ead41caa4ed15d5dd, + limb2: 0x82e54aa88621636c, limb3: 0x0 }, u384 { - limb0: 0xe037128d28968e058e24faa8, - limb1: 0x7b906a151d72f507bf4ef4c, - limb2: 0x834436d493d09cb1, + limb0: 0x38483a4235919a55a265114d, + limb1: 0x6f3d28bc1fbe0471e09a6e34, + limb2: 0xfa58b37eb877032, limb3: 0x0 }, u384 { - limb0: 0xa97e6485898f633d8dcd36e3, - limb1: 0xad134ce296ecd0197e733a23, - limb2: 0x72a1b44ff72ec2eb, + limb0: 0xfc82552d538b9b7ff2b30545, + limb1: 0x976864d15e6cf3aa68023eb5, + limb2: 0xafcb819ca0026a3b, limb3: 0x0 }, u384 { - limb0: 0x7d4d6f3d511e3ebe4920fa0b, - limb1: 0x5da6622a3a032a2a6d45a821, - limb2: 0xe6006af1be1173d7, + limb0: 0x818c867f4de5c04aa8462b4d, + limb1: 0xa6c226a62c273806b0f60ee, + limb2: 0xd37f558fb812189e, limb3: 0x0 }, u384 { - limb0: 0x37f0b561f97ea216066a4dc, - limb1: 0x9ba9b459cc2fb3612b5b4da8, - limb2: 0xfc173d90088705dc, + limb0: 0xbac6c0c7167ef576e057ddbf, + limb1: 0x48836a0f2d46b8f234b3aed8, + limb2: 0x58624c39c6849659, limb3: 0x0 }, u384 { - limb0: 0xa9c39ef780935e60de9650aa, - limb1: 0x83b554dab512e4a4ef788e08, - limb2: 0x728f0b639594530c, + limb0: 0x2fdbe342f443a2b40eee2d93, + limb1: 0x70a64c24c5f516480f486c0c, + limb2: 0xcfc6322760a4ac39, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37318,102 +37284,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x7c3828bbefb0bf1c963c0c85, - limb1: 0xcba8d5a767205f9e132d6b12, - limb2: 0xcabd156e1ef178cb, + limb0: 0x8ba40bf8678c474739a41899, + limb1: 0x9f19bcd8fd4bc885edb49ee6, + limb2: 0xd551ab8eb808130a, limb3: 0x0 }, u384 { - limb0: 0xa025883af2c023c28536481c, - limb1: 0x5dcff6b656940af696cd9b73, - limb2: 0xc593dbe3f614177d, + limb0: 0xfb973c08fb6af9e712f935e2, + limb1: 0x93b9acdd6efbd1002e24a840, + limb2: 0x94d361264cc74a79, limb3: 0x0 }, u384 { - limb0: 0x4a1f6a63fec4b5e15419d6a2, - limb1: 0x3b659ce7a3e371ace4b30e16, - limb2: 0x545aa4195a5222e7, + limb0: 0xfc42a42e3dc91274aaba0ef8, + limb1: 0xb0a98126f91792c79460715b, + limb2: 0xf9cc6c15a5fbef1f, limb3: 0x0 }, u384 { - limb0: 0x9070ede60747a2712736a811, - limb1: 0xeaeaa7c041bb0bfbbe58e896, - limb2: 0xeadf8e0fd3985d29, + limb0: 0xebd74d8091d15d545dc48885, + limb1: 0xbc26b31874a152010cb61e49, + limb2: 0x43152811de4727cb, limb3: 0x0 }, u384 { - limb0: 0x45e0a51ad16ebf19efca1e91, - limb1: 0x29eba4d7fa8d859354c75d77, - limb2: 0xa4630fd936a14f19, + limb0: 0x2c200e8b4690bfdf95aa29f0, + limb1: 0x1b3c238253510f8514d9a2e4, + limb2: 0xbf555d4d897b469d, limb3: 0x0 }, u384 { - limb0: 0x8a52a88fed6c0928ea3ddadf, - limb1: 0xfaece7be961e02265cd3ffc2, - limb2: 0x13be44c036f3174f, + limb0: 0x8fbfc4ce29b3b962be0216b0, + limb1: 0x6f6d4a0bae64b778ef5d733f, + limb2: 0x14598bb8297d1b6a, limb3: 0x0 }, u384 { - limb0: 0x9566e6bd1d4f1cc94a09dbcc, - limb1: 0xd4dc5de2b991526f47f1e21d, - limb2: 0x63ff99ed941ea611, + limb0: 0xbc4fae3a911f56ca26262e1, + limb1: 0x9e5e2ed30ab944e0d78affe7, + limb2: 0x23f4d840c4805442, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x92006821786f863d805413d, - limb1: 0x91beae7e114735e9eb563d18, - limb2: 0x5eba899fd9157f17, + limb0: 0x6eed70974f10b8e645b1d6c7, + limb1: 0xd343e8b6bccc8a827b98d911, + limb2: 0x94450a9baae9b7f7, limb3: 0x0 }, u384 { - limb0: 0x218181dc1c1de229e302e60b, - limb1: 0x360f2e693ce24b3363b28b1a, - limb2: 0x96dd7fd00ab448d7, + limb0: 0x89f997cf76fb385770c3791b, + limb1: 0xaac1d24de321f1d2439036d, + limb2: 0x6d86ce8770b41161, limb3: 0x0 }, u384 { - limb0: 0xa274bfa6c2ebb6b1e09c8ba8, - limb1: 0xbb871a322079b0b2752696f9, - limb2: 0x226bee2fc2475471, + limb0: 0xe790543d48d14083a2e53427, + limb1: 0x23dac1b994faa9a8d80fb6f9, + limb2: 0xce908b486010e7a1, limb3: 0x0 }, u384 { - limb0: 0x6e6bc276a8e6ff488c79f79c, - limb1: 0x36a7eca74f69780143187d12, - limb2: 0xe66b720bf341879, + limb0: 0x761e2b479a4aa59ec872630d, + limb1: 0xd4da12276092f327da817c63, + limb2: 0x4b60a1968ea00fbe, limb3: 0x0 }, u384 { - limb0: 0xf8b061e805bdf4f630f39763, - limb1: 0x495cf515e72516f8ab740ee4, - limb2: 0x67e6e5c4cf81c5b9, + limb0: 0x53b77fb3d30a5097c4cc2928, + limb1: 0x6ad50f265cad131151843621, + limb2: 0x7a55a0cc59278ca3, limb3: 0x0 }, u384 { - limb0: 0x4dd7bd4a0d96f7e6a3e976fc, - limb1: 0x47089edd8a71109c0abf1c60, - limb2: 0x948b04090e3d0843, + limb0: 0x4b858c0201650e725b365b30, + limb1: 0xabf479d2c8208fa2d2fd330b, + limb2: 0x5e36e0b044831fcd, limb3: 0x0 }, u384 { - limb0: 0x7d4d6f3d511e3ebe4920fa12, - limb1: 0x5da6622a3a032a2a6d45a821, - limb2: 0xe6006af1be1173d7, + limb0: 0x818c867f4de5c04aa8462b54, + limb1: 0xa6c226a62c273806b0f60ee, + limb2: 0xd37f558fb812189e, limb3: 0x0 }, u384 { - limb0: 0x37f0b561f97ea216066a4dc, - limb1: 0x9ba9b459cc2fb3612b5b4da8, - limb2: 0xfc173d90088705dc, + limb0: 0xbac6c0c7167ef576e057ddbf, + limb1: 0x48836a0f2d46b8f234b3aed8, + limb2: 0x58624c39c6849659, limb3: 0x0 }, u384 { - limb0: 0xa9c39ef780935e60de9650aa, - limb1: 0x83b554dab512e4a4ef788e08, - limb2: 0x728f0b639594530c, + limb0: 0x2fdbe342f443a2b40eee2d93, + limb1: 0x70a64c24c5f516480f486c0c, + limb2: 0xcfc6322760a4ac39, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37423,78 +37389,78 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x5e7538a6e0f6c1e53a03ed69, - limb1: 0x7ffaf1b697a180f000c610de, - limb2: 0x588c147cae10e05b, + limb0: 0xf6cda9ba98acbe5c13396fb9, + limb1: 0x3d8e1d8a4cbff3768cd2494d, + limb2: 0x70165ffcaa589b67, limb3: 0x0 }, u384 { - limb0: 0x43d1b26a0a0fc82fca6d46e5, - limb1: 0xbefab5f2fc3e1be93297182d, - limb2: 0x49dc7030ec79e882, + limb0: 0x57a07248651ddc16e912b2e2, + limb1: 0x37da0d0f9a66dfd64e90a71d, + limb2: 0x12e5824f8ce73529, limb3: 0x0 }, u384 { - limb0: 0xcb12254a7552d13f33a62f38, - limb1: 0x95fe712119b547d5325416d3, - limb2: 0x4e5077f57186965a, + limb0: 0x2f145a6d2d725472e7c36eee, + limb1: 0x32f19bfe5135b4f9cb5c33b6, + limb2: 0x496dc81554fbe28b, limb3: 0x0 }, u384 { - limb0: 0xd46f94addbc0508c0f367f9e, - limb1: 0x2900302727d2f089022c8c1a, - limb2: 0xc6969e770d4ef97e, + limb0: 0x74fddc202592b186f96bc1ff, + limb1: 0xe5b4c8acfe7ed4a9db1b9517, + limb2: 0x8b6b1b8b8ee5dc54, limb3: 0x0 }, u384 { - limb0: 0x322b382367a39df9271f92f4, - limb1: 0x6caa4253f7b946a5bcf424c0, - limb2: 0xd05f762b29657745, + limb0: 0x2c7a314b0a5e8620606401a0, + limb1: 0xeb1794ac01d90a821a2346d6, + limb2: 0x575330a0f8db9b1b, limb3: 0x0 }, u384 { - limb0: 0xa82395737f59f617d2f546e0, - limb1: 0xffffffffffffffff6c4be5d8, - limb2: 0xffffffffffffffff, + limb0: 0xcb59a7e61dce7bd82a9e29b0, + limb1: 0xffffffffffffffff3cafdba0, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xd2440f985784af74ed1eae5c, - limb1: 0x979db7586c534e954b0247c1, - limb2: 0x24ff2e9981b37bac, + limb0: 0x6ff3fe545f1c71ea51def07e, + limb1: 0x57c2b7682ea7be32b595dc4a, + limb2: 0xb491fb652c98b72e, limb3: 0x0 }, u384 { - limb0: 0x419b37db8057d55c09003287, - limb1: 0xce2817f98104e514153bac46, - limb2: 0xa5e1a816ef015780, + limb0: 0x3064cc442401c87647940d38, + limb1: 0x1745a9720d60af61ba995f3f, + limb2: 0x838b05dc157752f3, limb3: 0x0 }, u384 { - limb0: 0x97c3fbc7c9712fd40a62b0e6, - limb1: 0x7642ec34f14ebafc31aff684, - limb2: 0xd0214527dee7f65e, + limb0: 0x61310e30995713ea31efbaa2, + limb1: 0xd35997f185c57db48a79fc13, + limb2: 0xc383a34e555ae650, limb3: 0x0 }, u384 { - limb0: 0xf722817535492b9615ffdbf9, - limb1: 0xc250ece9ceec9513232c3fa6, - limb2: 0x19590623dfe8a051, + limb0: 0xc11fd54a60738383f6aa44fb, + limb1: 0x2c80a5e7c6e512c98e1ef90f, + limb2: 0xdec81d38a0487155, limb3: 0x0 }, u384 { - limb0: 0x63c26d36d69d6760cd594743, - limb1: 0xbb0675c6f92d3f0ab2e09976, - limb2: 0x8cd2075e714bcf7f, + limb0: 0xd5a39625a69140b310b9a3a5, + limb1: 0x72be2322fd5bc9d112d81936, + limb2: 0x10d32b687fd2b791, limb3: 0x0 }, u384 { - limb0: 0xc442ee0ccbb5f3fe6d200410, - limb1: 0xd95db494cc68da4272973506, - limb2: 0x90c84fb84e4b7081, + limb0: 0x6375bbde14734aa45a261772, + limb1: 0xc665b2a8fe6f4c45df80920a, + limb2: 0x8f94bca22f2b207e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37502,102 +37468,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xd64ebac2eb6cf02deb34aaaa, - limb1: 0x3f58c068a7d7eb6c8849571b, - limb2: 0xb6da8c5e8b06be50, + limb0: 0x15c2822aef831bab6a384d20, + limb1: 0x60964794842c2f5f62799267, + limb2: 0xdc0246ffa9b0c92c, limb3: 0x0 }, u384 { - limb0: 0x42d007d8ddbae84079a468ef, - limb1: 0x3195879ffe1ef72e005e5f78, - limb2: 0xcae956cd9d8a4ad6, + limb0: 0x995e9fcf06d6ff44742e1b9e, + limb1: 0x3f7097f4263ec0d9bc2207e0, + limb2: 0x3d1ba14821f6de74, limb3: 0x0 }, u384 { - limb0: 0x3c34d1225207bf40fb56a49c, - limb1: 0x5ddd9c738d80bd33baa27b40, - limb2: 0x63b8085030fdd206, + limb0: 0xa3cbeb4d822f2e2bf129c133, + limb1: 0x3e3927934f910ce6710a9d7e, + limb2: 0x8bc18e1abf97c487, limb3: 0x0 }, u384 { - limb0: 0x25c9df272f6cddd0eb07bacb, - limb1: 0x11b50723383cd1415c0ea271, - limb2: 0x80ff71d13fc4598e, + limb0: 0x1b3b4f44a2179e8a9d325921, + limb1: 0xb6f6256cfd644ccd69884a28, + limb2: 0x16e7309850f8c277, limb3: 0x0 }, u384 { - limb0: 0x8881cdb9c3a03ce73991fbea, - limb1: 0x451952b60111085c497377c3, - limb2: 0x40cbe54f17e1180, + limb0: 0xa3756dd1ab03ec8263b439d9, + limb1: 0x672e6827bc28dbc2f59e3df5, + limb2: 0xd7c3627aa66dbb1c, limb3: 0x0 }, u384 { - limb0: 0x1f7125013b644cd550c0c3b7, - limb1: 0xd28d4355d71e0544b795742a, - limb2: 0xc09fbe80e2202dc4, + limb0: 0x668318d97b5a018436e19310, + limb1: 0x42118b267237b89786f1f6a, + limb2: 0x3e47866cb2f2541d, limb3: 0x0 }, u384 { - limb0: 0x5e069c14974bdfda4a24bd95, - limb1: 0xeb9f684142781ffd19f57174, - limb2: 0x47f4460a0c971899, + limb0: 0x80998450fb4015b7a8dc67c5, + limb1: 0x1674aa490f95db4feaa03101, + limb2: 0x64855cf806d666d5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xbfdc6d2a64a0cc337bd6c855, - limb1: 0x2550036af64726150d0ff64c, - limb2: 0x2fa46328be861b8, + limb0: 0xfabf44e99c71d6c3d18a2b6, + limb1: 0x665303d946963362f7190609, + limb2: 0xeffddfc4382d0244, limb3: 0x0 }, u384 { - limb0: 0xcb3e87008266d5883f0170f5, - limb1: 0xa318a7d28722438c94a1b5eb, - limb2: 0x892b98a089096485, + limb0: 0x52c195dcfc0c7b3ef50c67fb, + limb1: 0xa2e7a21e5da4cbac1a319aba, + limb2: 0x98cd2904964344a5, limb3: 0x0 }, u384 { - limb0: 0x265be27682184ed148b2e95f, - limb1: 0x3bd4757299271ce55bcfbda0, - limb2: 0xb0e8e4171857bc95, + limb0: 0xa857635431618b6c5d8e2d83, + limb1: 0xc773279aa8666fefc955e487, + limb2: 0x58997724557c4c35, limb3: 0x0 }, u384 { - limb0: 0x943599cccc84e08f871db22b, - limb1: 0xe7d431bd14cb621b41380552, - limb2: 0xd66e5994a10fdde8, + limb0: 0xb7d2d35d02450a8c1086ea41, + limb1: 0x8f4740be9eeb41b5986eabb8, + limb2: 0xcc0ac7f18e93d082, limb3: 0x0 }, u384 { - limb0: 0xfbec345b5ea5a905a67134a0, - limb1: 0xeb55506a51419e5ef95fde82, - limb2: 0x7f9fdbac081403fe, + limb0: 0x7dde74bb1fa8d5bbca786bb, + limb1: 0x3a789f66fae334193e820fbf, + limb2: 0xf95135b7943a57ed, limb3: 0x0 }, u384 { - limb0: 0xf5987e215b6adbcd0642dc9a, - limb1: 0x67d2dc46882cb2cd53d269b3, - limb2: 0xc59b733202f809eb, + limb0: 0x19693143287e1e6ca8fa6e04, + limb1: 0x40217a907ad0939da6fdfa5c, + limb2: 0xb094cbbd9f88c9c8, limb3: 0x0 }, u384 { - limb0: 0xf722817535492b9615ffdc00, - limb1: 0xc250ece9ceec9513232c3fa6, - limb2: 0x19590623dfe8a051, + limb0: 0xc11fd54a60738383f6aa4502, + limb1: 0x2c80a5e7c6e512c98e1ef90f, + limb2: 0xdec81d38a0487155, limb3: 0x0 }, u384 { - limb0: 0x63c26d36d69d6760cd594743, - limb1: 0xbb0675c6f92d3f0ab2e09976, - limb2: 0x8cd2075e714bcf7f, + limb0: 0xd5a39625a69140b310b9a3a5, + limb1: 0x72be2322fd5bc9d112d81936, + limb2: 0x10d32b687fd2b791, limb3: 0x0 }, u384 { - limb0: 0xc442ee0ccbb5f3fe6d200410, - limb1: 0xd95db494cc68da4272973506, - limb2: 0x90c84fb84e4b7081, + limb0: 0x6375bbde14734aa45a261772, + limb1: 0xc665b2a8fe6f4c45df80920a, + limb2: 0x8f94bca22f2b207e, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37607,9 +37573,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x34dd38d4872cf1939e13b81d, - limb1: 0x128f10c08727edf340c8c8ad, - limb2: 0xd8e8783f8c1cc377, + limb0: 0xaf5f4c83c0e6353db6026e5d, + limb1: 0x8a3e5b8234ad1c2e3375ba75, + limb2: 0x289da9dc053cfb98, limb3: 0x0 }, u384 { @@ -37622,15 +37588,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xb6e9f4ee56c761b35e81b872, - limb1: 0x8bf1aa34692a149312435b07, - limb2: 0x723d8502f676827d, + limb0: 0x2a6dbd15f13ed3f371c91beb, + limb1: 0xda95d8c9a999b729ced9fcd8, + limb2: 0xac5cc0f7c0d43199, limb3: 0x0 }, u384 { - limb0: 0x7acd5e19990387056382f75, - limb1: 0xe90d8220e1577c8470dab694, - limb2: 0xeeb2986d8970cc19, + limb0: 0xe6382dd496113859791c9d83, + limb1: 0xe065f4919e1edced712aa7de, + limb2: 0x4a669a9c8246e4fb, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37638,49 +37604,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x6a19daf48689de3c8cb9c95f, - limb1: 0x4de5d14d6fc833092b9a3d24, - limb2: 0x5b1abc2bdf294b, + limb0: 0xe19510c349ba2e407b690e91, + limb1: 0xc04265c436bac51828848cff, + limb2: 0xcce7ce227ef21b45, limb3: 0x0 }, u384 { - limb0: 0xbbcf9bcad516bcb2be00aab5, - limb1: 0x65bc748b4a601d94a1ded9e9, - limb2: 0xff21d615611cb76e, + limb0: 0x22e0642c0d51662ff0d6bf63, + limb1: 0x3e20c827d2690f48e0b66940, + limb2: 0x17a7b295464879d4, limb3: 0x0 }, u384 { - limb0: 0x6680d752e3c78d365980d335, - limb1: 0xdad298f6b8eea0a5f5889df, - limb2: 0x31a71a54e87e0a53, + limb0: 0x494823c26e150084571b7291, + limb1: 0xc9d648b30503332482c131be, + limb2: 0xe9566dd167584e43, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x65b2845f73abea958c1691, - limb1: 0xd39ba76ee02690057fd77d36, - limb2: 0x1faea314bd3d916e, + limb0: 0x29002b9998b7cbac1c7fd2b1, + limb1: 0xfa18ed83a3340224a7f5e9e9, + limb2: 0xb68946c645cd5b34, limb3: 0x0 }, u384 { - limb0: 0x35b9d92b32f18b185b896319, - limb1: 0x5f5e8ee62964679f15fafe0c, - limb2: 0x86e22afec21594b5, + limb0: 0x4b8940d01a788a744fc85637, + limb1: 0x22c9affb52d80a7e182a9718, + limb2: 0x8ce3a478ff042e3, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xb6e9f4ee56c761b35e81b872, - limb1: 0x8bf1aa34692a149312435b07, - limb2: 0x723d8502f676827d, + limb0: 0x2a6dbd15f13ed3f371c91beb, + limb1: 0xda95d8c9a999b729ced9fcd8, + limb2: 0xac5cc0f7c0d43199, limb3: 0x0 }, u384 { - limb0: 0x7acd5e19990387056382f75, - limb1: 0xe90d8220e1577c8470dab694, - limb2: 0xeeb2986d8970cc19, + limb0: 0xe6382dd496113859791c9d83, + limb1: 0xe065f4919e1edced712aa7de, + limb2: 0x4a669a9c8246e4fb, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -37690,28 +37656,28 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x35b6bf924075a1348753f004, - limb1: 0x71be25688ed430fcef9df26f, - limb2: 0x46b4bbc32e42d900, + limb0: 0x2c92c27486445866812fd023, + limb1: 0x66fec3ab2bb3a8768b81d99d, + limb2: 0x20287174f5a62922, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0xd527302ec97d0fd88b43accc, - limb1: 0x1d3fa2c3509d2a0a84653419, - limb2: 0x315f68e756b77cbc, + limb0: 0xdd637102166908ea61e16c9e, + limb1: 0xd1f31c58950517a8b17ab7f1, + limb2: 0x6cf8e0374c1a5593, limb3: 0x0 }, u384 { - limb0: 0xeab992f13baa733fb88c7ed, - limb1: 0x4c5b3698fb290b769087382c, - limb2: 0x73f079cdc65eedfd, + limb0: 0x2c91975ba05b2121855e73bf, + limb1: 0x2c8826bb99fe40aed11dd6a6, + limb2: 0x274fa3c15bad6958, limb3: 0x0 }, u384 { - limb0: 0x861a3ed53d5f51b798e4917c, - limb1: 0x2df406f160c4f74be655660d, - limb2: 0x755b69877bc61c2f, + limb0: 0x4e5ea59494f6f76bcd10e701, + limb1: 0x27e0cded8345096f972d96c4, + limb2: 0x255f9b680ae8af35, limb3: 0x0 } ], @@ -37722,15 +37688,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x364c6b110161d723e0d85319, - limb1: 0x68b297ee89951320198afae2, - limb2: 0x43ef66014c468ddf, + limb0: 0x3709c2630342cdefc41c6b5d, + limb1: 0x37c9fbbc01ac58f3bb8b78b2, + limb2: 0x374c27cf6cd6d0fe, limb3: 0x0 }, y: u384 { - limb0: 0xd77870ccd4fc3d5feeb72261, - limb1: 0xe150fad64782a826cd59e93, - limb2: 0xbfba08a5d6ff8418, + limb0: 0x47ecf54ceca42f797077850b, + limb1: 0x3ea1f24bdb4c1e7cfb969e1d, + limb2: 0x62208454529c1d43, limb3: 0x0 } } @@ -37743,85 +37709,85 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xbe41b150c7d98d058c4a73, - limb1: 0x6db596ea23963a2d9fb5b254, - limb2: 0x8fda206f63fd50a, + limb0: 0xb575842777b722ec140fcd08, + limb1: 0xdea6ca1b31fcc4658c034a43, + limb2: 0x5d47318fddbedda3, limb3: 0x0 }, y: u384 { - limb0: 0x472ba333a3eab37a0b1692e2, - limb1: 0xfa204bbf7c49e4bea8c6f340, - limb2: 0x8e8681db7ceb4736, + limb0: 0x6c4470fe45628ac8390ea39a, + limb1: 0xa30462911a27592658d0bf88, + limb2: 0x31aba54f4b759934, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x97394481b0e24c0370c8ca06, - limb1: 0x2b820719abe39601ce4b8d52, - limb2: 0x6e07958dd1d92845, + limb0: 0x5995a7642d82cfdff800fb14, + limb1: 0xa9a4b76a1849962e4f2381d4, + limb2: 0x8cca18106919dba5, limb3: 0x0 }, y: u384 { - limb0: 0x2e7fad062d6673d1c547ad5c, - limb1: 0x711350823b52daad64cda8b0, - limb2: 0x51e6fe03411984de, + limb0: 0x83b5431928e6b6e7a9c6ca7d, + limb1: 0xbaa240039b0f3f55c45bed0e, + limb2: 0x2f197f01769d33c1, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x16c574f003cdecd1ad88955e, - limb1: 0x2f8be38dd1b17ce18c41cd4e, - limb2: 0xfdffa2904077ecdc, + limb0: 0xf85430d674e8e809cca9ecfd, + limb1: 0x7251a846ae1df459f8e96d63, + limb2: 0x5a0a46c463cef1f5, limb3: 0x0 }, y: u384 { - limb0: 0xbe0de301d5ca8513227baf94, - limb1: 0x5ddbc737758a887fd7c4b8dc, - limb2: 0xc19b75302d6680ac, + limb0: 0xf926aa0e58fc65991c7e9a87, + limb1: 0xbee758b2731995bcd8ad63b1, + limb2: 0x272f83408a9139fa, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xebc73570bd01622cc093106c, - limb1: 0xed13a823ce64e5c70ff4206b, - limb2: 0x2122365cc48e9301, + limb0: 0x114b124aafb2954bffafef10, + limb1: 0xe0becfbfc0acb56cb1f38707, + limb2: 0x20ad94ab1493ade9, limb3: 0x0 }, y: u384 { - limb0: 0x559e3d304e59874e4a7fed23, - limb1: 0xc5661c4af8546b20cc09c1fa, - limb2: 0xad26ef5a62d7aecc, + limb0: 0xbfe9b6daac2d301413fadc8d, + limb1: 0x2789e876e2afcbe5f0cbbcd6, + limb2: 0xe9d4b1043d28948f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xa6f2c92522843af5bd34ac1e, - limb1: 0x56cb101a262db9356522d6da, - limb2: 0x90902f1302ef999f, + limb0: 0x544ea182f1e0c6b8346c3301, + limb1: 0x34d2fa5c3b76c5ee1d643950, + limb2: 0x77a5c1159ec9d589, limb3: 0x0 }, y: u384 { - limb0: 0xf10209124f2a69537105d519, - limb1: 0x672b0a647d9388df699cd1ee, - limb2: 0xf048bce77dea6cc2, + limb0: 0x9dbf4c8a3053ce111066670a, + limb1: 0x3ce9b934fab88eaed277e427, + limb2: 0xf5551dde6353adae, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x60600398d69f22b82cfc198, - limb1: 0xc16d81294625b623416f6da4, - limb2: 0x639ecf0d85e10ded, + limb0: 0x10c2c1e7354726c5502a334c, + limb1: 0xb0f934e74f95e567c14df0c8, + limb2: 0x4cfe471d5e520b9c, limb3: 0x0 }, y: u384 { - limb0: 0x6dfcf60d671b3aedf8a8077b, - limb1: 0xf6e929ef20be70357d47038c, - limb2: 0x5df8a6ad6053ff9c, + limb0: 0xd7ac7fb8231a9c9d61792d52, + limb1: 0xcbfddf666c6fe014025854f5, + limb2: 0x1b15094a3e9a161d, limb3: 0x0 } }, @@ -37829,22 +37795,22 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x69199a8aaea6231508ef444a6e63ffa4, high: 0x354af1bdba5612f7600aa45e44e1b08c + low: 0x8bc905fbc784165cc3dcc66af5c5405, high: 0x66b648dc147a8a97268636377a591a5b }, u256 { - low: 0x1c3c8d3521d4fb7e22587c8958ccf9b4, high: 0x7fe6a4e2a6f1e475b61f92b9cf600ec + low: 0xdda92196c972ce00e7017a277e20a6e8, high: 0xc509578d331dd08ab2770d0649b91997 }, u256 { - low: 0x76a933cf65fd5f6993a25c9b6e3a52d7, high: 0xb5004950b5f50316a45335cc137fcd2b + low: 0xc5080707bf3bc785bb8f9fdeca8931d9, high: 0x1bc3130d1dd6497e8cc7a936ce1cb416 }, u256 { - low: 0x6ce8d7dcc71d92d613ec5718ae4a741a, high: 0x2367ad9e8dcd7d64b9e8e4ee8b7f6d7a + low: 0x35d545e4d92e5f447e1e235de8439cd2, high: 0x9e19b99677e492b406230f693c63d79c }, u256 { - low: 0x2a1ace85351c5aac2728ec952b52dab1, high: 0x22b3ce34867a4ac9079be4e53a6e8f12 + low: 0x415746498ef46b6301bee0340ec0e66f, high: 0x3f495ca63862abd9a690ec3295b15eee }, u256 { - low: 0xe65d1c735b62a7c97e3801afd1a8d7b0, high: 0x49bcf4a8bc6284a89f93e802e1c25cd1 + low: 0x32692a7070fe872c1a0463c64819ae70, high: 0x67939cdf1e7e4dd0bf0df024c913b078 }, ] .span(); @@ -37852,186 +37818,127 @@ mod msm_tests { array![ ( array![ - -0x1, 0x0, - 0x1, + -0x1, 0x1, 0x0, - -0x1, 0x1, 0x1, -0x1, 0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, - -0x1, -0x1, 0x0, 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, - -0x1, - -0x1, 0x0, + -0x1, 0x1, - 0x0, - 0x0, 0x1, 0x0, - -0x1, - 0x0, - -0x1, - 0x0, - 0x0, 0x1, - 0x0, + 0x1, + 0x1, 0x1, 0x0, 0x0, -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, - 0x0, 0x1, 0x0, - 0x1, -0x1, -0x1, 0x0, - 0x0, - 0x0, - 0x1, - 0x1, - 0x1, -0x1, + 0x1, 0x0, -0x1, + -0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x1, 0x0, -0x1, - 0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, + 0x1, 0x1, -0x1, 0x1, - 0x0, - 0x0, 0x1, - ] - .span(), - array![ - 0x0, 0x0, + -0x1, + 0x1, + 0x1, 0x0, 0x0, - -0x1, 0x1, 0x1, 0x1, - -0x1, + 0x1, 0x0, -0x1, 0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x1, - 0x0, - 0x0, 0x0, + -0x1, 0x0, 0x1, 0x1, + ] + .span(), + array![ + -0x1, 0x1, - 0x1, - 0x1, - 0x0, -0x1, + 0x1, -0x1, 0x1, 0x0, + 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x0, - -0x1, 0x0, -0x1, -0x1, 0x0, - -0x1, - 0x1, - -0x1, - 0x1, - 0x0, - 0x0, 0x0, 0x0, 0x1, - 0x0, - 0x1, - 0x0, -0x1, 0x0, - 0x1, -0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, - -0x1, 0x1, 0x1, -0x1, 0x0, - -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, -0x1, - ] - .span() - ), - ( - array![ - 0x1, -0x1, 0x1, -0x1, - 0x0, 0x1, - -0x1, - 0x0, - 0x0, - 0x1, - -0x1, 0x1, 0x1, 0x1, @@ -38040,555 +37947,623 @@ mod msm_tests { 0x0, 0x1, 0x1, + -0x1, + 0x1, 0x0, -0x1, + 0x1, -0x1, 0x1, 0x0, - 0x0, + 0x1, + -0x1, -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x0, + 0x1, + -0x1, + -0x1, + -0x1, + -0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x1, - 0x1, -0x1, -0x1, 0x0, + -0x1, + 0x1, + 0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, - -0x1, + ] + .span() + ), + ( + array![ 0x0, 0x1, 0x1, 0x1, + 0x0, + -0x1, -0x1, 0x0, 0x0, 0x0, 0x0, + 0x0, + 0x0, -0x1, 0x1, - -0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, - 0x0, 0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, + 0x1, -0x1, -0x1, - ] - .span(), - array![ - -0x1, - 0x1, + 0x0, -0x1, - 0x1, 0x0, 0x1, - -0x1, 0x0, 0x0, + -0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, + 0x1, 0x0, 0x0, + -0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, 0x0, 0x1, 0x0, + 0x1, + -0x1, + 0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x0, + 0x1, -0x1, -0x1, 0x0, 0x0, + 0x0, -0x1, -0x1, - -0x1, - 0x0, - 0x1, + ] + .span(), + array![ -0x1, -0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x1, 0x1, 0x0, + -0x1, 0x0, 0x1, 0x1, 0x1, + 0x1, + 0x0, 0x0, + 0x1, + -0x1, + -0x1, -0x1, + 0x1, -0x1, 0x0, -0x1, + -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, - 0x0, 0x1, 0x1, - ] - .span() - ), - ( - array![ - -0x1, - 0x0, - 0x0, -0x1, 0x0, 0x1, - 0x1, 0x0, - -0x1, 0x0, -0x1, 0x0, 0x0, - 0x0, + 0x1, + -0x1, + 0x1, 0x1, -0x1, 0x0, -0x1, 0x1, - 0x1, + -0x1, -0x1, -0x1, 0x1, 0x1, -0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, 0x1, 0x1, - 0x0, - -0x1, - 0x1, - 0x0, -0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, -0x1, + ] + .span() + ), + ( + array![ -0x1, + 0x1, -0x1, - -0x1, - -0x1, - 0x0, - -0x1, - -0x1, - 0x0, 0x1, 0x1, 0x1, -0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, 0x1, + 0x0, 0x1, - 0x1, - -0x1, - -0x1, - 0x1, - -0x1, - -0x1, -0x1, 0x0, - 0x0, 0x1, -0x1, -0x1, -0x1, - -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, - 0x1, - ] - .span(), - array![ 0x0, - -0x1, - 0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x0, 0x0, -0x1, 0x1, + 0x1, 0x0, -0x1, 0x1, 0x1, + 0x1, 0x0, 0x1, -0x1, - 0x1, -0x1, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, 0x0, 0x0, + 0x0, + -0x1, -0x1, 0x1, + -0x1, 0x1, 0x1, -0x1, -0x1, - -0x1, + 0x1, + 0x0, -0x1, 0x0, 0x0, -0x1, - -0x1, 0x1, - 0x0, -0x1, -0x1, 0x0, 0x0, + 0x0, 0x1, 0x1, - 0x1, + 0x0, -0x1, 0x0, 0x1, + -0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, -0x1, + ] + .span(), + array![ -0x1, -0x1, -0x1, - -0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x1, 0x1, - 0x1, -0x1, 0x1, + 0x1, 0x0, 0x1, + 0x1, -0x1, 0x0, -0x1, 0x1, -0x1, - -0x1, + 0x1, 0x1, -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, + -0x1, + 0x0, + 0x1, 0x0, 0x1, -0x1, - -0x1, - ] - .span() - ), - ( - array![ 0x1, - 0x0, + 0x1, -0x1, 0x0, + 0x1, + 0x1, + -0x1, + -0x1, -0x1, 0x1, -0x1, - 0x0, 0x1, 0x1, 0x0, - 0x0, - 0x0, + -0x1, + 0x1, 0x1, -0x1, 0x0, -0x1, - 0x0, + 0x1, -0x1, -0x1, 0x0, + -0x1, 0x0, - 0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x0, 0x0, 0x0, - -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, -0x1, -0x1, -0x1, - 0x0, - 0x0, -0x1, + ] + .span() + ), + ( + array![ + 0x0, 0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x1, -0x1, - 0x1, 0x0, 0x1, + -0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, + -0x1, + 0x0, 0x1, - 0x1, + -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x1, 0x1, + -0x1, + -0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x0, -0x1, -0x1, - 0x1, - 0x0, -0x1, -0x1, -0x1, + 0x1, + 0x1, + 0x0, + -0x1, -0x1, -0x1, 0x0, 0x0, + 0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, 0x1, - 0x1, - 0x0, 0x0, 0x1, - ] - .span(), - array![ - -0x1, -0x1, -0x1, + 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, + 0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, -0x1, + 0x1, -0x1, 0x1, 0x0, -0x1, -0x1, + 0x0, + -0x1, -0x1, 0x0, -0x1, + 0x1, -0x1, + ] + .span(), + array![ 0x1, + -0x1, 0x0, 0x1, -0x1, 0x0, 0x0, 0x1, - 0x0, 0x1, - -0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, 0x1, + -0x1, 0x0, + -0x1, + -0x1, + 0x1, 0x1, + 0x1, + -0x1, -0x1, -0x1, 0x0, - 0x1, + -0x1, -0x1, 0x0, -0x1, -0x1, 0x1, - 0x0, + 0x1, -0x1, 0x1, -0x1, - 0x0, + -0x1, + 0x1, + 0x1, + -0x1, + 0x1, 0x1, 0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, - -0x1, - 0x0, - 0x0, -0x1, 0x1, + 0x1, + 0x1, -0x1, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x1, 0x0, 0x1, + 0x0, + -0x1, + -0x1, 0x1, 0x0, + -0x1, + 0x0, 0x0, - 0x1, 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, + 0x1, 0x0, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x1, ] .span() ), ( array![ - 0x0, -0x1, -0x1, - 0x1, - 0x0, - -0x1, 0x0, 0x0, -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x1, -0x1, 0x0, -0x1, - -0x1, - -0x1, 0x0, 0x0, 0x0, 0x1, + 0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, 0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, 0x1, + 0x0, + 0x0, + 0x0, 0x1, - 0x1, - -0x1, - -0x1, - -0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x0, 0x1, 0x0, + 0x1, + 0x0, -0x1, + 0x1, + 0x0, -0x1, -0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x0, + 0x1, 0x1, 0x0, -0x1, 0x0, 0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, - 0x0, - -0x1, - 0x0, - 0x0, -0x1, 0x0, 0x0, 0x0, + -0x1, 0x1, 0x1, -0x1, @@ -38596,63 +38571,52 @@ mod msm_tests { -0x1, 0x0, -0x1, - 0x1, -0x1, + 0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x1, - -0x1, - 0x0, - -0x1, ] .span(), array![ 0x0, - -0x1, - -0x1, 0x0, + -0x1, 0x1, - 0x0, - 0x0, 0x1, -0x1, - -0x1, - -0x1, - 0x0, + 0x1, 0x0, -0x1, + -0x1, 0x0, -0x1, - 0x1, -0x1, - 0x1, -0x1, + 0x0, -0x1, 0x1, - 0x0, + 0x1, 0x0, -0x1, - 0x0, + -0x1, 0x1, 0x1, 0x0, + -0x1, 0x1, 0x1, - 0x0, 0x1, -0x1, - 0x0, -0x1, -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x0, + 0x1, + 0x1, 0x0, -0x1, 0x1, @@ -38660,195 +38624,190 @@ mod msm_tests { 0x0, 0x1, 0x1, - 0x0, - -0x1, - -0x1, 0x1, 0x1, 0x1, - -0x1, 0x1, + 0x0, + 0x0, -0x1, -0x1, + 0x1, -0x1, 0x0, + 0x1, 0x0, 0x0, + -0x1, 0x1, + -0x1, 0x0, -0x1, 0x1, 0x0, 0x0, + 0x0, 0x1, -0x1, 0x1, -0x1, - 0x1, + 0x0, 0x0, -0x1, + 0x0, 0x1, + 0x0, 0x1, 0x0, -0x1, + 0x1, + 0x1, ] .span() ), ( array![ + 0x1, 0x1, 0x0, + 0x0, -0x1, -0x1, - -0x1, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x0, -0x1, - 0x1, -0x1, -0x1, 0x1, 0x1, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, + -0x1, 0x1, 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x1, -0x1, -0x1, - 0x0, -0x1, 0x1, + -0x1, 0x1, 0x0, + 0x0, + 0x0, -0x1, -0x1, -0x1, 0x0, - -0x1, - 0x1, - 0x1, - 0x1, 0x1, -0x1, + 0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, + -0x1, 0x1, -0x1, 0x0, -0x1, - -0x1, 0x0, 0x1, - 0x1, -0x1, - 0x1, 0x0, - 0x1, - 0x1, 0x0, 0x0, - -0x1, - 0x1, 0x1, 0x1, -0x1, 0x0, -0x1, + -0x1, + 0x1, 0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, -0x1, -0x1, + 0x0, + -0x1, 0x1, - 0x1, + -0x1, 0x0, 0x1, 0x1, 0x0, - -0x1, + 0x1, -0x1, ] .span(), array![ -0x1, + -0x1, + -0x1, + 0x1, 0x0, + -0x1, + 0x1, 0x0, 0x0, - 0x0, - 0x0, - -0x1, 0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x0, + -0x1, + 0x0, 0x1, 0x0, + 0x0, + -0x1, -0x1, + 0x1, 0x0, 0x1, -0x1, + -0x1, 0x1, 0x0, -0x1, - 0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x1, - 0x1, -0x1, + 0x0, 0x1, -0x1, 0x1, -0x1, + 0x0, -0x1, -0x1, 0x1, 0x0, 0x0, - 0x0, - 0x1, - 0x1, - 0x1, - -0x1, -0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, - 0x1, - -0x1, 0x0, - 0x1, - -0x1, 0x0, 0x0, - -0x1, 0x1, -0x1, 0x0, @@ -38856,11 +38815,21 @@ mod msm_tests { 0x1, -0x1, 0x0, + -0x1, 0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x1, + -0x1, + 0x0, + -0x1, + -0x1, + 0x0, 0x1, ] .span() @@ -38871,133 +38840,133 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xa9e29d7fa5a0a0be86f0fea6, - limb1: 0x57e12fdc3edc6e0d2fae4acf, - limb2: 0x90c43b0501fa8a89, + limb0: 0x84780d8839a06385ab8652f0, + limb1: 0x3cc83725325027560fd6de0b, + limb2: 0xcc00bc81c8fa055e, limb3: 0x0 }, y: u384 { - limb0: 0x5713a85d10a9d1c23e278374, - limb1: 0x4b062522d6d2c3af9f773986, - limb2: 0x50491b2b82ac6a8e, + limb0: 0x3a369d542c2d5ff5effb8823, + limb1: 0x20cea7cd72e7b31b4b752804, + limb2: 0xeba0db216904d8ff, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x86c22008239b4241cc968ef6, - limb1: 0x2cfdfda13a2de497d3fd66f2, - limb2: 0x1c54b2f96de7eab, + limb0: 0xa280a98da37c1e57e8430ca8, + limb1: 0xdb5a65817cca54481332a567, + limb2: 0x7b9a6ffc3c2d2d94, limb3: 0x0 }, y: u384 { - limb0: 0xbb494c6d07499151b5e796a1, - limb1: 0x80dcc6056bf54d246eac8958, - limb2: 0xd2553f2ba5b606e7, + limb0: 0x5698aeb993aa85bb3d8bacab, + limb1: 0xc63c6a807abdc9bb6e68b873, + limb2: 0x689753f4fd4ca2b2, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x125cd52d3eb2bfa31ea150e6, - limb1: 0x941e208053e2f7e45082fc60, - limb2: 0x1447c60ef9aad4ce, + limb0: 0xf858964073ed8ca11252b5b8, + limb1: 0x5731038fb756fa2d4c8cd081, + limb2: 0x16793e26973324b6, limb3: 0x0 }, y: u384 { - limb0: 0xa3e2e973238d18d1f776e76a, - limb1: 0x1fa2e9f4af075296a6e51214, - limb2: 0xec74ccf6ff5a479e, + limb0: 0x925c2501dd02459ce57b6e34, + limb1: 0xb8dd6502abaab2e42ea713eb, + limb2: 0x96dab4e8705133e2, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x7156cd1e40e3f24c99c35428, - limb1: 0x95883a551dbd636054b088d, - limb2: 0xe79cc68e437abcc8, + limb0: 0x5ba8badc222b955a9b0d3b1, + limb1: 0x178272a535ee0e367820ffd2, + limb2: 0x183bfe199dffdea4, limb3: 0x0 }, u384 { - limb0: 0x78d859ab30f9c76438d9edd0, - limb1: 0x76b64c609d6de9e5f5eb549d, - limb2: 0xe6064c53d75f253e, + limb0: 0xb463e5f76394465bb69e8b12, + limb1: 0x9430183a24ac04fbcafccae0, + limb2: 0x1b32265da4cf18c5, limb3: 0x0 }, u384 { - limb0: 0x8e0dd523e2be7c0f354bce86, - limb1: 0x50b2788292bf2a504e6aa8a6, - limb2: 0x72f0f96dcd9fc55e, + limb0: 0xe82e79ca3edfacc936a9371b, + limb1: 0x6f2428f5a7482ee9cac7e8fd, + limb2: 0xfbeb5b8b2696a6bb, limb3: 0x0 }, u384 { - limb0: 0x3dacaf3c49fd0dd0c6d4e2e2, - limb1: 0x4c46da449caf2c67ee987d35, - limb2: 0x3c30664a059fc1a4, + limb0: 0x5f4f1b16a97f12302243f549, + limb1: 0x5e4c7cdb8d7c6cf4ebbd3b33, + limb2: 0x809901d0f8b59bc0, limb3: 0x0 }, u384 { - limb0: 0x809d87af9ecbc07d66f08100, - limb1: 0x36f037aaf26cc429b14e3cf0, - limb2: 0xb60aaeb0b4c8ffa4, + limb0: 0xf333fd620ecb248a5cc8dd75, + limb1: 0xe1f19576df82d526eb0696a7, + limb2: 0xcc823a51d5ad2e2a, limb3: 0x0 }, u384 { - limb0: 0xfdebf2e304830e373cf90735, - limb1: 0xed54fa2c49948c7b38137a1d, - limb2: 0x9e086cddd14a934f, + limb0: 0x44b061c4bf232dfca4df7540, + limb1: 0xecefb9a65969c785f0aaa47f, + limb2: 0x707c7ff31ea31b1d, limb3: 0x0 }, u384 { - limb0: 0x2194cf13b84d4924788cb5f4, - limb1: 0x1a62b650, - limb2: 0x8000000000000000, + limb0: 0x387ce494725233a7363255b9, + limb1: 0xffffffffffffffff28005cf6, + limb2: 0xffffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x3683f0873491c5f6fa909ab2, - limb1: 0xef6be8bfb16aa1120d27a511, - limb2: 0x32a1edfc47da0a6f, + limb0: 0xe93f55db3a5dca0bd49694ac, + limb1: 0xb6fb7edc959f3777b6e60b77, + limb2: 0xd87e332a1f5447ae, limb3: 0x0 }, u384 { - limb0: 0x60bbff5a6304e728379aa1aa, - limb1: 0x5fca5b4c19208e1e2e3c44c4, - limb2: 0xb3e96b2d683bcdf5, + limb0: 0x7087a059700e7dd46adf399, + limb1: 0x8ee33f247f350d6dfa4d180b, + limb2: 0x7acba627f8a55390, limb3: 0x0 }, u384 { - limb0: 0x82c54832075e93bf08886701, - limb1: 0x15c47e36a6742d18a5f08c2, - limb2: 0x3ff8ac47bd9901b5, + limb0: 0xadfc2afedc792fa5d2884be5, + limb1: 0x9f16b6a2c304211d24674870, + limb2: 0x5150e18fed2c1d4e, limb3: 0x0 }, u384 { - limb0: 0xdd90066708070f32e3623529, - limb1: 0x8d8c785812a0f082f0ad6e13, - limb2: 0x7f43b85d4d3d03f1, + limb0: 0xff3f29c8c0af963fe6d4882f, + limb1: 0xa855d6de7938c498356f1ff3, + limb2: 0xc11ebf261b11ea91, limb3: 0x0 }, u384 { - limb0: 0xe571352bdd1e6a4e1c26028f, - limb1: 0x4bd2cc5685421b8144e12a1a, - limb2: 0x6a012696a741323b, + limb0: 0xb2e6f8c0d74bee7d6c559ac1, + limb1: 0x2f599f0a7bd3a58992656d34, + limb2: 0xbceb12adacdbdeaf, limb3: 0x0 }, u384 { - limb0: 0x5571b7bb7060810a8e6310, - limb1: 0xe1d0264e92cf28941244d7ef, - limb2: 0x1e5b7a622d9286e2, + limb0: 0x6c079df37358044514c639c4, + limb1: 0xa350cdca0a6ed35566755cd, + limb2: 0x594d36cebbfd8762, limb3: 0x0 }, u384 { - limb0: 0xea0688de7f7bd8d5499ca1d, - limb1: 0xda0f152ae53fefc21f884351, - limb2: 0xe4e5b658a81550bb, + limb0: 0xfdcc2060d5623ed7f7789727, + limb1: 0x20fa00b899228f98b733758, + limb2: 0xa92163b7aaec053, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39005,114 +38974,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x470864c2d1ea2a4863bdc8f4, - limb1: 0x3abc4336fef861cdee5ea8a3, - limb2: 0x57e5fc6f591f7426, + limb0: 0x29a6c76ee04c340e8191a9a6, + limb1: 0x4c17701515f0329aa71a9a5d, + limb2: 0xdc4043da38735513, limb3: 0x0 }, u384 { - limb0: 0x42fbe9b252fc5287eb0c9b3b, - limb1: 0xc851f49cb3a5fdd1542adb9f, - limb2: 0x994f55280b57f232, + limb0: 0xcedfd3cff6e498e7c9bc859e, + limb1: 0xad8dacaa31856c2f336e113d, + limb2: 0x7e0db67c9ba545b9, limb3: 0x0 }, u384 { - limb0: 0x75ef1cac8bc68ed03096e778, - limb1: 0xa2812d376006f53ef6dfa947, - limb2: 0x820a07091fc3906e, + limb0: 0xa9c16bfe6f99089c9534e89b, + limb1: 0xa7762176953cb5c666278b61, + limb2: 0xb6f47920fcfaef52, limb3: 0x0 }, u384 { - limb0: 0x4f1c5977509ea00df336823c, - limb1: 0x2a2505ffab822c83559cb94, - limb2: 0x7b74640b0eae2efc, + limb0: 0x9cf846e27d94c80d1affda67, + limb1: 0x5d904c782ff44740904097bf, + limb2: 0x23afbbb55f788401, limb3: 0x0 }, u384 { - limb0: 0x855606fb2b58fc1d4655d134, - limb1: 0x3ae5750283197c6944715a01, - limb2: 0xa08e33e543f13751, + limb0: 0x2d59408f9af795bbd7227b7, + limb1: 0xed67ad4a7263cf3a2d9179fd, + limb2: 0x810a838d4366ca00, limb3: 0x0 }, u384 { - limb0: 0x5b5a8ba05a6c7e6b470d7925, - limb1: 0x5b5f64927f102a5aa35f6444, - limb2: 0xcba0a7173280b919, + limb0: 0xd2115bc33996c1c4abb603d8, + limb1: 0x2cfe2063db993491b02223a8, + limb2: 0x9c4ff810b7f8dfea, limb3: 0x0 }, u384 { - limb0: 0xbc338a2ad8bdafd8f0dbe17f, - limb1: 0xca7b98bcb1fc64cee063342e, - limb2: 0xb38e38966c05620e, + limb0: 0x491a1f85346f97b1afb43f0f, + limb1: 0xb0ecfa55564d4f41f42a21f6, + limb2: 0xf542ee8839d1048b, limb3: 0x0 }, u384 { - limb0: 0xef8ef80db7b2209985b375ba, - limb1: 0x271425156fb3b914af0ac694, - limb2: 0x5db6244586bc0cbb, + limb0: 0xd569410210cda8166fc57e1e, + limb1: 0xa2081c989980e6d7e9368778, + limb2: 0x65ab5dd74c6c8d8c, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7d9b93b26ffc69c1d9f43eaf, - limb1: 0x8bf35d3dd9ea677e5c158378, - limb2: 0x626d81e5f6f6490f, + limb0: 0x60bb58fe98908657d01e23c9, + limb1: 0xe07808175a8446004a5047, + limb2: 0xeb736626db4df5c7, limb3: 0x0 }, u384 { - limb0: 0xa523fb78b522521d853a7aea, - limb1: 0x9e887f14afe3e2d343a5e15e, - limb2: 0xeb61ee3dd9a2a1b5, + limb0: 0x313b56272106570feec1b4a2, + limb1: 0xe836b9ff7a735e01d81ba84d, + limb2: 0x5b918b17cc8548f3, limb3: 0x0 }, u384 { - limb0: 0x9364f95e33960a3a3bbad4d8, - limb1: 0x985f737e8d2d3bac8993d51, - limb2: 0xbfccb5f62f2f0bf3, + limb0: 0xc1e52cf807504d8ac1ba1ae5, + limb1: 0x599efe73551ce7cbfed2fb14, + limb2: 0x39362aef7c34cd26, limb3: 0x0 }, u384 { - limb0: 0x45741d586cc3305e32401a44, - limb1: 0xce43332833d134a6a1e5a79c, - limb2: 0xad7bf8896485260a, + limb0: 0xe3f97a587f2ae5d1246664db, + limb1: 0x51545ef1e62c97a12cefeb23, + limb2: 0x20556d34dcd1b1aa, limb3: 0x0 }, u384 { - limb0: 0xa6d4738d6ed9cf4dfca4bf06, - limb1: 0x728df1a9bdef4ea710646b80, - limb2: 0x99f1794bfb042d94, + limb0: 0xeb59474b7a146d503d0541f5, + limb1: 0xda56986de1fe9430fb13147b, + limb2: 0xa53928e7b2a86a5a, limb3: 0x0 }, u384 { - limb0: 0x851b643827713747526d2042, - limb1: 0x2e0d54096e115ede0a40f04b, - limb2: 0x147904f6fc9ab1e9, + limb0: 0xa2317ca703e14d8b63f3e7e3, + limb1: 0xe68a10ab27949d92813aa10e, + limb2: 0xc26d6137111ad0fc, limb3: 0x0 }, u384 { - limb0: 0x43f2e2485fcd3e163396d2da, - limb1: 0x83f60c8457607ed1cd67454b, - limb2: 0xc18bb4c9e5d23914, + limb0: 0xefd40c6e965f4e28ab20ae11, + limb1: 0xb6c3372f3c37e36b0595a362, + limb2: 0xb1d5ac675d92cd6, limb3: 0x0 }, u384 { - limb0: 0xe571352bdd1e6a4e1c260296, - limb1: 0x4bd2cc5685421b8144e12a1a, - limb2: 0x6a012696a741323b, + limb0: 0xb2e6f8c0d74bee7d6c559ac8, + limb1: 0x2f599f0a7bd3a58992656d34, + limb2: 0xbceb12adacdbdeaf, limb3: 0x0 }, u384 { - limb0: 0x5571b7bb7060810a8e6310, - limb1: 0xe1d0264e92cf28941244d7ef, - limb2: 0x1e5b7a622d9286e2, + limb0: 0x6c079df37358044514c639c4, + limb1: 0xa350cdca0a6ed35566755cd, + limb2: 0x594d36cebbfd8762, limb3: 0x0 }, u384 { - limb0: 0xea0688de7f7bd8d5499ca1d, - limb1: 0xda0f152ae53fefc21f884351, - limb2: 0xe4e5b658a81550bb, + limb0: 0xfdcc2060d5623ed7f7789727, + limb1: 0x20fa00b899228f98b733758, + limb2: 0xa92163b7aaec053, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39122,90 +39091,90 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x3942b6f30ce471fdfd7a5e5c, - limb1: 0x4fe85dc1fd9cf8ddfe6db154, - limb2: 0xbf91a4163deb2cf6, + limb0: 0xd23a90e6e887f7af2e0c14bf, + limb1: 0x6b84a9e37e92ca0133ab07f1, + limb2: 0xcb0354b628e54b38, limb3: 0x0 }, u384 { - limb0: 0x79d6df22ae532a5e285fcdaa, - limb1: 0x9af616e769eab3233f3917a0, - limb2: 0x2c4d80189ee478ea, + limb0: 0x8daa017290f5cf2b190dba1f, + limb1: 0xb42a4691bdfd4459a4203104, + limb2: 0xcdaee98c2a799201, limb3: 0x0 }, u384 { - limb0: 0xa01f6869b233bba3e3abd00f, - limb1: 0x8d8f60b82ae71225ac231917, - limb2: 0x8a9d261b93b8f157, + limb0: 0x5a7dc5eaa54847b0becda2f0, + limb1: 0xc531ce0302e6039ff37786a4, + limb2: 0x480a766f4a4fb008, limb3: 0x0 }, u384 { - limb0: 0xf85227a006f4661af630c03b, - limb1: 0x76ce878f716a5a2b964c6cc5, - limb2: 0x968d3430adb63982, + limb0: 0x483b8695ebd64b43ed32a4e8, + limb1: 0xa2c9740740333f9f68f312bf, + limb2: 0xb6613f1e540f40a7, limb3: 0x0 }, u384 { - limb0: 0x154a9c2c75a235c5e83aa74a, - limb1: 0xd8ca0d6ea63915225ad3bab5, - limb2: 0xeabed50c5b2b9b63, + limb0: 0x118a2fdf43d1c423d59e216c, + limb1: 0x87e6ec9e8ec989849932d538, + limb2: 0x6ecb7756dc1ce681, limb3: 0x0 }, u384 { - limb0: 0x594de901531847735a8313c8, - limb1: 0xeae3fe31df892f58e14a83ed, - limb2: 0x647b3eeda7bfb2ef, + limb0: 0xfe581bd037d8f7251f051d24, + limb1: 0xe13f5798ccb1246e4b95d6dd, + limb2: 0x14e508216558c92a, limb3: 0x0 }, u384 { - limb0: 0xa64b267cabe192e8140f6a6b, - limb1: 0xffffffffffffffff704a30d8, - limb2: 0x7fffffffffffffff, + limb0: 0x4032ae0d25399f83d6783f7, + limb1: 0x436f8060, + limb2: 0x8000000000000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x46a2a619d809186ee4612b2b, - limb1: 0x7b0873bb330ecd957b1ba52, - limb2: 0x2f4e9f0de31affc7, + limb0: 0xae4c58c5d5e99815a7308e24, + limb1: 0x60ab4b590b92ff3f2590d7a2, + limb2: 0x81030f5805cb40f7, limb3: 0x0 }, u384 { - limb0: 0xd13b253a0af2bbb639667118, - limb1: 0x378b9e8a7d89620641f43184, - limb2: 0x9915c0ac1fcaf357, + limb0: 0xef5f65c8acd897048356a8fd, + limb1: 0xed0284bca335d0cef635f8aa, + limb2: 0xe8cf5132c6766d1b, limb3: 0x0 }, u384 { - limb0: 0x91c895c4e7d7c22624300313, - limb1: 0x838dac16703686356bdc8c03, - limb2: 0x6b6270df238a6aca, + limb0: 0xb0ff87267f8283bbe878bcb6, + limb1: 0x8aaf0cee095c8f4851fadead, + limb2: 0x431592a885bd41f9, limb3: 0x0 }, u384 { - limb0: 0x48e2517000ea7688d8c5cc6e, - limb1: 0xc4c4deba3d4558d4df4e630, - limb2: 0x16e1cbfc56b062c3, + limb0: 0xf937127cf230f3524620c02a, + limb1: 0x7d6cff28ff90ef732ade4913, + limb2: 0x9f331e80610ea42b, limb3: 0x0 }, u384 { - limb0: 0x45dd646717332803d7187fa5, - limb1: 0x9e7995450f172fe6d18a41eb, - limb2: 0xb4dbd839b63b059c, + limb0: 0x518ee24b429eaccf0471f876, + limb1: 0xbbc19fad97e5083f14e8ac9a, + limb2: 0x320915dac75a4f45, limb3: 0x0 }, u384 { - limb0: 0xa066d8d93804863d1d7cb6c5, - limb1: 0xa1ed71e2372b7de00a790232, - limb2: 0x342e8708f4076449, + limb0: 0x580c10d71188973339b1d137, + limb1: 0x479d3316db3be7cd8fc958e1, + limb2: 0x431ae8366be7228b, limb3: 0x0 }, u384 { - limb0: 0x31c0e60569fd1c0b0ef43d9e, - limb1: 0x4f24765e9ee79377b39272e, - limb2: 0x73e4a62e13315c9a, + limb0: 0xdfc3845b6b868405babbdd6f, + limb1: 0x637d71af3f17fc0788176ffc, + limb2: 0x5af862c1077b981c, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39213,114 +39182,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x459ef795e7492192a293858a, - limb1: 0xa0adb0f2c154ed967cfd144c, - limb2: 0xa4fb5aabef6c9469, + limb0: 0xe3df2d932683fa168b16976f, + limb1: 0x1d7cd8642fddf31d486dbbcc, + limb2: 0xa2f58a0eaff8cb75, limb3: 0x0 }, u384 { - limb0: 0x6b26b700308c5cf55a74ef9c, - limb1: 0x6d87ee172079a0ff49e8439, - limb2: 0xf55074c7eeafff8, + limb0: 0x1249b7531e52e3b2fbbf161e, + limb1: 0x8cb54aac4ad7eb8ef85f734, + limb2: 0xfda8836423fceb2, limb3: 0x0 }, u384 { - limb0: 0xa000ca7a254aaeb353eb1b12, - limb1: 0xbe0a842f2acd5e4ccb1950ba, - limb2: 0x904c46e50bd13cc, + limb0: 0xbf2063a0c546bfdc3e46ac26, + limb1: 0x47a0ae923f59eb0d2cdc0d22, + limb2: 0x66a7f320a4dcdaf8, limb3: 0x0 }, u384 { - limb0: 0x882bcedd409a8166383cc58c, - limb1: 0xbef2643d0e2b031102057ebc, - limb2: 0x263754aac6f07ed, + limb0: 0xb63f8751e3b423c9a93c0cfc, + limb1: 0xad9926bfdbe9f603b51b0c3c, + limb2: 0xcf808580384415d5, limb3: 0x0 }, u384 { - limb0: 0x1f3e1a1c1e698639ebf6a246, - limb1: 0x33054fd0fc8971d4a3a09f20, - limb2: 0x1c508ac365ed328e, + limb0: 0xa8a9e350824937bf49954d3b, + limb1: 0x2a8639bc636d585f61a43ab6, + limb2: 0x89c9b4780845991a, limb3: 0x0 }, u384 { - limb0: 0xe943e33e7f6899eb04b58633, - limb1: 0xfd50959f5cfe5345f2f418b9, - limb2: 0x1c49dedca41ce27e, + limb0: 0xdd3734527b5b0383cd374a73, + limb1: 0xcd68e405fb66687ce64399c4, + limb2: 0x33f1bd0e68efeea5, limb3: 0x0 }, u384 { - limb0: 0x60aac89350b5a794544c4243, - limb1: 0xcf430f4c4ebf07c41060a341, - limb2: 0xc4d002e3d9ce999, + limb0: 0x216d15d73a9317fda5bb2836, + limb1: 0x26c7cbc9ef48ef085d50fd15, + limb2: 0xa35f189f756d9f3d, limb3: 0x0 }, u384 { - limb0: 0x4d75b109166ca96940eecbbb, - limb1: 0x9dae677da6665380d783b34d, - limb2: 0x153dadafd9ce0ebc, + limb0: 0x1b04feed906aad8fa4bdcd99, + limb1: 0xeac23b273f07a2a170612629, + limb2: 0xc1be7e0de5eda737, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xee728ab4e83fab093ea831fe, - limb1: 0x35d3b2a1e65679f165dc183f, - limb2: 0x4b26596135bcfe71, + limb0: 0xc4166d68d963289a9253ee6f, + limb1: 0xa4af0f6f5104faba06f5e572, + limb2: 0x87156b68288ec6c3, limb3: 0x0 }, u384 { - limb0: 0xb89e04964ca321ff91cd26ec, - limb1: 0x84d155c96ec1ae2bcdad5aa1, - limb2: 0x2f9844b4de8ca762, + limb0: 0x8b9bc87cb9ec2125975eb5d1, + limb1: 0x7b11a1287678b5a8bb79ccac, + limb2: 0x5dab38636d3cfbc3, limb3: 0x0 }, u384 { - limb0: 0xfc7c186256e64f0cfd501d27, - limb1: 0x98dfb49d117dab75f307d418, - limb2: 0xefb11619f8c8eb89, + limb0: 0xd6fcb20d7c919a245b4d2ccb, + limb1: 0xcac95a824187eafa3ddc16bf, + limb2: 0xd597029ba82ccdd2, limb3: 0x0 }, u384 { - limb0: 0x44d2e029de72562cd1c9c22d, - limb1: 0x5dc6a8ad2dff43b6796405a4, - limb2: 0xcf7b32f441edb31c, + limb0: 0x7ecdda3075403f599215de8e, + limb1: 0xcea6457808898b6551a4d72e, + limb2: 0xdb68e4daad31be27, limb3: 0x0 }, u384 { - limb0: 0xba48e40bad58d3d61b1201b0, - limb1: 0x8cdeb36de72bb155fcbbfef3, - limb2: 0x8b18aa401b681a9f, + limb0: 0x2a4795d77f2f50afa2747bd9, + limb1: 0xf4de27bca790a888892b0e3, + limb2: 0x470eea2e39ee9804, limb3: 0x0 }, u384 { - limb0: 0xf49883b56ff76dd2f2990647, - limb1: 0xf10bc945f266f755b52b9b65, - limb2: 0xd8a8221dcfbe28cd, + limb0: 0x1953fd07fa3ea6247c557cd9, + limb1: 0x7ffb728e07ffe5e7407c4cd7, + limb2: 0x18d1ec25790f33c8, limb3: 0x0 }, u384 { - limb0: 0xa5289b95e6d63ad941738733, - limb1: 0x2eec41b50959a611ac84f873, - limb2: 0x4222573edd09eaf9, + limb0: 0x178fb0fce2de8f7d6143d9a6, + limb1: 0x35db1af3b938d3a7e38258fe, + limb2: 0x1bfdd1c7956fccf2, limb3: 0x0 }, u384 { - limb0: 0x45dd646717332803d7187fac, - limb1: 0x9e7995450f172fe6d18a41eb, - limb2: 0xb4dbd839b63b059c, + limb0: 0x518ee24b429eaccf0471f87d, + limb1: 0xbbc19fad97e5083f14e8ac9a, + limb2: 0x320915dac75a4f45, limb3: 0x0 }, u384 { - limb0: 0xa066d8d93804863d1d7cb6c5, - limb1: 0xa1ed71e2372b7de00a790232, - limb2: 0x342e8708f4076449, + limb0: 0x580c10d71188973339b1d137, + limb1: 0x479d3316db3be7cd8fc958e1, + limb2: 0x431ae8366be7228b, limb3: 0x0 }, u384 { - limb0: 0x31c0e60569fd1c0b0ef43d9e, - limb1: 0x4f24765e9ee79377b39272e, - limb2: 0x73e4a62e13315c9a, + limb0: 0xdfc3845b6b868405babbdd6f, + limb1: 0x637d71af3f17fc0788176ffc, + limb2: 0x5af862c1077b981c, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39330,9 +39299,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x6148aeba6f6712b533de4f03, - limb1: 0x206e8fcde2de00c7d23768da, - limb2: 0x6edc12a7d787643e, + limb0: 0xc5461b6c128e2b3d863e803, + limb1: 0xdbcb64a636d07073d0a7ef9c, + limb2: 0x5120f175beba2f4, limb3: 0x0 }, u384 { @@ -39345,15 +39314,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x18cfc8c40f6ecbe91cfddcc7, - limb1: 0x6caacb9d5281f51564314810, - limb2: 0x646079123cf7d6f2, + limb0: 0xfad18c4659f88540364ef6e6, + limb1: 0x55897590c988c444d7637e3e, + limb2: 0x46fdf90e0e32a604, limb3: 0x0 }, u384 { - limb0: 0x66e10aca9db1fe1a14c81c53, - limb1: 0x3ee3e1de71ef2383db7f9cad, - limb2: 0xe9f2eec16f76ac86, + limb0: 0x6526c031e8965506056a39cf, + limb1: 0xcd7496eecbdeb18aa0408a16, + limb2: 0x6dec51dd2c9fadb4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39361,49 +39330,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x8d8f67273f4d7d7367565f75, - limb1: 0xc5ea87501335743e1da05a72, - limb2: 0xa0b767e325a6db38, + limb0: 0x21a6a5832f9f6b397550b7cb, + limb1: 0xf7680e64ecef6096c5e349b7, + limb2: 0x203def586d40ebe3, limb3: 0x0 }, u384 { - limb0: 0x3eeab5d92aa9c4faf8435fa9, - limb1: 0xecb7b3e8c09bd4af4e809796, - limb2: 0x730eeaa5594f43a1, + limb0: 0x51c90b57b4580c89ea089500, + limb1: 0x6502b03e75d94b4858d88168, + limb2: 0x5376ddae9115ba68, limb3: 0x0 }, u384 { - limb0: 0x989a62bf4e5ee4f0c056e87b, - limb1: 0x30508051b4c898efe2a4c708, - limb2: 0xa0fe456f9e9f8e51, + limb0: 0xe2e032f18f6db7d88d97515d, + limb1: 0xe76a18e37c93aea063e0da9a, + limb2: 0xa6a66e1b9a9a14f6, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xadae7d5c6c079361caf11113, - limb1: 0xf8ab914d418db395bd58f870, - limb2: 0xbea34f7faac6e0a0, + limb0: 0xdbbad5ec75cba4c27c28c41b, + limb1: 0x56c236f582bd5de1e3b873b8, + limb2: 0xf0f1cf6263628a1e, limb3: 0x0 }, u384 { - limb0: 0xd0274b8a4fddf2bc9178dd2b, - limb1: 0xb83b2d151d89f89b007d48bd, - limb2: 0x65a4874a0c3eb7ab, + limb0: 0xc40f415d5c1c532d25e7a01c, + limb1: 0x9e3020879316daca61c3c69c, + limb2: 0x1763d0c385dbff1, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x18cfc8c40f6ecbe91cfddcc7, - limb1: 0x6caacb9d5281f51564314810, - limb2: 0x646079123cf7d6f2, + limb0: 0xfad18c4659f88540364ef6e6, + limb1: 0x55897590c988c444d7637e3e, + limb2: 0x46fdf90e0e32a604, limb3: 0x0 }, u384 { - limb0: 0x66e10aca9db1fe1a14c81c53, - limb1: 0x3ee3e1de71ef2383db7f9cad, - limb2: 0xe9f2eec16f76ac86, + limb0: 0x6526c031e8965506056a39cf, + limb1: 0xcd7496eecbdeb18aa0408a16, + limb2: 0x6dec51dd2c9fadb4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -39413,43 +39382,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x2a1a4414f92a2e647d2d6f89, - limb1: 0xba529d1622a0b642a6a8329a, - limb2: 0x51176a5039909082, + limb0: 0x193e221f31ab5ac88f37eb19, + limb1: 0x9c443c70526af0371f009a1f, + limb2: 0x6e672901877d81f6, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0xfe9b4c02307fe1854a4594a5, - limb1: 0x45a0d915026a7a634f72a71a, - limb2: 0x5cf9a8cf8fa11907, - limb3: 0x0 - }, - u384 { - limb0: 0xeadbbdd58010329c79de783f, - limb1: 0xb986f7412818b5a45cac0b4, - limb2: 0x52f75e7dcfc7a33a, - limb3: 0x0 - }, - u384 { - limb0: 0xf8a6458b342930375c0bcd3c, - limb1: 0xfea6dc44201b376e98a92ce5, - limb2: 0x74ff37682d547fce, - limb3: 0x0 - }, - u384 { - limb0: 0x748e769c5ffb39af5f0250ee, - limb1: 0xb2bf35cca8361a4ec62fd1dc, - limb2: 0x238b95f2a7476048, - limb3: 0x0 - }, - u384 { - limb0: 0x153c83a2f2bb24bf76021223, - limb1: 0xacbb4ce5e9b605cd751ad6ee, - limb2: 0x1f466db514e49702, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 2 @@ -39457,15 +39395,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x85a30abca6d0985d7fc5d122, - limb1: 0xd513d787e9f8bb067e89f92c, - limb2: 0x5f1f7b6e9b049418, + limb0: 0xc4e6a9b999e0fb6bf26d72cc, + limb1: 0x21e9bc26a99c09a29c600c21, + limb2: 0xcc219fd193117e75, limb3: 0x0 }, y: u384 { - limb0: 0xcc1392670eac1191e04f0566, - limb1: 0xfcee46961abaa7fa9968bf73, - limb2: 0x774c588c41aa5bbe, + limb0: 0xf4ba026fd78fe5c5cf119d70, + limb1: 0xe5edd1bbf84a114435472345, + limb2: 0x18b2a12dedb2998f, limb3: 0x0 } } @@ -39478,99 +39416,99 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xc4801ca5b80ee48641c71c16, - limb1: 0x522507715020d6a55093961c, - limb2: 0xd602d5ef53344ef1, + limb0: 0x75fd32740eb551c1ebafff49, + limb1: 0x1d5d9d4aed11d6d71f80a148, + limb2: 0x6737f72ed95dd4c5, limb3: 0x0 }, y: u384 { - limb0: 0xb7e15bf91026bd4712cc4738, - limb1: 0x1964ee6eb9a48f70f7794a46, - limb2: 0x455627a2ea9e49b8, + limb0: 0x9fece126f0373352a2ab88da, + limb1: 0xac8927156e2205d9133e7a01, + limb2: 0x4c764e5ed22429bb, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x58c3c7a8f8fd0942a457cde1, - limb1: 0x45f48dd03471501d630e9974, - limb2: 0xd7923b9d2045135e, + limb0: 0xb08af7f3919d790db4d6acd3, + limb1: 0x6c0d8289bb717701d704c6fd, + limb2: 0xa959f6200dc5c1de, limb3: 0x0 }, y: u384 { - limb0: 0x40f9803dcb4fcd100a6cad22, - limb1: 0x44613afdab16d4ed14e6573f, - limb2: 0x9c096822f103b265, + limb0: 0x2d7da845cd242f4b399bbf0, + limb1: 0xf799ad3cafea9ac3f6445df5, + limb2: 0x5f4f77a954bc5429, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb31e6ca21d1f339abd9bdf13, - limb1: 0xeb8b8b2c8471270c942f62d7, - limb2: 0x5efc6469b0c6c328, + limb0: 0x8293fd4b82414950c9a43c69, + limb1: 0x69957f085f7452ccb1f172d0, + limb2: 0xdff75ea860f96b80, limb3: 0x0 }, y: u384 { - limb0: 0xb9e36d492486637ec8818203, - limb1: 0xfd33795786c169877514b65c, - limb2: 0x2db96882ae7b2023, + limb0: 0xd244e5910e84fde9dbb7ca85, + limb1: 0xba10ed8be1a86755f5aa24a8, + limb2: 0x92a1e7c3235a634c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x40ca8aa0e2d385c761d858c, - limb1: 0x2d446414ef0a4a838a3aa72a, - limb2: 0xbb81e51c0a2266a2, + limb0: 0xf805a70de46cd1b054f26724, + limb1: 0x9edd2b35ff22b1aeb2ae83e5, + limb2: 0xe1eedb57af623cba, limb3: 0x0 }, y: u384 { - limb0: 0x3b2f82ac43a1a56dc1bbc600, - limb1: 0x53a6b0b5439832932d51d18c, - limb2: 0xef390582fc8ab144, + limb0: 0x8a8cc8184d0330e47ecb952a, + limb1: 0x746cca33687189706595d1ab, + limb2: 0x61d91ed466c2f6b, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd33759026dc5a1a8678fe0f1, - limb1: 0x121aaf7c9a81310dbd069e5b, - limb2: 0xe98273d5007920e7, + limb0: 0x1e342c3d60646d739ed920ff, + limb1: 0x25677e7c7394ad37569563b6, + limb2: 0x5ef51a202607df3a, limb3: 0x0 }, y: u384 { - limb0: 0x4291f92977489451f434507c, - limb1: 0xda54409d31a79c045e7d75d, - limb2: 0x9200590159ee9c10, + limb0: 0xfe5bc8a7c74944961d4ac8fa, + limb1: 0x9ff996f52345aea7d1d82644, + limb2: 0xc7bd06c702b4e0ba, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x7245ca66400b56ebe3958d85, - limb1: 0x7b0e921935a0a3ae128be48a, - limb2: 0x1d4636405f199994, + limb0: 0x664e78716e29c53204ad690a, + limb1: 0xa84f987bf8823e122c451f0e, + limb2: 0x3f298add09b81927, limb3: 0x0 }, y: u384 { - limb0: 0x92f2bcdf3f8bb650e124e032, - limb1: 0xc37ddcd7f7a6799bc1bb0ad9, - limb2: 0x9b58e8a4588d1b8d, + limb0: 0xdd9eb53e26f65b9eb84d45bf, + limb1: 0x46d06c576ca910024f8c3166, + limb2: 0x25881dd4ed1ae0c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xc9c19f603ce948378ab2026b, - limb1: 0xd43cb135fa2211b0f9e6962d, - limb2: 0x39ea13a461e977a4, + limb0: 0xa2c24a6961a76504a248fdbd, + limb1: 0x20c2ec5becf416179dd297b6, + limb2: 0x21b97e002fcf7b3c, limb3: 0x0 }, y: u384 { - limb0: 0x7e22199ecf7de3d737ae6cc, - limb1: 0x6dc6d78a235886129e3f6e, - limb2: 0x612fb6fc5007c1d0, + limb0: 0x58f876fb1153bb9e60371f65, + limb1: 0xd4dc8f3b33e3c91f232fab6e, + limb2: 0xc3e4bc6b6da931a, limb3: 0x0 } }, @@ -39578,25 +39516,25 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xe1a9344eef7f6bc8fb24cba4b4577bf7, high: 0xc77f0b62b26489f71b58286c8461f840 + low: 0x70a10c9f4c97a070d1f704c89ae683ef, high: 0xb5947b5884ac7c79587ab6a118332869 }, u256 { - low: 0x98856c7f3475a526b2b4c281a5b91ee8, high: 0x83719849fb5214d99a66d48da4f0d9c2 + low: 0x91d527c813c4a3f978ac03412a6723b0, high: 0xcf78efb5ab2914e255fdcf41a0bbdaaa }, u256 { - low: 0xbb5f15c1b0445ebb444517ef1c769e1f, high: 0x15db4487603803f32b2bcfda9d4319b5 + low: 0xe607d8878f48985e2273a62ca65a54e9, high: 0x6fa9395429e98f092d1f885bcf9bee1 }, u256 { - low: 0x1d8ac1a902af33820938ad77cb18d6a4, high: 0xb8f35c26d13ec39c5cb6f1f0e4751694 + low: 0x756d92ae26df0cbde82e0ed8367802cb, high: 0x7cc4a930796322ea14651d827c73a1a5 }, u256 { - low: 0xad0cabfc1baf01f1517fa07e7b0f78c1, high: 0xb259a6a0959199005e7cfaad73df770a + low: 0x73202d9b0f88069b2c8c2266b6661ec6, high: 0xb023865e51166bb796f14fb60e3bf5af }, u256 { - low: 0xcfe4fb667c8d5368aaa2843940fe81ec, high: 0x28b74f3dec3826bc3a8d1c00c6962905 + low: 0xa99697bc6b9237d30c9205cafbefeccb, high: 0x967b4a3efd2558d82b970625a4567509 }, u256 { - low: 0xe5098f9ad3c61e058d37aebb8fc7f7e3, high: 0x820bc51ddb3aefa6c7d0286213f36e53 + low: 0x4e1411705e103d982c1ce228724a3de6, high: 0x1ad398c4b466d94e989dbb5365dcd4bd }, ] .span(); @@ -39604,170 +39542,169 @@ mod msm_tests { array![ ( array![ - 0x1, - 0x0, - 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, + 0x0, -0x1, + -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, 0x1, -0x1, + 0x1, + 0x0, + 0x0, -0x1, + 0x1, -0x1, 0x0, + 0x1, + 0x1, + 0x0, + 0x0, + -0x1, -0x1, 0x1, -0x1, + -0x1, 0x0, 0x0, -0x1, - -0x1, + 0x0, + 0x0, 0x0, 0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x1, -0x1, -0x1, 0x1, 0x1, - 0x0, - 0x1, - 0x1, 0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, - 0x0, - 0x1, - 0x1, - 0x0, 0x0, + -0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x0, -0x1, -0x1, 0x0, 0x1, - -0x1, - 0x1, 0x1, -0x1, 0x0, -0x1, - -0x1, + 0x0, -0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x1, ] .span(), array![ -0x1, -0x1, - 0x0, - -0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x1, 0x1, 0x1, 0x0, - 0x1, -0x1, + 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, -0x1, 0x1, - 0x1, -0x1, + 0x1, + 0x0, -0x1, 0x1, -0x1, -0x1, + -0x1, + 0x0, + 0x1, 0x0, 0x0, - -0x1, - -0x1, + 0x1, -0x1, 0x0, 0x0, -0x1, 0x1, - -0x1, + 0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x1, + -0x1, + 0x0, + 0x0, 0x0, + 0x0, + 0x1, + 0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, 0x0, 0x1, - -0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, + 0x0, + 0x1, 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x1, + -0x1, 0x0, 0x1, + 0x0, 0x1, -0x1, -0x1, @@ -39776,84 +39713,84 @@ mod msm_tests { ), ( array![ - 0x1, -0x1, - 0x0, 0x1, 0x1, -0x1, - 0x0, - -0x1, 0x1, 0x1, + 0x0, + -0x1, -0x1, -0x1, 0x0, - 0x0, - 0x0, + -0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, 0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, + -0x1, + -0x1, + -0x1, + 0x0, -0x1, 0x1, 0x0, + -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, 0x0, -0x1, 0x1, 0x0, - -0x1, 0x1, - -0x1, - 0x0, 0x1, 0x1, - 0x0, + -0x1, 0x0, 0x1, 0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x0, -0x1, 0x0, 0x0, + 0x0, + 0x0, 0x1, -0x1, - 0x1, -0x1, 0x1, -0x1, - -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x0, - 0x1, - 0x0, - 0x0, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x1, @@ -39861,450 +39798,443 @@ mod msm_tests { .span(), array![ 0x0, + 0x1, 0x0, 0x0, - 0x0, + 0x1, + 0x1, -0x1, + 0x0, -0x1, -0x1, 0x0, - 0x0, - 0x1, - 0x0, -0x1, -0x1, + 0x1, -0x1, + 0x1, 0x0, + -0x1, 0x0, -0x1, 0x0, + 0x0, -0x1, - 0x1, - 0x1, 0x0, 0x0, 0x0, - -0x1, - -0x1, 0x1, 0x1, -0x1, -0x1, - 0x1, - -0x1, - 0x1, 0x0, + 0x1, 0x0, -0x1, + 0x0, + 0x1, 0x1, -0x1, - 0x0, 0x1, -0x1, -0x1, -0x1, + 0x1, -0x1, -0x1, - 0x1, 0x0, 0x0, - 0x1, - -0x1, - 0x1, + 0x0, -0x1, -0x1, - 0x1, 0x0, -0x1, - 0x0, - 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x0, -0x1, -0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x1, + 0x0, 0x0, + 0x1, + 0x1, + 0x1, + -0x1, -0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, 0x1, + 0x0, 0x1, 0x1, + -0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, ] .span() ), ( array![ - 0x0, - 0x0, - -0x1, + 0x1, -0x1, 0x1, 0x0, 0x0, 0x0, - -0x1, 0x0, 0x1, + 0x0, -0x1, -0x1, + 0x1, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, - 0x0, + 0x1, -0x1, - 0x0, + 0x1, 0x1, -0x1, + -0x1, + -0x1, 0x1, 0x1, 0x1, - 0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, + -0x1, 0x1, + 0x0, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, + -0x1, + 0x0, + -0x1, + -0x1, 0x0, 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x1, 0x1, + -0x1, + 0x0, + 0x0, 0x1, 0x1, - 0x0, -0x1, + 0x0, 0x1, 0x1, -0x1, 0x0, 0x0, 0x1, - -0x1, - -0x1, - 0x0, 0x1, -0x1, - 0x1, 0x0, -0x1, -0x1, + 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x1, + 0x1, + 0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, - 0x1, + 0x0, -0x1, 0x1, 0x0, - 0x0, 0x1, + 0x1, + 0x0, -0x1, -0x1, ] .span(), array![ - 0x0, -0x1, - 0x0, - 0x0, - 0x1, -0x1, 0x1, - 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + -0x1, -0x1, 0x0, + 0x0, + 0x0, 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, + 0x0, -0x1, 0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, 0x0, + -0x1, + 0x1, 0x0, - 0x0, + 0x1, 0x0, -0x1, 0x1, 0x0, + 0x0, + 0x0, -0x1, -0x1, - 0x1, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, 0x0, -0x1, + 0x0, 0x1, 0x1, 0x0, - 0x0, 0x1, -0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x0, + 0x1, 0x0, 0x1, - -0x1, - -0x1, 0x1, - -0x1, - 0x0, 0x0, -0x1, - 0x1, 0x0, 0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, 0x1, - -0x1, - -0x1, ] .span() ), ( array![ - 0x1, - -0x1, -0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, 0x0, - 0x0, 0x1, -0x1, 0x1, 0x1, - 0x1, - 0x1, -0x1, 0x0, 0x1, 0x0, - 0x0, - -0x1, - 0x0, 0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, -0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x0, 0x1, 0x1, + 0x0, + 0x0, + 0x0, + -0x1, + 0x0, + -0x1, + 0x0, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, - 0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x0, -0x1, 0x1, + 0x0, + -0x1, 0x1, -0x1, 0x0, + 0x0, + 0x1, + 0x0, -0x1, + 0x0, + 0x0, 0x1, + 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x1, - -0x1, - 0x0, 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, -0x1, 0x1, -0x1, + 0x0, -0x1, 0x1, -0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, + ] + .span(), + array![ 0x1, - -0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, -0x1, - -0x1, - ] - .span(), - array![ + 0x0, 0x1, -0x1, - 0x0, -0x1, -0x1, -0x1, + 0x1, 0x0, - 0x0, - 0x0, + -0x1, 0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, - 0x1, - 0x0, - 0x0, - 0x0, 0x0, 0x0, 0x1, - -0x1, - 0x0, - 0x1, 0x1, + -0x1, 0x1, 0x0, + 0x0, -0x1, -0x1, - 0x1, - 0x1, -0x1, -0x1, - 0x1, 0x0, 0x1, - -0x1, - 0x1, 0x0, - -0x1, + 0x0, -0x1, 0x0, - 0x1, 0x0, + 0x1, -0x1, + 0x1, + 0x0, + 0x0, 0x0, - -0x1, 0x1, + 0x0, 0x1, - -0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, -0x1, + 0x1, -0x1, + 0x0, 0x1, 0x1, + -0x1, 0x0, -0x1, 0x0, 0x0, + 0x0, 0x1, - -0x1, 0x1, -0x1, 0x1, + 0x0, 0x1, - 0x1, 0x0, 0x0, + -0x1, + 0x0, + 0x1, + 0x0, + 0x1, 0x0, 0x1, - -0x1, - -0x1, ] .span() ), ( array![ + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x1, - 0x0, - -0x1, -0x1, 0x0, - 0x0, - 0x0, 0x1, - 0x0, - -0x1, - 0x1, - -0x1, - -0x1, -0x1, -0x1, 0x1, @@ -40312,82 +40242,86 @@ mod msm_tests { 0x0, 0x1, 0x0, + -0x1, 0x1, - 0x0, 0x1, -0x1, - -0x1, + 0x1, 0x1, -0x1, -0x1, 0x0, 0x0, -0x1, - -0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x1, -0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, - 0x1, -0x1, 0x0, + 0x0, + 0x0, -0x1, - 0x1, - 0x1, -0x1, + 0x1, -0x1, -0x1, -0x1, 0x0, + 0x1, + 0x0, -0x1, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, + 0x1, 0x0, 0x0, - -0x1, + 0x1, + 0x1, 0x1, -0x1, 0x0, 0x0, + -0x1, 0x0, 0x0, - -0x1, 0x1, - -0x1, - -0x1, ] .span(), array![ 0x0, - 0x0, - 0x0, + -0x1, 0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, + 0x0, 0x1, 0x1, + 0x0, + 0x0, 0x1, 0x0, -0x1, - -0x1, - 0x1, 0x0, + 0x1, 0x0, 0x0, 0x1, @@ -40395,60 +40329,62 @@ mod msm_tests { 0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, + 0x0, + -0x1, 0x1, + 0x0, + 0x0, 0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, 0x1, -0x1, -0x1, - 0x0, - -0x1, -0x1, 0x1, 0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x1, -0x1, -0x1, 0x1, 0x0, - 0x0, - -0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x1, -0x1, 0x0, + 0x0, -0x1, 0x1, -0x1, 0x1, -0x1, 0x1, + 0x1, + -0x1, 0x0, + -0x1, 0x0, -0x1, -0x1, - 0x0, + 0x1, 0x1, 0x1, 0x0, -0x1, -0x1, -0x1, - 0x0, - 0x1, - -0x1, -0x1, 0x1, -0x1, @@ -40458,136 +40394,127 @@ mod msm_tests { ), ( array![ - -0x1, - -0x1, - -0x1, -0x1, -0x1, 0x0, - -0x1, - 0x0, - 0x1, - -0x1, 0x0, - -0x1, 0x0, 0x0, 0x0, - -0x1, - 0x1, - 0x1, 0x1, - 0x1, - -0x1, - -0x1, - 0x0, -0x1, - -0x1, - 0x0, 0x0, - 0x1, 0x0, 0x1, 0x1, - 0x1, - 0x0, + -0x1, 0x0, 0x1, 0x1, 0x0, 0x0, + -0x1, + -0x1, + -0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, - 0x1, + -0x1, 0x1, -0x1, - 0x0, 0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x0, 0x0, 0x1, - 0x0, - 0x0, 0x1, -0x1, - 0x1, + 0x0, -0x1, -0x1, 0x0, 0x0, - -0x1, - 0x1, 0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, -0x1, 0x0, - 0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, 0x0, + 0x1, + -0x1, + 0x0, -0x1, -0x1, - ] - .span(), - array![ + 0x0, + 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, - -0x1, - 0x1, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, 0x1, -0x1, - 0x0, - 0x1, + -0x1, + ] + .span(), + array![ -0x1, -0x1, 0x1, + -0x1, 0x1, - 0x1, + 0x0, + 0x0, + -0x1, + -0x1, + 0x0, -0x1, 0x1, + 0x1, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, -0x1, -0x1, -0x1, -0x1, 0x0, + 0x1, + 0x1, -0x1, 0x0, -0x1, 0x1, - 0x1, 0x0, + 0x1, + 0x1, + -0x1, -0x1, -0x1, -0x1, - 0x0, 0x0, -0x1, 0x0, @@ -40596,93 +40523,85 @@ mod msm_tests { -0x1, -0x1, -0x1, - -0x1, - 0x0, 0x0, -0x1, + -0x1, 0x1, 0x0, - 0x0, + -0x1, + 0x1, + 0x1, + 0x1, 0x1, 0x1, 0x0, - 0x0, - -0x1, + 0x1, -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, -0x1, 0x0, + -0x1, 0x0, 0x1, + 0x1, + -0x1, + 0x1, 0x0, + 0x1, + -0x1, -0x1, 0x0, -0x1, + 0x1, ] .span() ), ( array![ - 0x0, - -0x1, -0x1, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, - -0x1, - 0x0, - -0x1, - 0x0, - -0x1, - 0x0, 0x1, - -0x1, 0x1, - 0x0, - -0x1, 0x1, 0x1, + 0x1, + -0x1, 0x0, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, 0x1, 0x1, - 0x0, 0x1, + 0x1, + 0x0, + -0x1, + -0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, 0x1, 0x0, 0x0, - 0x0, - 0x1, 0x1, - 0x1, - -0x1, + 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, -0x1, @@ -40691,109 +40610,125 @@ mod msm_tests { 0x0, -0x1, -0x1, + 0x1, 0x0, - -0x1, + 0x1, 0x0, 0x0, - 0x1, 0x0, 0x1, 0x1, + 0x0, 0x1, - -0x1, 0x1, + 0x0, + -0x1, + -0x1, -0x1, 0x0, -0x1, 0x1, + 0x0, 0x1, 0x0, + 0x0, -0x1, -0x1, - ] - .span(), - array![ - 0x0, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, 0x1, - 0x0, 0x1, -0x1, 0x0, -0x1, 0x0, 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x0, - 0x1, - 0x0, + ] + .span(), + array![ 0x0, -0x1, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, - 0x0, + 0x1, + -0x1, + -0x1, + 0x1, -0x1, 0x1, 0x1, + 0x0, -0x1, + 0x1, -0x1, 0x1, 0x0, + 0x1, + -0x1, + 0x0, -0x1, 0x0, + 0x1, -0x1, 0x1, + 0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, + 0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x1, 0x0, - 0x0, - -0x1, -0x1, + 0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x0, 0x1, - 0x0, + -0x1, + -0x1, -0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, - -0x1, 0x1, + -0x1, 0x1, 0x1, -0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, - 0x1, + -0x1, + -0x1, ] .span() ), @@ -40803,145 +40738,145 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x84c0b703d311b023793d83c4, - limb1: 0x211b926103d1ea0bdfa12c16, - limb2: 0x1941aa5f675adace, + limb0: 0xedc4df8e49aecc17b1c34f28, + limb1: 0x8daab5f4a51c0d4ff6a48009, + limb2: 0xaef09ae21e2fc5ea, limb3: 0x0 }, y: u384 { - limb0: 0x1349c1bc6328e51138085031, - limb1: 0xbf9728ceb0e8a36c00966502, - limb2: 0xf674736768c920f3, + limb0: 0x4b248e7ba097838440ce5cf6, + limb1: 0xcfafa3c6b026a41928d25daf, + limb2: 0x88fd67c556aab72b, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xb6070747995a4771f5793e5d, - limb1: 0xa8d134a51a8e55cc0bfb0d07, - limb2: 0x9cd368b2748f1f8e, + limb0: 0x2f61089d109f736109ab67ea, + limb1: 0x455fa345cc7b3137025cd8fd, + limb2: 0x31a8dc7ffd9330bc, limb3: 0x0 }, y: u384 { - limb0: 0x83a2a0880645026dbda70416, - limb1: 0xd6a893a884dc7e141e9b575e, - limb2: 0xc3e197d4d8cfbd61, + limb0: 0x3d2a210cb3ef6fce0dff6645, + limb1: 0x5034b9ef431a632c4e88443, + limb2: 0x8b1ebc91a2caa889, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xec0e48fcba7ebacbf84e4d6, - limb1: 0x809c5f64c604b733a86151e6, - limb2: 0xfbc44cea555dd924, + limb0: 0x759cb6a47c677f9d868330f1, + limb1: 0x50b105e1f6db6625a89e122a, + limb2: 0xfea63fd038c7985a, limb3: 0x0 }, y: u384 { - limb0: 0x768e9c5d81ee1d4f3d3aa095, - limb1: 0x1b66e5b3b7a3222c5a5025d6, - limb2: 0xdbcd7f48807dfc9b, + limb0: 0xe5d081b8da2f50157db6e4e9, + limb1: 0xd69a1d6e4715c01db89e52e6, + limb2: 0x63b7d142bd5b1c90, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x5326c08e551c29c88fcfaf0b, - limb1: 0x27e4a98a66c5954acef6f6e3, - limb2: 0x2f40f2c7877c5e4f, + limb0: 0x7261bc41da3f043b48589003, + limb1: 0x295904fc98be4ae02fb7d3f7, + limb2: 0xaee11b45ffd2e34f, limb3: 0x0 }, u384 { - limb0: 0xcdd1efcc8de40df4174ae138, - limb1: 0x6c314451bdccb34777910089, - limb2: 0x19bfaf74e5a87098, + limb0: 0x2c704d569736961dd14fee0a, + limb1: 0xdda4957837e72f71964c6b33, + limb2: 0x2313085b86444404, limb3: 0x0 }, u384 { - limb0: 0xd50fcb76a15a8cf0cf4e93ec, - limb1: 0x59287be2c08af7b447c3d508, - limb2: 0xc4f31bd2e41ad1a4, + limb0: 0x64c29f690693030b0440077e, + limb1: 0xe6a2eb99578f95fe06291f8b, + limb2: 0x5aad8c3d64e27b2e, limb3: 0x0 }, u384 { - limb0: 0x61ea77a8ef0c7fa0742211e3, - limb1: 0xa0229ac31e6d4ea3c28c607e, - limb2: 0x9fff7070c2814ba4, + limb0: 0xb0d088ab0b561d378187a5b3, + limb1: 0x2e4338df097ca445cad7ad9e, + limb2: 0xcbadad55daeae7aa, limb3: 0x0 }, u384 { - limb0: 0x546f371a8ddc8942d3e0eb84, - limb1: 0x27e46418cbb0b4aac80a3440, - limb2: 0x36959aa088dd233a, + limb0: 0xbd3866d3c757f5f77f8ebdad, + limb1: 0xc8a97f75cb1c37d7a7c81d58, + limb2: 0xa66e18430b2cd392, limb3: 0x0 }, u384 { - limb0: 0x3383f6c3b813a13693ead1f2, - limb1: 0x110f5a45f6523f69a3936281, - limb2: 0xc14d5b3ff9a4b67f, + limb0: 0xdc3d3f47b573d5b39fae1b17, + limb1: 0x5782b5ed5885376720893a81, + limb2: 0x9160468a80121759, limb3: 0x0 }, u384 { - limb0: 0xc4e7ae2b97da242a599dd298, - limb1: 0xea9be578e8d88b0218d24ed7, - limb2: 0x5214b96c1430cf53, + limb0: 0x6282052ef7313b07be3e0eaf, + limb1: 0x80ec4425feeeb45115aa33fe, + limb2: 0x1d5ef9b69f3e35e7, limb3: 0x0 }, u384 { - limb0: 0x43a1928940b0d538d339d84, - limb1: 0xfffffffffffffffdd2b0475a, - limb2: 0x7fffffffffffffff, + limb0: 0xeaaf77e493652df259a97881, + limb1: 0x868d326, + limb2: 0x8000000000000000, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x714b66b9dd8c04ef301ff0d7, - limb1: 0x8ae85a590845e0d3d528dca1, - limb2: 0xeaa1a769d49c2be9, + limb0: 0xa1e2bf03948261ebf6dbac2d, + limb1: 0x4e440e2b44d355c0d53aa0ca, + limb2: 0xe8ba086ba7bf04c5, limb3: 0x0 }, u384 { - limb0: 0x15fca1758dd52e2626b7b0ca, - limb1: 0x33d5cdca901d4b0c6d8b8f1e, - limb2: 0x2fd1584c50da89c5, + limb0: 0xd41804001a9539610062cbaf, + limb1: 0x61e78a17d85769f82328b04, + limb2: 0x4f5ab12a3fd5564b, limb3: 0x0 }, u384 { - limb0: 0xa724f9873fd7d485eb45d363, - limb1: 0xa7faf9094ecfdb158b0b583a, - limb2: 0x578db4faa5642051, + limb0: 0x6e21e74dcfd4a7bbe5f78297, + limb1: 0xd8c48a16314ef5d24090abc0, + limb2: 0x410189a6adcf3b78, limb3: 0x0 }, u384 { - limb0: 0xe1d39f4c08f8da6bf8405289, - limb1: 0x8f61c5fb7afe02c6fc91a4e9, - limb2: 0xc91c3963f431e5d2, + limb0: 0x777a3909414f7ddf967ce95a, + limb1: 0x314a215ce74e043dbb8344ea, + limb2: 0xf526d7cbf7ff5fdd, limb3: 0x0 }, u384 { - limb0: 0x75c89c942a5cb62fafadcb6c, - limb1: 0x2f6c9bad37e0f8d531abd9b9, - limb2: 0xae681bee7fd43bea, + limb0: 0x9f55e8446a43515794dbffa5, + limb1: 0x15768040cd2d1b30f2665563, + limb2: 0x1e855bf12867e77e, limb3: 0x0 }, u384 { - limb0: 0xc3ec08e3c938af89cf65dd1, - limb1: 0xb6771afeeb49eb9fcb64f8fd, - limb2: 0x3370c0d0acae6dce, + limb0: 0x9af3d320e6f01e4dd8a03517, + limb1: 0xad1b0d0ebd843014cd4988d8, + limb2: 0x41d6ba74a3e092ed, limb3: 0x0 }, u384 { - limb0: 0x2a93537edc553fa5bfba8497, - limb1: 0xaa6078c8121e8a9952baa03a, - limb2: 0xe20760001ad23f6, + limb0: 0x44e817d2b0bddafecce5f306, + limb1: 0xe18ea1048c102d6116061dbb, + limb2: 0xd1929ebb7148990d, limb3: 0x0 }, u384 { - limb0: 0x97918c9865dbb54b9712a9b0, - limb1: 0xcc94f65039dc973484d98142, - limb2: 0xddf83cd4a8c666f6, + limb0: 0x49d462987f1ab668494fc654, + limb1: 0xf1fd7ca3fabe9efa8d89067e, + limb2: 0xbebf1ad18ac18798, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -40949,126 +40884,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x53c5682e0a75de48d3439e17, - limb1: 0x3f9b917af30ef18473900d02, - limb2: 0x54ca03a7c3f74bbf, + limb0: 0xdbc4eb3a6c21e0bc525db739, + limb1: 0x2f279de322fdaac1de4b2532, + limb2: 0xa8ca1f26c5afea89, limb3: 0x0 }, u384 { - limb0: 0xb3a3012a7e626c5567c8283, - limb1: 0x16e1bfd9e39afa72302ba2e1, - limb2: 0x7dc501fea0580bbd, + limb0: 0x1ce05d60a330e6bd4655750, + limb1: 0xef1e81e14444c88a0ca2e7b, + limb2: 0x863391c1f7806c18, limb3: 0x0 }, u384 { - limb0: 0x2d6a4fac8694e9f275404ebf, - limb1: 0x96f589d7956c4c201343fd7b, - limb2: 0xecff0466317fb19a, + limb0: 0x40c2988c0ea9bd9b38657650, + limb1: 0x22a78103e0531bd9c8a80751, + limb2: 0x7645ca7b431f53b7, limb3: 0x0 }, u384 { - limb0: 0x105a726341186b3d81586eb1, - limb1: 0xd360934a1f51fe68e46fde1, - limb2: 0x4fae2d92cd2610e3, + limb0: 0xf91816c4445e6442aeab8819, + limb1: 0xdf5a62c2e76c8021ba97ed5b, + limb2: 0x9170dcd6282b5d3d, limb3: 0x0 }, u384 { - limb0: 0xf9581e4023a53e8bda67cf3, - limb1: 0x1e93c5199f60c33e6e32e04, - limb2: 0x2417c93635d601e, + limb0: 0xe68b06f48e307675b3ad6f76, + limb1: 0xb261e8024ea8457b66ef811e, + limb2: 0x95e5cb903d52d38c, limb3: 0x0 }, u384 { - limb0: 0xfa77555c8421d8901c6c6a9f, - limb1: 0xaeb9b38868c8bb4f117e02ba, - limb2: 0x4860a3c408f9ba34, + limb0: 0x4fa325066d67fc7033daae4e, + limb1: 0xae5b17ae46547d1339627b1a, + limb2: 0x13db0309031ba77, limb3: 0x0 }, u384 { - limb0: 0x2bdfb654495e3c1c10b33c87, - limb1: 0x830c5658e2774e4063342126, - limb2: 0x9616998d71f56791, + limb0: 0xcc39023d7c3bad0b4c1415b4, + limb1: 0xb3122ec8ce2cc66e5cbff5a1, + limb2: 0x2981e7985cff39b, limb3: 0x0 }, u384 { - limb0: 0x4516d2d813930fda7626ed21, - limb1: 0x112ad620d68de649d4a258f6, - limb2: 0x923c4f03b2f3acac, + limb0: 0x97608f90bc702fb82bf0775, + limb1: 0xc51e1e86cf6b1a87c03e5be4, + limb2: 0xcdc128077e6815bb, limb3: 0x0 }, u384 { - limb0: 0xd5a25a2f545452854193d91a, - limb1: 0x5a112ab0e222d87e03541fb0, - limb2: 0x63b178770e447941, + limb0: 0x1292d96933591112a9ead730, + limb1: 0x5a3210cc42fe43f233eaf94a, + limb2: 0xa92847a9fd400ffb, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x190fcf150ed4229050dfacc7, - limb1: 0xcc5a786f39e925cad41e086a, - limb2: 0x6a6b93e4d0453362, + limb0: 0x6d3339190f90ad79c001cc21, + limb1: 0x23dc632ee1c75845d49a658a, + limb2: 0x5d163af196392165, limb3: 0x0 }, u384 { - limb0: 0x99e86a36e0d4430c0f05d957, - limb1: 0x6ad8a089f0cd0d56fed0e9d2, - limb2: 0x4eb96a1635f9c464, + limb0: 0xcca81c00ba1491a902b3996b, + limb1: 0x2ad54c6a6ea63e5c8f61cd21, + limb2: 0x2b7ad827bed55c0d, limb3: 0x0 }, u384 { - limb0: 0x9202d2b2bee6cfab6ee8cf57, - limb1: 0x97dccf4127aefd96cd4f699a, - limb2: 0x64dff2da85bce23b, + limb0: 0x2ed5320aed0962449c495f2, + limb1: 0xed5fc69b5928b8bfc3f4b243, + limb2: 0xc70ac38ec0aaa04d, limb3: 0x0 }, u384 { - limb0: 0x9e14c1ce1c59fde8f9e2497c, - limb1: 0x7694c4396537f444bd245f06, - limb2: 0x6a67392581f974ab, + limb0: 0xe63a4e445daed3101446285a, + limb1: 0xa74af7b597f57370f5d18333, + limb2: 0x9cc9eeff6fbaa3d1, limb3: 0x0 }, u384 { - limb0: 0x4e78e982b65e2977f4785002, - limb1: 0x7fce0f87174418e0c93e8330, - limb2: 0xf4aa1bd1cfa82d2c, + limb0: 0x2f715ddf026c72c71266cd03, + limb1: 0x9c5bfa6719c134f622fee0be, + limb2: 0x250034c25aacaabd, limb3: 0x0 }, u384 { - limb0: 0xfcdc3d6ae7e0a153360267eb, - limb1: 0xa53cb601bdd54c741ace2725, - limb2: 0xbfa2faaf5e2920f8, + limb0: 0xaaccad3420657bded258fdda, + limb1: 0x9481e57d5fec4663dd9369ac, + limb2: 0xde0a2d728f33ff8, limb3: 0x0 }, u384 { - limb0: 0xbdae7c40f4d97f53659f67b, - limb1: 0x38051373f9d3ccf83fac0681, - limb2: 0x2bff7363ffede191, + limb0: 0x59d2dfcc16807add30c6a56a, + limb1: 0x5c30887cbbbf41e555ae1509, + limb2: 0xb0292eec10fb8f3e, limb3: 0x0 }, u384 { - limb0: 0x9ac374bef35eab46d1308622, - limb1: 0xc77f57decce91b44d39e628b, - limb2: 0xc031c5bf1d410ca9, + limb0: 0xa4249a6fe3fe4e36960a7f06, + limb1: 0xb364e8bca863740ad12582d7, + limb2: 0x55bf17abf3b29cac, limb3: 0x0 }, u384 { - limb0: 0xc3ec08e3c938af89cf65dd8, - limb1: 0xb6771afeeb49eb9fcb64f8fd, - limb2: 0x3370c0d0acae6dce, + limb0: 0x9af3d320e6f01e4dd8a0351e, + limb1: 0xad1b0d0ebd843014cd4988d8, + limb2: 0x41d6ba74a3e092ed, limb3: 0x0 }, u384 { - limb0: 0x2a93537edc553fa5bfba8497, - limb1: 0xaa6078c8121e8a9952baa03a, - limb2: 0xe20760001ad23f6, + limb0: 0x44e817d2b0bddafecce5f306, + limb1: 0xe18ea1048c102d6116061dbb, + limb2: 0xd1929ebb7148990d, limb3: 0x0 }, u384 { - limb0: 0x97918c9865dbb54b9712a9b0, - limb1: 0xcc94f65039dc973484d98142, - limb2: 0xddf83cd4a8c666f6, + limb0: 0x49d462987f1ab668494fc654, + limb1: 0xf1fd7ca3fabe9efa8d89067e, + limb2: 0xbebf1ad18ac18798, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -41078,102 +41013,102 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x92555e37859fae34c3e1e4bd, - limb1: 0x28cdfdf92d9466bfc852edc3, - limb2: 0xfd7c47f4ad1d04a2, + limb0: 0xa5c7db8fa12cdf0c8a5100c9, + limb1: 0x88b05052bd2d668caca42751, + limb2: 0x295d5b34feb9ef39, limb3: 0x0 }, u384 { - limb0: 0xc27f9942055c0eca4160d835, - limb1: 0xa2fdc96607b1da2b0b714629, - limb2: 0xd90ad0bd54bed17e, + limb0: 0xe8ee43d95d21c4c618ac3c50, + limb1: 0xd6dc51ebfd494d08dd1d5841, + limb2: 0x58f73b8c795031d1, limb3: 0x0 }, u384 { - limb0: 0x3a04799bd00a9fbc754b2740, - limb1: 0x69206f38508c3036297ffc80, - limb2: 0xb8ccfaaeb835840e, + limb0: 0xb6986de548d1c3da2d4fb285, + limb1: 0xe270bbb9e7bab3054cd7fe81, + limb2: 0xa4f2a7560b1e4968, limb3: 0x0 }, u384 { - limb0: 0x8b23032fb7be34e354d80ae9, - limb1: 0xd52303b38c2315abf96081d2, - limb2: 0xa75b186943461ca, + limb0: 0xdbe9245d1bdeeaee8183117e, + limb1: 0xd2a804c948b2f430d1703e0d, + limb2: 0xddabd6be45a7ab19, limb3: 0x0 }, u384 { - limb0: 0xf426087549f4b01183fe9a51, - limb1: 0x75633a570760c4ebc62f1514, - limb2: 0x58890f2aefe8daea, + limb0: 0xc4ddb5538cca863a9b986794, + limb1: 0x9f98cacba85e627b76b14c73, + limb2: 0xa6bbd60373462d7f, limb3: 0x0 }, u384 { - limb0: 0x867ab33407ac35aaa5247f09, - limb1: 0x34c41ae065ba189c5c76946, - limb2: 0x4d3724db1cc2ae0, + limb0: 0x79cd5dac18965bd1dc4fc56b, + limb1: 0xe7e4d64672a1b46e30763192, + limb2: 0x187cd81459af56da, limb3: 0x0 }, u384 { - limb0: 0xb92bc7ba3041426c1fbf0956, - limb1: 0x5f221581eff811a50c601752, - limb2: 0xb921f8011727231a, + limb0: 0xa33ed9a70251745a49fc88a9, + limb1: 0xaa5b9088c387dd5265096781, + limb2: 0x790ec92017a5efbf, limb3: 0x0 }, u384 { - limb0: 0xea73205600268092b0a99b89, - limb1: 0xfffffffffffffffeb65980fa, - limb2: 0xffffffffffffffff, + limb0: 0xfab45cdaca4a15a1e858a454, + limb1: 0xfffffffffffffffeed84ed34, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x3c278ca9c3e0849e9da609b3, - limb1: 0x6b4aae3a8c069510e08bbaca, - limb2: 0x6abaa12e84a67c39, + limb0: 0x58a72306d36b8d7a1c32759f, + limb1: 0x8074e2756b74f4f0b74c5fcb, + limb2: 0x4f014dc95e44ad57, limb3: 0x0 }, u384 { - limb0: 0xea02c5e1aebd033aad003f84, - limb1: 0xf2c8b6d9d5a2e5c430d32685, - limb2: 0x418cc56ac0730448, + limb0: 0x95f50daf89450e38c24a8029, + limb1: 0x202e87c55da2191a4458c567, + limb2: 0xbea0af64557c9a42, limb3: 0x0 }, u384 { - limb0: 0xf84dae4fa0c49067c59e3aab, - limb1: 0x900462f6ba737806e6c215a7, - limb2: 0x87d9706aab2003b0, + limb0: 0x243d56cd95eef1e0f5b74dbf, + limb1: 0xd21fefbfc678b2c91517e72f, + limb2: 0x45b96d4e9af99a55, limb3: 0x0 }, u384 { - limb0: 0x5dd7c878ec6babd5528c326d, - limb1: 0x52b0387e09f0cd1c3f8d1b1c, - limb2: 0xb00afa96030e5eb8, + limb0: 0xcc1786b51458f7afcac6c6b7, + limb1: 0xe78108ed96aa61b16d897a66, + limb2: 0x411650777fc0c73f, limb3: 0x0 }, u384 { - limb0: 0x3d931a16dbac870abca96103, - limb1: 0xf3998e469f0d789a327b2e5a, - limb2: 0x4a0ff6ad5fbbdcf0, + limb0: 0x64e4a65ba927c345fbe39849, + limb1: 0x80b8d4db2b281079c6663976, + limb2: 0x78b32584d70b0602, limb3: 0x0 }, u384 { - limb0: 0xdcd456c7dace7d7e810ed14a, - limb1: 0xeb933a9051d43c41a83c532, - limb2: 0xceaabd50f54ff25f, + limb0: 0x1d4013e2a5bcfb9980e9abb, + limb1: 0xa2a50bf8982c5ac3e703400, + limb2: 0x267248f142004942, limb3: 0x0 }, u384 { - limb0: 0x46798411c8681e1c905ff448, - limb1: 0xd8c6dabc39f9bb9577a69335, - limb2: 0xff8a61c4edbe509e, + limb0: 0xfc4ce7c54b610b8b0b0c6f7f, + limb1: 0x93ee9dc750636f1417a8c9cb, + limb2: 0x56e1d2b9117720c5, limb3: 0x0 }, u384 { - limb0: 0x664b3c549f931dfd1ad6ef17, - limb1: 0x44df540c23202b74587fa051, - limb2: 0x5a667e819b922236, + limb0: 0x8383989b82a0f1ff167b163, + limb1: 0x3a488f52d35f7b1381d0ad8b, + limb2: 0x3c06d933ab5e1cc7, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -41181,126 +41116,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x848a98e05ebe53b036d0a40, - limb1: 0xc28f2a1e2b1900167687bb0f, - limb2: 0x2cacea184c972af7, + limb0: 0xeca8d5a224e05eb62079cce5, + limb1: 0x4a6e47f621515305ae734489, + limb2: 0x87ce5b14373aadd8, limb3: 0x0 }, u384 { - limb0: 0x8dbb90e39f1b05bc44e7d21e, - limb1: 0x790385c3f20703ea479decda, - limb2: 0xe09054381fc9eb55, + limb0: 0x1ee7484908bcdd3779a5663d, + limb1: 0x75b7fc31b7488a94b850dea0, + limb2: 0x2102e2d3eeae5e9e, limb3: 0x0 }, u384 { - limb0: 0x5fdda55128cc2f0706eda138, - limb1: 0x460eabb1d2bba48aa543ca10, - limb2: 0x376da67faad5b1a8, + limb0: 0x417f8c102820e0173de2f81d, + limb1: 0x2d717b232dd676ba6e4bc1fa, + limb2: 0x4f0b31ba45ce3068, limb3: 0x0 }, u384 { - limb0: 0xd89e248a2fd9f433d9ab3acd, - limb1: 0xe015dc8e3a431f526ba6271e, - limb2: 0x6b2954a8665cb597, + limb0: 0x72d2da8b78cca45b71caea32, + limb1: 0xb8811069b1c51eeba2a1674, + limb2: 0x73f582757d08b90b, limb3: 0x0 }, u384 { - limb0: 0xd3eb09ea9dfd8ba48e474a18, - limb1: 0x32c181f7cb4710b1812d6c84, - limb2: 0xea262cd77ce600e5, + limb0: 0x635218d7381ce34283f345b3, + limb1: 0xfdbd1930262d25065548e605, + limb2: 0x6273f078e99f1eee, limb3: 0x0 }, u384 { - limb0: 0x6e6dacbd20362b348ed4cd2, - limb1: 0xab6a449a5b5ff0ee13babc31, - limb2: 0xb0405d995a417ab0, + limb0: 0x35ec4e729a8bac7fa5c65765, + limb1: 0xf19347de395ba849e550828e, + limb2: 0xa5b40bae1204da3f, limb3: 0x0 }, u384 { - limb0: 0xd483c633b7faeb75ad151730, - limb1: 0xde64f7dab27233c4917c7939, - limb2: 0x8d73a2652e2c5cd6, + limb0: 0xe425084827d20fa9f59f4765, + limb1: 0xc709648a26bd8983f03c2e10, + limb2: 0xb9c09c84814c0ffd, limb3: 0x0 }, u384 { - limb0: 0x540d1177b2cc1771e27251f9, - limb1: 0xae34992ab2ba666d6745017a, - limb2: 0x9e1b71e2cc24a058, + limb0: 0xb954cd3484289680a6040ba9, + limb1: 0xeb00c9dbf0627989dbd42729, + limb2: 0x91e40599f23659fc, limb3: 0x0 }, u384 { - limb0: 0x77f9adafd6b818ede9a5a8e5, - limb1: 0x3bac69272eab8563f636b58e, - limb2: 0x316fe821143bf6a9, + limb0: 0xd8579c95b90365a32d884d66, + limb1: 0x30d08b2f8631b443bba5d2d4, + limb2: 0xdb16d1370e16d059, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xa514d8a45b23a0584f8a4b87, - limb1: 0xef0ac399d42e137623d21b87, - limb2: 0xeb1a6845a08d6591, + limb0: 0x6c91f52fc7f0de58c5613efb, + limb1: 0x83323135f032b29503169e8f, + limb2: 0x2909208193e0bd64, limb3: 0x0 }, u384 { - limb0: 0x6613692bc72b169bbb01c06d, - limb1: 0xa37cfff4d774485d55c60da9, - limb2: 0xcad965eb43251dfe, + limb0: 0x19b35fccc0e3639250099434, + limb1: 0xe145b6658f6eafb7de6d65d5, + limb2: 0x3664cbbe566837ce, limb3: 0x0 }, u384 { - limb0: 0xca1fc42d655ff2d96753a620, - limb1: 0xf01eb4bf192848304f4e9797, - limb2: 0xb6f212eaade019d3, + limb0: 0xfdad5f9f19889d27b803240a, + limb1: 0xbedf8e3e6d4ce37f93a75249, + limb2: 0xe811fd263cd33858, limb3: 0x0 }, u384 { - limb0: 0xcd0e07f83ad23778df7b7dc3, - limb1: 0xae1c39acd19c30d69d677890, - limb2: 0x3b077b489a0b1343, + limb0: 0xed4bd1fa61da534aa7a1ec42, + limb1: 0xd4fc20f48a1da0cab60eb89a, + limb2: 0x169d810ddc8a2016, limb3: 0x0 }, u384 { - limb0: 0x99087c81b074b487d5a1ee3b, - limb1: 0x9bfb9ac82f0131fb92316afd, - limb2: 0x47fc84285e960edf, + limb0: 0x58359a31295b6526a583b96c, + limb1: 0xa53c59c38bba8c6eb12457a4, + limb2: 0xb86b60636c9c453, limb3: 0x0 }, u384 { - limb0: 0x21c0dc69c69fee34d060a97, - limb1: 0xf714cc95de405263a05c7a0c, - limb2: 0x2e849da1604fa449, + limb0: 0x31095f80be719ff51e1d8cad, + limb1: 0x194824fc890c1a7eca29532f, + limb2: 0x52d96be768fb9b24, limb3: 0x0 }, u384 { - limb0: 0x4b2a64f567447ea4452bfb1c, - limb1: 0x402033a39fc4ee32851b2191, - limb2: 0xacd3a6f883429310, + limb0: 0xb231dd1a2400487f181ddad2, + limb1: 0xf3075960c9626b3e1326fefa, + limb2: 0xa1431386fa02aca6, limb3: 0x0 }, u384 { - limb0: 0x9a1c06738b258f87889f246, - limb1: 0xd5b4da9b94eea8c89df89094, - limb2: 0xc2dd6c38a0bacc6c, + limb0: 0x9e6e391fb24e2d2795b979a0, + limb1: 0x18b4c01ef2c46e02531af843, + limb2: 0x1ce315ee869dcf75, limb3: 0x0 }, u384 { - limb0: 0xdcd456c7dace7d7e810ed151, - limb1: 0xeb933a9051d43c41a83c532, - limb2: 0xceaabd50f54ff25f, + limb0: 0x1d4013e2a5bcfb9980e9ac2, + limb1: 0xa2a50bf8982c5ac3e703400, + limb2: 0x267248f142004942, limb3: 0x0 }, u384 { - limb0: 0x46798411c8681e1c905ff448, - limb1: 0xd8c6dabc39f9bb9577a69335, - limb2: 0xff8a61c4edbe509e, + limb0: 0xfc4ce7c54b610b8b0b0c6f7f, + limb1: 0x93ee9dc750636f1417a8c9cb, + limb2: 0x56e1d2b9117720c5, limb3: 0x0 }, u384 { - limb0: 0x664b3c549f931dfd1ad6ef17, - limb1: 0x44df540c23202b74587fa051, - limb2: 0x5a667e819b922236, + limb0: 0x8383989b82a0f1ff167b163, + limb1: 0x3a488f52d35f7b1381d0ad8b, + limb2: 0x3c06d933ab5e1cc7, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -41310,9 +41245,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x471daff16f8c3e67308028e1, - limb1: 0x5d13a503a20c58cd54af3ee9, - limb2: 0x7d9c2a584a5ac3e0, + limb0: 0x791890b4208961e9539b359b, + limb1: 0x888c537e4c73afb17ff852b2, + limb2: 0xc785d2baf9623557, limb3: 0x0 }, u384 { @@ -41325,15 +41260,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x709937daddff04b024a2351a, - limb1: 0xf1bea1b9ea2aa6e51ca373cd, - limb2: 0x92ab1050601109eb, + limb0: 0x1639d8f47288332cb4e121bb, + limb1: 0xe82b26f067ad125097a12b78, + limb2: 0x634eba82b416b502, limb3: 0x0 }, u384 { - limb0: 0x3b3814289afdccdf4b01d52b, - limb1: 0xd6926bf61f6cf3004ba3a112, - limb2: 0x67684a633613074c, + limb0: 0x5b0240be72f90cff6fd15f83, + limb1: 0x69ef56d83ca968a3550514d8, + limb2: 0xcfb0e3afc9a536e9, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -41341,49 +41276,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x196a2d6f43e0f479c7468098, - limb1: 0x973027d8890c7d316bb144d0, - limb2: 0x80314782f4b86337, + limb0: 0xf2edfb7f3686b243f6d6507b, + limb1: 0xa4cee0ab385028f2eaedd715, + limb2: 0xe2a6e75cd67c99f3, limb3: 0x0 }, u384 { - limb0: 0xa5d4b4db4d65c6a72085fd61, - limb1: 0xd327e6b5ab558145315fe6d1, - limb2: 0x14e00915a3fc15b7, + limb0: 0x21066bffa3b8a1cf7fc379f6, + limb1: 0xed57edc96ba1bc2ca6fbe83f, + limb2: 0x511a11bbe8b3c1b2, limb3: 0x0 }, u384 { - limb0: 0x239488140cea944e38f4dd0d, - limb1: 0x6b30430cbc1f190d7647a66c, - limb2: 0xbae1723da02395ec, + limb0: 0x53fd90378b85a234b28eadd8, + limb1: 0x2896705a76690da6c24205c0, + limb2: 0xf59859f344645b24, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x143086fc11f920d5006f82fa, - limb1: 0x9c366c15672a9043c8782a9e, - limb2: 0x2ad7232a0774573, + limb0: 0x9b94eeaf21b9663af227f3bf, + limb1: 0x592e1092d5bb803425683048, + limb2: 0xb7271992ec9ef314, limb3: 0x0 }, u384 { - limb0: 0x9e888d1c3cf09a1d0d0cdbcf, - limb1: 0xde00f3badbfaa5021179677f, - limb2: 0xd3da08b67a853319, + limb0: 0x7d0fc53524cf5b010eb9afaa, + limb1: 0xe58b5fe9a8a1dc77532391ea, + limb2: 0xadd639ce83848061, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x709937daddff04b024a2351a, - limb1: 0xf1bea1b9ea2aa6e51ca373cd, - limb2: 0x92ab1050601109eb, + limb0: 0x1639d8f47288332cb4e121bb, + limb1: 0xe82b26f067ad125097a12b78, + limb2: 0x634eba82b416b502, limb3: 0x0 }, u384 { - limb0: 0x3b3814289afdccdf4b01d52b, - limb1: 0xd6926bf61f6cf3004ba3a112, - limb2: 0x67684a633613074c, + limb0: 0x5b0240be72f90cff6fd15f83, + limb1: 0x69ef56d83ca968a3550514d8, + limb2: 0xcfb0e3afc9a536e9, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -41393,19 +41328,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x4776a2eb9ab939a510a0e5, - limb1: 0x27eb0f5f4677a2567857b1fa, - limb2: 0x65003699dd7d4dab, + limb0: 0xe632a075f19f2d30b7da1807, + limb1: 0x4d440de1765b0061038dd238, + limb2: 0x523243aeacc8872b, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0xbcc2cb47cbf1b5064bcabb1d, - limb1: 0xd0eb9ac442c21d00332ec33e, - limb2: 0x572934169809d0b4, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 2 @@ -41413,15 +41341,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x446768e94161e068d2698bee, - limb1: 0xbf13e6b61416b11b56c3a7bd, - limb2: 0xdbbad1714224521e, + limb0: 0xea92a285c27409d6fc71a4d2, + limb1: 0x3bbf44bc3215ffdbe2126a7f, + limb2: 0x77984b49fd514044, limb3: 0x0 }, y: u384 { - limb0: 0x5cd464c8f0c28697fa43516d, - limb1: 0x7f402c0faf9e2f1fcea70877, - limb2: 0xacbf5698a86544bd, + limb0: 0x6e27a7a7194b453eb9c397b0, + limb1: 0x59a1c6b03e1215d8c2225407, + limb2: 0x42101575a6adc201, limb3: 0x0 } } @@ -41434,113 +41362,113 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xa5ee2673552614f7a498c73, - limb1: 0xed2dcf191df77c7a5b2cd990, - limb2: 0xd137af413b80ca51, + limb0: 0x960be0114f329ce0dae4906, + limb1: 0x2f4331e6256eeeee60a3d450, + limb2: 0xe48b73ba9e980db6, limb3: 0x0 }, y: u384 { - limb0: 0x6d9cafdb3fe56ae13883ff46, - limb1: 0x7b4bb7849f504f27e9267609, - limb2: 0x1323509bc035d319, + limb0: 0xe99824eea7d7b9a24cbba8a2, + limb1: 0x7e64511a05c18a73f40d7455, + limb2: 0x431fb6411e6af274, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xad56d4260bd100279c39cfaa, - limb1: 0xf5394da3876cfaa65542816, - limb2: 0x79ed57d5ad9eb0df, + limb0: 0x4da771219bf9cc54a53ee383, + limb1: 0x13d3dccd39669fdb121fb969, + limb2: 0x92a30b1506429dd3, limb3: 0x0 }, y: u384 { - limb0: 0xb88ff2e26fc48a9fb3c9c8d8, - limb1: 0x782d8a75f69d813a0808b7c9, - limb2: 0x161bd7d2cebd4f30, + limb0: 0x2736857fa15f338af50b1566, + limb1: 0xcea3b19a64dfdcd0bb12d9d2, + limb2: 0x580f21dafccb0d3d, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xe8a2e46f926662664bed49b4, - limb1: 0x8998a4b25b1d17c3043a76cd, - limb2: 0x995f6196f5b52a80, + limb0: 0x989a0e15f9bab11898690976, + limb1: 0xb3f51c29f2ca7187482dd86f, + limb2: 0x63748554575a8ed9, limb3: 0x0 }, y: u384 { - limb0: 0x77fed6e6944568e820e1b4a5, - limb1: 0x9162d35e0587d51ca3be6781, - limb2: 0x5c5298b2e12b7140, + limb0: 0x4c4c12ad3c94d86f243239a9, + limb1: 0xc8edeaf7a8bd2126242a0c1, + limb2: 0xd76809fe462e8b8f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1412dd48a1c8d1a246865aff, - limb1: 0x4bd24beaa125585a780fc8cf, - limb2: 0x70c5d4ff001ba424, + limb0: 0xcc6eba76c9bfb879cc144646, + limb1: 0xdc2a515281193448dad25283, + limb2: 0xac73a0c2393b1f7d, limb3: 0x0 }, y: u384 { - limb0: 0xeaf5f9a203bd60b7755541a7, - limb1: 0xa5b1c8028e28b8a98cb5358b, - limb2: 0x6d7d494c05b5a13f, + limb0: 0xefd0f113ac799b991fd2fb9f, + limb1: 0x89976e77aab979028f390392, + limb2: 0xd1a0a9841d7fe980, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xac1c51d813c7526e8b5a370e, - limb1: 0x8d4b4bdfd99f72763e04172b, - limb2: 0xd10473ceeba0caa9, + limb0: 0x5fd97afe7cb64bed817dc8a7, + limb1: 0x34e60f12d9ce26b6459d1f13, + limb2: 0x5f2161d23ad920ab, limb3: 0x0 }, y: u384 { - limb0: 0x120dea895d349e0b9a162b97, - limb1: 0x3cbab722531158d49bc8d418, - limb2: 0xf3d5d658de19c11f, + limb0: 0xf6ac8163ae2813db07850a3a, + limb1: 0x3434a8fc352c88f416560877, + limb2: 0x6c2d4a5918ac9128, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x384ea2516fb26ec4f4b7aa1c, - limb1: 0x810289d4fc4e898ff3ea059a, - limb2: 0x87af5ce1724829ba, + limb0: 0x5c0ebb551aa7a58b18206e6b, + limb1: 0x20779cc65ae0eca2b0a99985, + limb2: 0x25683416a9678f50, limb3: 0x0 }, y: u384 { - limb0: 0x672fc4e0d6f23dfd9db390a5, - limb1: 0xb390260065e7f2d9d26c6054, - limb2: 0x5e4573bcc60e2498, + limb0: 0xd2778f92fb18b8a7fca4920b, + limb1: 0xf32975805a4d42070c49bd34, + limb2: 0x241870038da58526, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6d3dfb8b10f83027946634b2, - limb1: 0xddca039b9b2c4390accb35ff, - limb2: 0xcc81128fd1b357f7, + limb0: 0xff08ed6172e97143996a4e2f, + limb1: 0x1758cf8c6052b290ed10d67d, + limb2: 0x34c63713119cacde, limb3: 0x0 }, y: u384 { - limb0: 0xa10e6c98a6ba6c7bd7f42cd5, - limb1: 0x79af8350476ee07a3914d71c, - limb2: 0x802d32cde40d8746, + limb0: 0x42e86e0b0f2767fc644abf43, + limb1: 0xa3abc3c5e8306b256ecdc16d, + limb2: 0x5d7863b8985efe93, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x9691d698af90a1f5b7eeb76c, - limb1: 0x853dfa813242f372fc3f3585, - limb2: 0x9b1980326d3acea5, + limb0: 0x3ce85971b20a244fb51188ac, + limb1: 0xd4bd900f3c5f12974e56e283, + limb2: 0x8c6884ecf2c94ef, limb3: 0x0 }, y: u384 { - limb0: 0xd72a24c55e9e2f91eed2d3b9, - limb1: 0xb0a1dc51c8913bfadce02cba, - limb2: 0x783fc6b08a5e3f1c, + limb0: 0x9277691c493d5095597aa38a, + limb1: 0xc766c9f23ad614ebb76f7c17, + limb2: 0xd8e5ce33c491cca5, limb3: 0x0 } }, @@ -41548,28 +41476,28 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x74f8c57b24c582caeab3c4d8d4e4004b, high: 0x7a658abe1188afa1f660ffd5119fc1c4 + low: 0x759966c1a3c6a5cf870e52f7e56a05a9, high: 0xc2bef2d84451122542663bd544d7a17b }, u256 { - low: 0x68f49b51f3fa861390ed41f464aba3f6, high: 0x7b777bf243f98cbd179d221d8e5f37fa + low: 0x6c74c3e9234aeef46d994c18564763bb, high: 0x94f2e014268814232d35671879729c1e }, u256 { - low: 0x4bf41e101c622f82d0813d923aca43f2, high: 0x181a218ecfd645605c05c1f3241d3e27 + low: 0xc6d824f89bd62c6963241a33fdd377fa, high: 0x20c7ba446634f8478523aca96f534062 }, u256 { - low: 0xe8472a7dd332379a88f58c1237d7b90, high: 0x962488052305e6d3aa61353ad2b00078 + low: 0x41d9d487aaa6868cbc0e1f684bdd9225, high: 0x4a295bd7873538b656489bcba89cfc3a }, u256 { - low: 0x876daaa01ce5fc632d116fe8f08963c, high: 0xb325442c8eeb3fd86783b0c3dcae667e + low: 0x38a5b16884c8674ba08250cc1913c9c4, high: 0x13c54355477206f32c36458acc760806 }, u256 { - low: 0xb6d066f27d8745669a0a80bec15dfcfc, high: 0x79140a61ee65afeb1b674518b0bf7f14 + low: 0x3c4b60ee31b73971a35adbcf2a403062, high: 0xf89164e40359ef9ee5298ed100bfc38f }, u256 { - low: 0xc7afae8fdfecb2ae58e760bf8f3e64f4, high: 0xaf8c96a918f7e499df61c53457d1d37c + low: 0xc3dff9c6830df8e2a728eebcf7624fd3, high: 0x37034cd2cbc69cd77ae8058f5b0e03e2 }, u256 { - low: 0x7f6bf51b3a05c0b73ddf55b2015128db, high: 0x4642cddb4fbe2aaefbf70946d6ada066 + low: 0x85c1a4d389dc09d4a9794661a4caaf63, high: 0x43657246b4b1565f96b33de13800877c }, ] .span(); @@ -41577,281 +41505,270 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x1, - 0x0, -0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, - 0x1, + -0x1, 0x0, 0x1, 0x0, 0x1, -0x1, -0x1, - 0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, + 0x0, 0x1, + 0x0, + -0x1, 0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, + -0x1, 0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x1, 0x1, + -0x1, 0x0, -0x1, + -0x1, 0x0, - 0x1, + -0x1, -0x1, -0x1, 0x0, 0x0, -0x1, + -0x1, + -0x1, + 0x0, 0x0, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, -0x1, - 0x0, + -0x1, 0x1, + 0x0, + 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, - -0x1, + 0x1, -0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x1, -0x1, 0x0, 0x0, 0x1, - ] - .span(), - array![ + 0x0, + 0x1, + 0x0, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, - -0x1, + ] + .span(), + array![ 0x1, 0x1, 0x0, -0x1, - 0x1, - -0x1, - 0x1, 0x0, - 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x1, 0x0, 0x1, 0x0, - -0x1, - -0x1, 0x1, - 0x0, 0x1, -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x0, -0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, 0x1, 0x0, - 0x1, 0x0, 0x0, - -0x1, 0x1, + 0x0, + 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x0, + -0x1, 0x1, 0x0, 0x1, -0x1, + 0x1, -0x1, - 0x0, 0x1, 0x1, + 0x1, + 0x0, + -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, - -0x1, 0x0, 0x0, 0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x0, + 0x1, -0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x1, + -0x1, + -0x1, ] .span() ), ( array![ -0x1, - -0x1, - 0x1, + 0x0, -0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, - 0x1, - 0x1, - -0x1, - -0x1, + 0x0, -0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x0, -0x1, 0x0, + 0x1, -0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, + -0x1, 0x1, 0x0, 0x0, 0x0, + -0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, - 0x1, + 0x0, + 0x0, + 0x0, -0x1, - 0x1, + 0x0, 0x1, 0x1, -0x1, - 0x0, + -0x1, 0x1, -0x1, -0x1, + -0x1, + -0x1, 0x1, -0x1, -0x1, 0x0, 0x0, -0x1, - 0x1, - -0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, 0x1, + 0x0, + -0x1, -0x1, - 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x1, - 0x0, -0x1, 0x1, 0x0, - 0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x1, - -0x1, 0x1, - -0x1, - -0x1, + 0x0, 0x0, 0x1, ] .span(), array![ 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x0, - 0x1, - 0x1, - -0x1, - 0x1, 0x0, - 0x1, -0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x0, 0x1, 0x0, @@ -41859,28 +41776,32 @@ mod msm_tests { 0x0, 0x0, 0x1, - -0x1, + 0x0, -0x1, -0x1, 0x0, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, -0x1, 0x0, - 0x1, 0x0, 0x1, + 0x0, -0x1, 0x1, -0x1, - -0x1, + 0x0, 0x1, + -0x1, + 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, -0x1, 0x1, @@ -41889,28 +41810,36 @@ mod msm_tests { 0x1, 0x1, 0x0, - 0x1, - -0x1, + 0x0, + 0x0, 0x1, 0x1, + -0x1, 0x0, 0x1, -0x1, -0x1, 0x1, + 0x0, + 0x0, 0x1, - 0x1, + 0x0, -0x1, 0x1, 0x1, + 0x0, + -0x1, + 0x0, + 0x0, + -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, 0x0, 0x0, - 0x1, - 0x0, + -0x1, 0x1, ] .span() @@ -41918,336 +41847,339 @@ mod msm_tests { ( array![ -0x1, + 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, + 0x1, -0x1, 0x0, 0x0, + 0x0, 0x1, 0x0, -0x1, + 0x1, + -0x1, + 0x0, -0x1, -0x1, -0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x1, - -0x1, 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, -0x1, - 0x1, + 0x0, 0x1, -0x1, 0x0, + 0x0, -0x1, -0x1, + 0x0, 0x1, - -0x1, - 0x1, - 0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, + 0x1, -0x1, 0x1, 0x0, - 0x1, 0x0, - -0x1, + 0x0, 0x1, + -0x1, + 0x0, 0x1, -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x1, 0x0, - -0x1, + 0x1, 0x0, 0x1, -0x1, 0x1, -0x1, -0x1, - 0x0, - 0x1, - -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x1, 0x1, + -0x1, + -0x1, ] .span(), array![ - 0x1, - 0x1, -0x1, - 0x1, - 0x1, 0x0, -0x1, - -0x1, 0x0, 0x1, -0x1, - 0x1, - -0x1, - -0x1, - 0x0, 0x0, - 0x1, -0x1, + 0x0, 0x1, 0x1, 0x1, - 0x1, + 0x0, 0x1, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, -0x1, - 0x0, - -0x1, - 0x0, - 0x0, 0x1, -0x1, + 0x1, + 0x1, 0x0, - -0x1, 0x1, 0x0, 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x1, 0x1, + 0x0, + 0x1, + 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, -0x1, + 0x1, + -0x1, + 0x1, -0x1, + 0x1, -0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, -0x1, + 0x0, 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, 0x0, 0x1, - 0x1, + -0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, - -0x1, 0x1, 0x0, + -0x1, 0x0, -0x1, + 0x0, + 0x0, + 0x1, + 0x0, -0x1, ] .span() ), ( array![ - -0x1, - 0x1, 0x0, + 0x1, + 0x1, -0x1, -0x1, - -0x1, - 0x1, + 0x0, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, 0x1, - 0x0, -0x1, 0x1, - 0x0, + -0x1, + 0x1, + -0x1, 0x0, -0x1, + 0x1, + 0x1, 0x0, -0x1, -0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x0, - 0x0, - 0x1, -0x1, -0x1, -0x1, 0x0, - 0x1, 0x0, 0x0, - 0x1, - -0x1, 0x0, + 0x1, 0x0, - -0x1, 0x0, 0x0, - 0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, 0x0, 0x0, - 0x1, - 0x1, - -0x1, - 0x1, + 0x0, 0x0, -0x1, -0x1, + -0x1, 0x1, 0x0, -0x1, + -0x1, 0x1, 0x0, 0x1, - 0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x1, + 0x1, + 0x1, + -0x1, + 0x0, -0x1, -0x1, + 0x0, -0x1, + 0x0, 0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x1, + 0x1, ] .span(), array![ - 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x1, + -0x1, 0x0, + 0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, - 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x1, 0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, 0x1, -0x1, -0x1, 0x1, - 0x0, + 0x1, 0x0, 0x1, -0x1, - 0x0, + 0x1, + 0x1, 0x1, -0x1, 0x0, - -0x1, + 0x1, 0x0, 0x0, - 0x1, -0x1, - 0x0, + 0x1, -0x1, - 0x0, -0x1, -0x1, - 0x0, 0x1, - -0x1, 0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, 0x0, - -0x1, 0x1, -0x1, - 0x0, - -0x1, -0x1, -0x1, + 0x0, -0x1, 0x0, + 0x0, + -0x1, 0x1, 0x1, 0x0, - -0x1, 0x0, -0x1, + 0x0, 0x1, + -0x1, + -0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x0, - -0x1, + 0x1, 0x1, ] .span() @@ -42256,25 +42188,23 @@ mod msm_tests { array![ -0x1, -0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x0, - 0x0, -0x1, - 0x1, 0x0, -0x1, 0x0, - -0x1, 0x0, + 0x0, + 0x1, + 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, 0x1, 0x1, -0x1, - -0x1, 0x1, 0x1, -0x1, @@ -42282,137 +42212,139 @@ mod msm_tests { 0x1, 0x0, 0x0, - 0x0, + 0x1, + 0x1, 0x1, -0x1, + -0x1, + 0x1, + 0x0, + 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, - -0x1, - -0x1, + 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x1, + -0x1, + 0x0, + 0x0, 0x1, 0x1, + -0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, -0x1, + -0x1, 0x0, 0x0, -0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, - 0x0, 0x1, - 0x0, - 0x0, 0x1, - 0x0, -0x1, 0x0, + 0x0, -0x1, + 0x0, -0x1, -0x1, -0x1, -0x1, - -0x1, - 0x0, - -0x1, - 0x0, - 0x1, - 0x1, - -0x1, 0x1, -0x1, 0x1, - 0x0, - 0x0, - 0x1, 0x1, ] .span(), array![ 0x0, - 0x1, - 0x0, - 0x0, - 0x0, - -0x1, -0x1, -0x1, -0x1, - 0x1, + 0x0, 0x0, 0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, -0x1, - 0x1, + 0x0, 0x1, 0x0, 0x1, - -0x1, - -0x1, 0x0, 0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, - 0x1, - 0x0, -0x1, - 0x1, + 0x0, -0x1, - 0x1, 0x0, - 0x1, 0x0, -0x1, - 0x0, + -0x1, 0x1, 0x0, - 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, + 0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x0, 0x1, - 0x0, 0x1, + -0x1, + -0x1, 0x1, 0x1, 0x1, + -0x1, 0x1, + -0x1, 0x0, 0x0, 0x0, - 0x1, - 0x0, - 0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, + -0x1, + 0x0, + 0x0, + -0x1, + -0x1, -0x1, 0x1, -0x1, 0x1, + 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x1, @@ -42423,254 +42355,254 @@ mod msm_tests { ), ( array![ - 0x1, - 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, - -0x1, -0x1, -0x1, 0x1, -0x1, - -0x1, - -0x1, 0x1, + 0x0, 0x1, + -0x1, 0x1, -0x1, 0x1, 0x1, + -0x1, 0x0, 0x0, 0x0, 0x1, 0x0, - 0x1, - -0x1, 0x0, - -0x1, 0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, - 0x1, + 0x0, -0x1, 0x0, - 0x1, - 0x1, 0x0, - 0x1, -0x1, + 0x1, 0x0, -0x1, - -0x1, + 0x1, + 0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, + -0x1, 0x1, + 0x0, -0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, -0x1, 0x1, 0x1, 0x0, 0x1, - 0x0, + 0x1, -0x1, + -0x1, + 0x0, 0x0, 0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x1, - -0x1, 0x1, -0x1, 0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x1, -0x1, -0x1, + 0x0, + -0x1, + 0x0, + -0x1, + 0x1, + 0x1, ] .span(), array![ - 0x0, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, 0x1, -0x1, - 0x0, -0x1, + 0x0, 0x1, -0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, 0x1, + 0x0, 0x1, -0x1, - 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x0, + -0x1, 0x0, + 0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, - -0x1, - 0x0, 0x1, + 0x0, -0x1, -0x1, - 0x0, - 0x0, 0x1, 0x0, 0x0, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + -0x1, -0x1, - 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x0, + 0x0, 0x0, 0x1, 0x1, + 0x1, + -0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, 0x1, - 0x0, 0x1, 0x0, 0x0, - 0x1, -0x1, - -0x1, - 0x0, 0x1, 0x0, -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x1, + 0x0, + -0x1, 0x1, 0x1, 0x0, 0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, ] .span() ), ( array![ - -0x1, 0x0, - 0x0, - 0x1, - 0x1, - -0x1, -0x1, + 0x0, -0x1, 0x0, 0x0, 0x0, + -0x1, + -0x1, 0x0, + -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, 0x0, - -0x1, + 0x0, 0x1, 0x0, - -0x1, 0x1, - -0x1, + 0x0, + 0x0, + 0x0, -0x1, -0x1, 0x1, + -0x1, 0x0, 0x1, + 0x0, 0x1, 0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, 0x1, + -0x1, 0x0, -0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x0, + 0x1, 0x0, -0x1, + -0x1, 0x0, 0x1, -0x1, 0x1, 0x1, 0x0, + -0x1, 0x1, 0x1, - 0x0, - -0x1, 0x1, 0x0, - 0x1, - -0x1, - -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, - 0x0, + 0x1, 0x0, 0x1, 0x0, + 0x0, 0x1, -0x1, - 0x1, 0x0, 0x1, 0x1, @@ -42680,187 +42612,186 @@ mod msm_tests { .span(), array![ -0x1, - 0x1, - 0x1, - 0x1, - -0x1, - 0x0, 0x0, - 0x1, 0x0, 0x0, - 0x1, -0x1, - 0x0, 0x1, 0x0, + -0x1, + -0x1, + -0x1, + 0x1, 0x0, 0x1, + 0x1, 0x0, -0x1, - 0x1, + -0x1, 0x0, 0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - -0x1, - 0x0, -0x1, 0x0, + 0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, - 0x0, - 0x1, -0x1, - 0x0, - 0x1, - 0x0, -0x1, -0x1, + -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, 0x1, 0x0, - -0x1, 0x0, 0x0, 0x0, + 0x1, + 0x1, 0x0, -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, - 0x1, 0x0, + 0x1, -0x1, -0x1, 0x1, + 0x1, + 0x0, 0x0, - -0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x0, -0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x0, 0x1, -0x1, + 0x1, -0x1, ] .span() ), ( array![ - -0x1, - 0x1, - -0x1, - 0x0, 0x0, + 0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x1, -0x1, - -0x1, - -0x1, 0x1, 0x1, - 0x0, - -0x1, -0x1, - 0x0, - 0x0, 0x1, -0x1, -0x1, - 0x0, - -0x1, -0x1, 0x0, 0x1, 0x0, 0x1, + -0x1, 0x0, + -0x1, 0x1, 0x1, + 0x1, + 0x0, 0x0, + -0x1, + 0x1, 0x1, 0x1, -0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, 0x0, - 0x1, 0x0, - 0x1, 0x0, 0x0, - 0x1, - -0x1, - 0x1, 0x0, - -0x1, 0x1, 0x1, 0x1, - 0x0, - -0x1, 0x1, 0x1, + -0x1, 0x1, + 0x0, 0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x0, -0x1, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, + 0x0, + 0x1, -0x1, -0x1, 0x0, -0x1, - 0x1, - 0x1, 0x0, + 0x1, -0x1, 0x1, - 0x0, + 0x1, + -0x1, + -0x1, 0x1, ] .span(), array![ - 0x0, -0x1, 0x1, 0x0, - -0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x0, + 0x1, + 0x0, 0x1, + 0x0, 0x1, + -0x1, 0x0, 0x1, 0x0, @@ -42868,68 +42799,67 @@ mod msm_tests { 0x1, -0x1, 0x0, - -0x1, 0x1, 0x1, 0x1, 0x0, - -0x1, - 0x0, 0x0, -0x1, - 0x1, 0x0, 0x0, 0x0, 0x1, + -0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, - 0x0, 0x1, - 0x0, + -0x1, + 0x1, + 0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, - 0x0, -0x1, - 0x0, -0x1, 0x1, - 0x0, -0x1, 0x0, - -0x1, - -0x1, 0x1, - -0x1, + 0x1, 0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, -0x1, + 0x0, 0x1, 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x0, -0x1, 0x1, - 0x0, + -0x1, + 0x1, + -0x1, 0x1, -0x1, + 0x0, + -0x1, + 0x1, -0x1, 0x0, 0x1, 0x0, 0x1, + -0x1, + -0x1, + 0x1, 0x1, ] .span() @@ -42940,157 +42870,154 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x745fee59461d9bfb6e067f, - limb1: 0xecbf80e12900059ea63406f3, - limb2: 0x1b12c8ad4a87cd0a, + limb0: 0x95dba705d2197069b856eb30, + limb1: 0x262212a1ebca53e406765807, + limb2: 0xd26864dac91828e5, limb3: 0x0 }, y: u384 { - limb0: 0xc806946da7089b020a67c0e8, - limb1: 0xbad36936c3295948077ba49b, - limb2: 0x28bd268913859d6d, + limb0: 0x790c4736de939e517d80fd28, + limb1: 0x7fb9ae39e35d5271c99c25de, + limb2: 0x6bd0f49ba159c5eb, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x45ad5170d41e82792e127e7d, - limb1: 0xf7d8c717abcd7c80553efe04, - limb2: 0xa80ca94e54ecb4ad, + limb0: 0x619d145c64a4f4001f37404b, + limb1: 0x63899d929e2401194ad2434, + limb2: 0x28d87f31e4d9f08, limb3: 0x0 }, y: u384 { - limb0: 0x98621c6be13a4dddf5e20db9, - limb1: 0x19b6ef18b8bff23dc6be585d, - limb2: 0xaa68a25e59c89dfb, + limb0: 0x5ea4533409c85d15a14659b9, + limb1: 0x5c1f24cc1beaa43f3a13d5f5, + limb2: 0xf7f90f089642f66e, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x7fa3244a85bad25642fb4d39, - limb1: 0x9aed7b7d0723f24c6b824e85, - limb2: 0xf8ba1db35764fbf4, + limb0: 0xe783cd6cbe770365efd5d9aa, + limb1: 0x1759418e70d5b133391bb084, + limb2: 0xd44aeb46a45d3fbf, limb3: 0x0 }, y: u384 { - limb0: 0xa4f2aeb685da6cc17efe03d5, - limb1: 0xcfe8842ae6a1d131bb8a23d5, - limb2: 0xa06e9017f92c0b99, + limb0: 0x3d148594ed7ad310f6291d20, + limb1: 0xec9db487f40d6ffbe1c730d8, + limb2: 0xa3a524d76aa18131, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x59bf8984dfac7b08721a2b62, - limb1: 0x81e6137fcd0154905c3cfe62, - limb2: 0xf34d576ade0660c8, + limb0: 0x13793c7270df5dad183e4c51, + limb1: 0x4603e502e9f6f0595c799aad, + limb2: 0x7332075f61d65267, limb3: 0x0 }, u384 { - limb0: 0x1f89346dbafd65f41a3f4464, - limb1: 0x6d855b2fdae4417796d93934, - limb2: 0xe72960f8cf917ca0, + limb0: 0x1a955cfc8b2b8cf8e29eb20a, + limb1: 0x6f3cf7a2efd48dd965190ee7, + limb2: 0x1d82e5a263ae8470, limb3: 0x0 }, u384 { - limb0: 0x3e6d777e9030489ea5f4b1b0, - limb1: 0xe103ada1974edcd21ce636d, - limb2: 0x57237fe745473243, + limb0: 0x50a6708df7501a9e7a76db8, + limb1: 0xe3134bbd1c28d2f930cddbc4, + limb2: 0x8f4fe980aeef0d4f, limb3: 0x0 }, u384 { - limb0: 0x8cfe4ced463f79f730201f95, - limb1: 0x6d2e62af67cdf95c34a9c6c5, - limb2: 0x7dbb7b219d72b0c8, + limb0: 0xb4baa4e82e580487fa1a2cb8, + limb1: 0x732c32a1548ac81961e0f4de, + limb2: 0x2b9a218851aec6ae, limb3: 0x0 }, u384 { - limb0: 0xcbdaf0dc78d1f23ade79c57, - limb1: 0x33b2f94cd11dd3ac67662282, - limb2: 0x31cd96376859efe3, + limb0: 0x1b735caafd427762bba6bda0, + limb1: 0xfac9ff7c628df817a83b8d33, + limb2: 0xb638ceaa5b31973d, limb3: 0x0 }, u384 { - limb0: 0xd98f9602060ea499e4ae7ecf, - limb1: 0x6470b7c9d114e381a8a3ab57, - limb2: 0x8dd0097dcb3d948, + limb0: 0x5876f86564517f5ed8207194, + limb1: 0xed5762977be3e877de19886e, + limb2: 0x5f74c3b5fa924b50, limb3: 0x0 }, u384 { - limb0: 0xcffaf0f2b9900f2f1ac4cdd7, - limb1: 0xe8ffe49747240574276d817c, - limb2: 0xaeeef73f9763d62a, + limb0: 0xd7c16e9bccacc53823fd49e, + limb1: 0x7e7a3b8433f8be92210c1002, + limb2: 0x946bebbac835ce1c, limb3: 0x0 }, u384 { - limb0: 0x7e0915d97b1337b7b2a880d7, - limb1: 0x26375bad0b9dcb09424397a9, - limb2: 0x2bb569ccbf4dde22, + limb0: 0x5fe013eddd3d06c4d8bed5f, + limb1: 0x6dbe04bb432d729281533ee0, + limb2: 0xbbe7de44ead3c865, limb3: 0x0 }, u384 { - limb0: 0x33c192e618c2b20b9a82aaee, - limb1: 0xffffffffffffffffde27d847, - limb2: 0x7fffffffffffffff, - limb3: 0x0 + limb0: 0x3875cb15531fa3c18d240fc2, limb1: 0x250e2062, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xbe5e78c1541869fde2858be5, - limb1: 0x83114965431716d3683df27b, - limb2: 0xb813559961251c0c, + limb0: 0x9e8480214c1c53c75bacde5, + limb1: 0x840881e5ba16ef37390a32b3, + limb2: 0xd2b9a316d9280100, limb3: 0x0 }, u384 { - limb0: 0xb88947a4cd5e2165608e9925, - limb1: 0xfcfe208ec39b864948486a74, - limb2: 0xe09a0c72cf31edbc, + limb0: 0xcdf35c51bbb7deee4cddbf8, + limb1: 0x8a7e630531019f7727069cbd, + limb2: 0xfe2e399666c58801, limb3: 0x0 }, u384 { - limb0: 0xb705199d753a428e595eb5a0, - limb1: 0x52c3bd5f0d860e25e1ffe052, - limb2: 0x3aae8801e5fd8471, + limb0: 0x216a1a10264955df4a333e07, + limb1: 0x8792fecde41e0a4af71a91dd, + limb2: 0xe13ea3dcf92e089b, limb3: 0x0 }, u384 { - limb0: 0x5f67b655be1344a552351c2e, - limb1: 0x2cf9b3d949594e14f5cd6c34, - limb2: 0xdd42ce6f53433b61, + limb0: 0x693f6bf1037a0cc7c1972f0b, + limb1: 0xecdaad93cd9b0974a09070f8, + limb2: 0xcf27b7460daa003c, limb3: 0x0 }, u384 { - limb0: 0x5ba5dfb5140289966b168989, - limb1: 0x2debb94b3b5a0c200783a34, - limb2: 0x5d5dd7f02f3d686f, + limb0: 0x66a7ce118ddc8847ef886333, + limb1: 0x2a157af33626fcbcbecc966c, + limb2: 0x176179ec06d583cc, limb3: 0x0 }, u384 { - limb0: 0x2d32a6586c685ced5e4891ff, - limb1: 0x243b5688ba7014552483e0d9, - limb2: 0xaf5a5d7c874f3dce, + limb0: 0xda5452a6f9edd65efb203aec, + limb1: 0xa6cda436bbb04503720813bd, + limb2: 0xd1988c49be90b578, limb3: 0x0 }, u384 { - limb0: 0xb6cb4e96d3090f2776327e0c, - limb1: 0xa217b1b1869353b5ceb4827e, - limb2: 0xc29f7206b9aa99f0, + limb0: 0x77fbb43b7de548490026d72f, + limb1: 0x4d842ea22b176abf143a65ba, + limb2: 0xac8f14c4d4fc618f, limb3: 0x0 }, u384 { - limb0: 0x99bf9552e1c909ddf9821751, - limb1: 0x7aaa464359ced0dea20e0972, - limb2: 0x591ee377f529758f, + limb0: 0x5b9a6ae5b2c0aea2bf0d7f72, + limb1: 0xa5ce9f505676e849fedcd666, + limb2: 0x17cc1637efe2307d, limb3: 0x0 }, u384 { - limb0: 0x62e5617eed64b98d8f341483, - limb1: 0xcffe56bce0f20b1542082f7e, - limb2: 0xcf54963339b0ce1d, + limb0: 0xb639e423fd2da8d048247789, + limb1: 0xc53365b9701b9f0132177db1, + limb2: 0xe46aa0f43c6d8b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43098,138 +43025,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xb737341574922a9dce15d3d8, - limb1: 0x65fe7ed208e53aa0b8804626, - limb2: 0xe226f3211297c0a4, + limb0: 0x5a4457a51cdd7d727da37902, + limb1: 0xd47d2cce669b7b30bd424cec, + limb2: 0x4d37f58d96033f37, limb3: 0x0 }, u384 { - limb0: 0x7761025394e75955c438c9ed, - limb1: 0x7ba6d01b381d98a5e5f3c7a, - limb2: 0xdb43703b79a11bc7, + limb0: 0x249c4dd0b57c18061779c905, + limb1: 0x16514e62c983bdba588753d, + limb2: 0x96f5c50702557aec, limb3: 0x0 }, u384 { - limb0: 0x8f6e0c2b41cfcd216eefb54d, - limb1: 0x56b2ddb81a1e69a5d58369a3, - limb2: 0x43f3236e3ef18102, + limb0: 0x8ba11eb79977630decdf88a8, + limb1: 0x9a47f1feccd7e478d99eac36, + limb2: 0x51b61c148fcafdc9, limb3: 0x0 }, u384 { - limb0: 0x4645facf54b08b5c5ccd0e24, - limb1: 0x61a5f6569066f3a8ccfe1d17, - limb2: 0x11792a6dc8273872, + limb0: 0x4df6639fb127bfd182d353ef, + limb1: 0x4b06dcd2eab7f6c55d8f088, + limb2: 0xbf24496bac6de390, limb3: 0x0 }, u384 { - limb0: 0x483dadf76aa2b7676178dbf, - limb1: 0x4e0d6edc0d8d679f16d388fc, - limb2: 0xb718089979bd06c9, + limb0: 0x41a83b5452affaa5db47f92, + limb1: 0x84ca989c0ccc6203d291a0b2, + limb2: 0x6eab1bb45fb9d2f7, limb3: 0x0 }, u384 { - limb0: 0x1225e29aabb223d1dd590986, - limb1: 0xd582dc1927b3c2c957c84ad9, - limb2: 0x1aac027f74cc0915, + limb0: 0xf34efb3fbae2fbadf2b66511, + limb1: 0x4b7eddc39c0622c664e56656, + limb2: 0x4baa46c800a2672, limb3: 0x0 }, u384 { - limb0: 0xfd9f5721b670453cdd5cd9cd, - limb1: 0xd6c275e294dc86cf3a0e904e, - limb2: 0x1144ba030d47de04, + limb0: 0x121fa638bce6ab155823d72b, + limb1: 0x69fdab855c9cfee17294c4a4, + limb2: 0x812258a4309bbd8e, limb3: 0x0 }, u384 { - limb0: 0x7f2e0357fd406f7eb3ba0e3b, - limb1: 0x6a517c39e42375746ebd84b9, - limb2: 0xfba36716ac6c2021, + limb0: 0x9c97c3830cae9ddd02176787, + limb1: 0x9c375f777cc7c142024c47e6, + limb2: 0xca0e39a362acd42b, limb3: 0x0 }, u384 { - limb0: 0x9ce667fe3338f27110ab3558, - limb1: 0xcf74b2c8d878309b6bff5079, - limb2: 0xc679e1387eefe126, + limb0: 0x1f446482f6693e68873640b7, + limb1: 0x7a3de3848b07587f3cf70c01, + limb2: 0xafc231426d4cfa4b, limb3: 0x0 }, u384 { - limb0: 0x4c969d07f73d8fa1d3ef33c2, - limb1: 0x6b0740837ff9e05b79955a87, - limb2: 0x27db613a897320c6, + limb0: 0x3f951b8048ad8e1c2407b4a0, + limb1: 0x5a3dc83c38127eb17790429b, + limb2: 0x39b6a23570298105, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x34954d494caae5f631a6e658, - limb1: 0x957901c4d5a19fc7d9b1a162, - limb2: 0x8875731a803c457, + limb0: 0x4559f80e914c64ac381bb458, + limb1: 0x9c3b8d4816a08a828f4762e5, + limb2: 0xc313759ff0180703, limb3: 0x0 }, u384 { - limb0: 0xbc0f5819d92e9cba3e646e9, - limb1: 0xeaf2e3e75940ac00f9fae931, - limb2: 0x24365723aa5d802a, + limb0: 0x5a1a7863c220718e41a11aae, + limb1: 0xc974b524570b5c42112e492b, + limb2: 0xf343931ccf66b80a, limb3: 0x0 }, u384 { - limb0: 0x123b34e3497d1e57196fb31, - limb1: 0x435a2d995eaa63092dff2243, - limb2: 0x9ac5b80d49ee9f19, + limb0: 0xe9e6b6710c0159210766c917, + limb1: 0xb504f7a13cd2480cc1b9fd0b, + limb2: 0x28b67b0ad0423c40, limb3: 0x0 }, u384 { - limb0: 0x5a347519869f4a8921f9680d, - limb1: 0xbde534564488396620dbe7ea, - limb2: 0xc4e6faa4a7fbbbb4, + limb0: 0xeaa43b992d181eb8c0dd2e18, + limb1: 0xfe0340f0595431679cfd497d, + limb2: 0x7ccfa60138ce02aa, limb3: 0x0 }, u384 { - limb0: 0x3a126598596fe4854e2c6757, - limb1: 0x1115419fad92eb974b9201e3, - limb2: 0x6e2af40419dfc8c6, + limb0: 0xdb75d83ffcc337e77188962e, + limb1: 0xb114bfabac1288a05e9eb9b3, + limb2: 0xa1d88f0a969c2296, limb3: 0x0 }, u384 { - limb0: 0xf367a6086c14cd10ed5ac6ae, - limb1: 0x50631b1c26969c79e19b0642, - limb2: 0x627166999283514, + limb0: 0x19b85ca0fbca327e2814f161, + limb1: 0x17327c4d05efed6315531c0e, + limb2: 0x9c6a79e12f22fee8, limb3: 0x0 }, u384 { - limb0: 0x5ef6dc758352aebf8d96a568, - limb1: 0x9b9f8fb3f760980d9cbcfdab, - limb2: 0x2f9eec9e66ed70f5, + limb0: 0xb121599174bf06cbc2a72469, + limb1: 0xb77f402fb3ef4ae2e293911, + limb2: 0x871148a7e090ab28, limb3: 0x0 }, u384 { - limb0: 0x8fe2f4f94081ceaa3da53462, - limb1: 0x5d86a76c285d56d86eda7c56, - limb2: 0xcd361037e35f9f5b, + limb0: 0xe7e0ba5971214ebb28e6df51, + limb1: 0xb2bbd625936756c2b6d67338, + limb2: 0xbdf615739604d73b, limb3: 0x0 }, u384 { - limb0: 0xe17850d0ea296fd248b5387a, - limb1: 0xd42fb5b2e10e61e9f2bd2d4d, - limb2: 0x5aaa78e31b24e09e, + limb0: 0xd5e98fa2e62d7417f41f9a62, + limb1: 0xb356c48cc719e0bd0ac8399, + limb2: 0x1082f2f7658f858e, limb3: 0x0 }, u384 { - limb0: 0xb6cb4e96d3090f2776327e13, - limb1: 0xa217b1b1869353b5ceb4827e, - limb2: 0xc29f7206b9aa99f0, + limb0: 0x77fbb43b7de548490026d736, + limb1: 0x4d842ea22b176abf143a65ba, + limb2: 0xac8f14c4d4fc618f, limb3: 0x0 }, u384 { - limb0: 0x99bf9552e1c909ddf9821751, - limb1: 0x7aaa464359ced0dea20e0972, - limb2: 0x591ee377f529758f, + limb0: 0x5b9a6ae5b2c0aea2bf0d7f72, + limb1: 0xa5ce9f505676e849fedcd666, + limb2: 0x17cc1637efe2307d, limb3: 0x0 }, u384 { - limb0: 0x62e5617eed64b98d8f341483, - limb1: 0xcffe56bce0f20b1542082f7e, - limb2: 0xcf54963339b0ce1d, + limb0: 0xb639e423fd2da8d048247789, + limb1: 0xc53365b9701b9f0132177db1, + limb2: 0xe46aa0f43c6d8b70, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43239,114 +43166,114 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x4d3edf1b32a8bf3530fcfe60, - limb1: 0x201c58c7388740f49640e15f, - limb2: 0x92f2be697d0982d2, + limb0: 0x8cdf7a653d227cf2aafc37a2, + limb1: 0xa72648f1ba082c3485e8b1de, + limb2: 0x8d94e2d1011172f5, limb3: 0x0 }, u384 { - limb0: 0x5d0848a1ac6452b9e360545b, - limb1: 0xbf1c9982e734c1ca56d816a9, - limb2: 0x1b22ecb2c039972c, + limb0: 0xfe3a485d0fb9af4575f87b01, + limb1: 0xa4afe7b657596ce60a715702, + limb2: 0xb8b6d5ed207dc3ef, limb3: 0x0 }, u384 { - limb0: 0xcd51271cfeeb1c76a6ad065, - limb1: 0x1949d9ba911cfda9352ec1df, - limb2: 0x20aafe66e16d6407, + limb0: 0xcd042ab7e938d42a9c91c987, + limb1: 0xbe86cc0e397baf5c8887c4a, + limb2: 0x16f224101c17b2e4, limb3: 0x0 }, u384 { - limb0: 0x4a0b553bad20d89760b9bf34, - limb1: 0x93d454e33f34cfb818805767, - limb2: 0x86b3920fa2700e81, + limb0: 0x9ce6d20b8a2eda0a2e344a3f, + limb1: 0xa0eda20cb165ecf525163ca9, + limb2: 0xb46cbce841d56f17, limb3: 0x0 }, u384 { - limb0: 0x216631e57e229936bed2ce21, - limb1: 0x1acac35b2b405567294840db, - limb2: 0x6815f5aa944a58a7, + limb0: 0x8f8d1228c85298505f2cfb60, + limb1: 0x5a14180a10f79b7b01855904, + limb2: 0x8d085c76c5be053f, limb3: 0x0 }, u384 { - limb0: 0xb825e354cf3a0869c2822d4f, - limb1: 0x4a7f8cec244b45ce245aaddf, - limb2: 0xf45db1e12ce1f2d, + limb0: 0x6db5acc954c417374022a027, + limb1: 0x5b16ca9885f309ff3ec557b, + limb2: 0x54fb31a873304d1b, limb3: 0x0 }, u384 { - limb0: 0xeb74eebaeea7a8a5a8081509, - limb1: 0x2d241ef969c09609ecfd3d28, - limb2: 0x5e574d751ff0ac9, + limb0: 0xaaf749c8ae74ff6752950125, + limb1: 0xfa5d641ba001c89a3c2f3876, + limb2: 0x556b97e86f5d6403, limb3: 0x0 }, u384 { - limb0: 0xcc9dd2b3e7e7d7ca56fc9720, - limb1: 0x558f71263ef26eff1ce1714c, - limb2: 0x3926aaf965b82be8, + limb0: 0xeaafb6b51c68709f65109026, + limb1: 0xeaffa93e48a99eddedaffd29, + limb2: 0xcfc322caaaac9c8c, limb3: 0x0 }, u384 { - limb0: 0xc749e7d14e88c2506caca0f1, - limb1: 0xfffffffffffffffffa771ccc, - limb2: 0xffffffffffffffff, + limb0: 0xbeb2827e41161af6f5883a6f, + limb1: 0xffffffffffffffff4c1de325, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xc1add9501b7ff1c63d9b2dff, - limb1: 0xad431e7d5f721395c206e103, - limb2: 0xb0e86dc9829e6964, + limb0: 0xdae921b479de8e3fc086f85c, + limb1: 0x55e012375d0977ad932f1e46, + limb2: 0xb018d5e8cafa3601, limb3: 0x0 }, u384 { - limb0: 0xa83be183cbde5fc61d6113dd, - limb1: 0x8f2bd6351fee17a252a95542, - limb2: 0x64269a1d4dddbe7, + limb0: 0x390b56410dec06a6c10437da, + limb1: 0xb977a61152768fe450264413, + limb2: 0xb3bdc44e0856320, limb3: 0x0 }, u384 { - limb0: 0xdeeedd41491d50df3041b600, - limb1: 0x99f73f540db1eddf76f20642, - limb2: 0x5c1a3335f3d2de22, + limb0: 0xa1a8387ddcd1a3ecb31b16ad, + limb1: 0x4701e08170a3f0f1a364a289, + limb2: 0xd9a94544baf879b2, limb3: 0x0 }, u384 { - limb0: 0xa41a7f2c8b5e1b499dbb0bfd, - limb1: 0x9e43f84b2d134a2480a56775, - limb2: 0xb2b403c0f64e898e, + limb0: 0xb75380fc4af9e18154ed459e, + limb1: 0x5a7849b2c3b77c8bffafd917, + limb2: 0xdcf5a273cf7633a, limb3: 0x0 }, u384 { - limb0: 0x72d6482e5e86913f55f3f7e2, - limb1: 0xe67a64cef4e84403bbf00cd6, - limb2: 0xf99e94149a8914b7, + limb0: 0xf6ee43a32233f06402d8be01, + limb1: 0xf4462420bf8a79c8cc7872bf, + limb2: 0x6ff95c016445dc47, limb3: 0x0 }, u384 { - limb0: 0xc933095240cb1425e9e0f02a, - limb1: 0x5bc3575bcbb5e2209ad0f4bc, - limb2: 0x9bbda64ef6b8a3a4, + limb0: 0xfd381255f45016145225b761, + limb1: 0xd772772c8c97d82856f6088f, + limb2: 0xcf498a3c03801d48, limb3: 0x0 }, u384 { - limb0: 0xfc7b2751ddd9ee424bc7f734, - limb1: 0x5f15447e2a3fa9df81c2a888, - limb2: 0x28a782acce4e15c8, + limb0: 0xbfa3d4ec0ab4f928a60dcdb, + limb1: 0xd3d24e51798a377069a81ce8, + limb2: 0x41a582819c676a3a, limb3: 0x0 }, u384 { - limb0: 0x9eecd7a57a7ad2cdb151850a, - limb1: 0xb5d9531f7067fb92ba38364a, - limb2: 0x61de716d3d4b2b90, + limb0: 0xe26211f0d6b534002bda1fbb, + limb1: 0x1cf5f2e7014c7abf1334ee39, + limb2: 0x746b74fbd366a831, limb3: 0x0 }, u384 { - limb0: 0x1dac6ffc728c54b05c8f9c85, - limb1: 0xc4e510865e24943392fd386d, - limb2: 0x425ab5922f4be67a, + limb0: 0xea7876cd6aa2253ae144263f, + limb1: 0xe51cde823203b2d3a3e0b184, + limb2: 0xb4457ddbe738154d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43354,138 +43281,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x111eb20fc8e2c90029c50621, - limb1: 0xae93b68c0cbb354ee73ad011, - limb2: 0xb498c07576c7cfff, + limb0: 0x94bfa15738fbfd28a05ffd2c, + limb1: 0xe17180426ffea8e3e4533da9, + limb2: 0x40c023da9acbdfdc, limb3: 0x0 }, u384 { - limb0: 0x79134f3749ddeeceb0f8f024, - limb1: 0x9123fda6c909cd302197cd9, - limb2: 0xa13cdaa1f84d95b1, + limb0: 0x54fc5bec20b4e139936e034d, + limb1: 0xd586879edb4981b0988ed2b7, + limb2: 0x235895c4cd76fdd7, limb3: 0x0 }, u384 { - limb0: 0x86a78466f94b7a893be1f70, - limb1: 0x9da1a6250ce619db388e89c0, - limb2: 0x6715221bea4b269e, + limb0: 0x551b273f5385ccb3dd17d472, + limb1: 0xaabf49d0188360678bebe339, + limb2: 0xb81e4fe53343eff5, limb3: 0x0 }, u384 { - limb0: 0x85edb124cf255fa86f091466, - limb1: 0xe1dbd149c1c922ab922c7c1f, - limb2: 0x1421e104f63e23f, + limb0: 0x29d6e0a53156d91cdf531d2f, + limb1: 0x79a480360a5df9afcb32a629, + limb2: 0x15e5675516aa785, limb3: 0x0 }, u384 { - limb0: 0x18715a0d14e736cd621fc2be, - limb1: 0x2da16ec4785b63376da457f1, - limb2: 0x14cc45f0326d6b2e, + limb0: 0x554e59d4dc4f73f474d3804, + limb1: 0xd55b9b0eae80c68768a69b47, + limb2: 0xd6cb3efb2d41536b, limb3: 0x0 }, u384 { - limb0: 0xd4a4f7fc7684b58d7bcd98ed, - limb1: 0x353ab7336255b9657f431922, - limb2: 0xd2982a1bf23a28f2, + limb0: 0xb74b74038489942c839b931a, + limb1: 0x4c21bb04b0f837153b814910, + limb2: 0x3ed16228757d1fbc, limb3: 0x0 }, u384 { - limb0: 0x8b6441c2806271ed60b1ea14, - limb1: 0xea0f6da42b4a9fb9746a2f1e, - limb2: 0xb109e0e18aa4b3a2, + limb0: 0xdfe1d67d06dbd7f374963e0e, + limb1: 0x6679fde34c5b7a6138b02df9, + limb2: 0xed7f6e338719a291, limb3: 0x0 }, u384 { - limb0: 0x278427f21760ae61b58ecc42, - limb1: 0x4012c516433d684b4fb41eda, - limb2: 0x327be23da6dcf011, + limb0: 0x926639629dbf8d0471cc91ef, + limb1: 0x938c8cb485f492dd73cc41cc, + limb2: 0x3cd1c88fb6ccbad0, limb3: 0x0 }, u384 { - limb0: 0xce90169d2807dda0a7305cd2, - limb1: 0x1c7036f0f003e094ca65bcde, - limb2: 0xe8b63ca3bc5d02ee, + limb0: 0xc21e9920c57e514f311dd8ed, + limb1: 0x3477a13e9570b700353866d2, + limb2: 0xbf4df8d2034d66b6, limb3: 0x0 }, u384 { - limb0: 0x9a0321d095a97a0393e214b2, - limb1: 0x3a7d8633c93073a2f0744424, - limb2: 0x7ceaa5f8e738de1b, + limb0: 0xc876111a612e240115551e37, + limb1: 0x41a646b719a910250233d426, + limb2: 0x8f52011edacc552, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x4bc0f130c07f9c6faf3e513d, - limb1: 0xbcd5d56d9c1e89184e30271a, - limb2: 0xd65b00829254e1c0, + limb0: 0xfc5febef5515e3c243b0d9c8, + limb1: 0x59207f838b4245bf0649d3ef, + limb2: 0xd0add95d8cd77a09, limb3: 0x0 }, u384 { - limb0: 0x99a32a9a93149e6acda78b0b, - limb1: 0xea32db73df82a57042a154d2, - limb2: 0x2bd0e36cd2110354, + limb0: 0x8f4f5bc761742e8f471d86f6, + limb1: 0x12458a79413def3e310bdc86, + limb2: 0x4ea305e223a5b5e5, limb3: 0x0 }, u384 { - limb0: 0x18880cc8ffcd361c51cc01a2, - limb1: 0x35c2bb4c5fdd811c409e2bd4, - limb2: 0x84b76679aac412f2, + limb0: 0x6b998b7109bb7b7de5bdb1d0, + limb1: 0xf10d238a147b969b77c071c3, + limb2: 0xf3a0e4e11ccb53df, limb3: 0x0 }, u384 { - limb0: 0x3e675387eb12b0ce8db894ff, - limb1: 0x11ee88b9af91a95468cb53b, - limb2: 0x93d488103ec42c4b, + limb0: 0xde31a89a86b3b8ca1303e37f, + limb1: 0xcf2a161ab70ddf8190fe0dec, + limb2: 0x10c44cfb75bdec99, limb3: 0x0 }, u384 { - limb0: 0xcc17dac8618c5887770cf1f1, - limb1: 0xdc8497ddd247f3bc7639af1f, - limb2: 0xd99876320e9d6cee, + limb0: 0xf98f2fb6fd579965d4f17554, + limb1: 0x6762a2f68f3fe461e7716752, + limb2: 0x1b0d604e9e6e6918, limb3: 0x0 }, u384 { - limb0: 0x5f541e810eaaddec9568566a, - limb1: 0x1c4ea2d69fab1cc3b2a8b76c, - limb2: 0x9e49bf5eb2df57a1, + limb0: 0x8e30b8d78b023e80f223313a, + limb1: 0x2b2322b948cada0c041ede79, + limb2: 0x84ac0ce8d37946b0, limb3: 0x0 }, u384 { - limb0: 0x8b7892699c539f1ab032d23a, - limb1: 0x37d8d7be54d0ef410cf80334, - limb2: 0xcf48967a9a712209, + limb0: 0xb2b2e238fa90e841d93536c, + limb1: 0x25386ded167f009ee348a370, + limb2: 0xd955ebb283cb4ad6, limb3: 0x0 }, u384 { - limb0: 0xcb502db4b7e254e22f2ea69b, - limb1: 0xdf6baaab07c02506d37988e0, - limb2: 0xa6b3ae11479745ac, + limb0: 0x279cc13901285c6835cfa791, + limb1: 0xbeffc871c8a1d50252eaf655, + limb2: 0x9ee98ee42c14759f, limb3: 0x0 }, u384 { - limb0: 0x98ea193962a164fa71ce3f6f, - limb1: 0xbe06cb085eb5ef899fbd7fb8, - limb2: 0x6c389d4e41cbf0ff, + limb0: 0x668351f3debf1ab57b02d62f, + limb1: 0x1b3c8cbbeab1bbf1d21ae332, + limb2: 0xbd2ffb3f5608b26a, limb3: 0x0 }, u384 { - limb0: 0xfc7b2751ddd9ee424bc7f73b, - limb1: 0x5f15447e2a3fa9df81c2a888, - limb2: 0x28a782acce4e15c8, + limb0: 0xbfa3d4ec0ab4f928a60dce2, + limb1: 0xd3d24e51798a377069a81ce8, + limb2: 0x41a582819c676a3a, limb3: 0x0 }, u384 { - limb0: 0x9eecd7a57a7ad2cdb151850a, - limb1: 0xb5d9531f7067fb92ba38364a, - limb2: 0x61de716d3d4b2b90, + limb0: 0xe26211f0d6b534002bda1fbb, + limb1: 0x1cf5f2e7014c7abf1334ee39, + limb2: 0x746b74fbd366a831, limb3: 0x0 }, u384 { - limb0: 0x1dac6ffc728c54b05c8f9c85, - limb1: 0xc4e510865e24943392fd386d, - limb2: 0x425ab5922f4be67a, + limb0: 0xea7876cd6aa2253ae144263f, + limb1: 0xe51cde823203b2d3a3e0b184, + limb2: 0xb4457ddbe738154d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43495,9 +43422,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x651d3085e14f5b84cc1806c, - limb1: 0xc3ee8884a6472f90d480f0c5, - limb2: 0x9f51a7b40cbf1cd5, + limb0: 0xc1e568104884a064a689978c, + limb1: 0x24c08a2fb4172cb54b81fb73, + limb2: 0xdd3d4ad55ad85fb5, limb3: 0x0 }, u384 { @@ -43510,15 +43437,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x601982b2e63e1a4a07ec4b8a, - limb1: 0xcd34b6c2a06d16b8c279e232, - limb2: 0x2268c0ebe7b29a44, + limb0: 0xd0c8e1822a6dc053d0e93168, + limb1: 0x4cded343cab54c993fe9b094, + limb2: 0x695b477c7efaf0e2, limb3: 0x0 }, u384 { - limb0: 0x3aaf8a44a626ab2e8ef22ca8, - limb1: 0x6d39bd6b4d0e91333f3eb376, - limb2: 0x5f3938fe53ae4f5d, + limb0: 0xb6df1e36dce40898f0f2e23a, + limb1: 0xe26e249865480ebb32372b46, + limb2: 0x29278cc63d552138, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43526,49 +43453,49 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe7abe1d36873b131ad3d60aa, - limb1: 0x22a1c3ea4fd3c7266378db1a, - limb2: 0x1f4f73db18a627bf, + limb0: 0xb2e46871101fa110f766e4ba, + limb1: 0x4e4bc5ff58c873fba78d67e9, + limb2: 0x51fec88bad13d3b5, limb3: 0x0 }, u384 { - limb0: 0xfd9fc40bd22af3f04eba5092, - limb1: 0xbc500e475cd83844749554eb, - limb2: 0x537fd0a87d7f9b5b, + limb0: 0x3bac5cdcf73015db93da8ac1, + limb1: 0x9592f6e36dfbdace0b84a5ff, + limb2: 0x394b5c31acfab339, limb3: 0x0 }, u384 { - limb0: 0x2633472545f3ca69af5bcd26, - limb1: 0xea3510717f792639f8ee8f3e, - limb2: 0xd4f7472224fedc99, + limb0: 0x2fe484c65bcd0ef99275414c, + limb1: 0x6b10a59dc6e3be98154c62d4, + limb2: 0x51d7c3155b13c092, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xa0b292e44bb2b806377610c6, - limb1: 0x9c70ff5262fb9f0d51552f60, - limb2: 0xf0dd467355e237e1, + limb0: 0xb57e2a8f2900424cb660617a, + limb1: 0x1a17c6da8af51830bf63d411, + limb2: 0xe17ef46778dc9630, limb3: 0x0 }, u384 { - limb0: 0x9accc7e08b0eae47e89f403a, - limb1: 0xfc942def1b65f866bab6e83b, - limb2: 0x9a908ef449c42b8d, + limb0: 0x19d3800a3c3c2f96a43367, + limb1: 0x3103002ac4f8671e5f822eef, + limb2: 0x2014d96bad53e88e, limb3: 0x0 }, u384 { limb0: 0x7, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x601982b2e63e1a4a07ec4b8a, - limb1: 0xcd34b6c2a06d16b8c279e232, - limb2: 0x2268c0ebe7b29a44, + limb0: 0xd0c8e1822a6dc053d0e93168, + limb1: 0x4cded343cab54c993fe9b094, + limb2: 0x695b477c7efaf0e2, limb3: 0x0 }, u384 { - limb0: 0x3aaf8a44a626ab2e8ef22ca8, - limb1: 0x6d39bd6b4d0e91333f3eb376, - limb2: 0x5f3938fe53ae4f5d, + limb0: 0xb6df1e36dce40898f0f2e23a, + limb1: 0xe26e249865480ebb32372b46, + limb2: 0x29278cc63d552138, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43578,12 +43505,25 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xd6bf07b389177456fe56ecfe, - limb1: 0xab4a9c22d68b0d11175ec62, - limb2: 0x6419b6604e8e9ca9, + limb0: 0x40d27b596e5fa8fc65828086, + limb1: 0xb078e3d886968096624ec39a, + limb2: 0x1a6a61c72317877d, limb3: 0x0 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0x4d33ce96b0a4ce4c33443ea0, + limb1: 0xfb5bce2b1c42b92ceb33427b, + limb2: 0x417270a34f3edb0a, + limb3: 0x0 + }, + u384 { + limb0: 0x47389be96a7f0d03fcf5861, + limb1: 0xcb55b427adc4258d197578b3, + limb2: 0x511213c6cb0b2833, + limb3: 0x0 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 2 @@ -43591,15 +43531,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x1e84ea971d02ad79e6b0983e, - limb1: 0xedbac3e0c75c62f151aaa998, - limb2: 0x2b1a879740c34e92, + limb0: 0xa2592b3434339b6cbd71529, + limb1: 0xa37a95c24aea5b171f50092c, + limb2: 0xf9b87a648979478, limb3: 0x0 }, y: u384 { - limb0: 0x6bdf5d953a55ab35d11fcc47, - limb1: 0x54124899b4a331cde3da8353, - limb2: 0x584c116182eff7b4, + limb0: 0x51364f0e90af9dc0bd579a, + limb1: 0x62f8a7470dca544409d30d0d, + limb2: 0xea7aedc47b5375db, limb3: 0x0 } } @@ -43612,15 +43552,15 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xcf3a75750ab69548db428e9c, - limb1: 0xf751f521b4aa9f9105af87f1, - limb2: 0xbbc6a8bb1a17d3d, + limb0: 0x3a95d9e2b97b58e244525426, + limb1: 0x9313f8c963b79e4645a6959b, + limb2: 0x5028a7433599d9b1, limb3: 0x0 }, y: u384 { - limb0: 0x1371db60a1b5510546486077, - limb1: 0x3da9c1acf8f85b56a32149ee, - limb2: 0x649e85b3f35b0fe9, + limb0: 0xc6953f4e0cbc7ecc13e09a79, + limb1: 0x9bd28b08bd5bb73c03ed7080, + limb2: 0x3d04a9d421885451, limb3: 0x0 } }, @@ -43628,7 +43568,7 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x9cc753ad6264190f486c0adf5bf26ec8, high: 0x3d29d69c74f73cad4c667bb211e55c3 + low: 0xd96ee437106dfa14543bb7631a14383c, high: 0x3f7d0adf3546b6674b36dcb1d2e33dc }, ] .span(); @@ -43636,44 +43576,31 @@ mod msm_tests { array![ ( array![ - 0x0, - 0x1, - 0x0, -0x1, 0x1, - 0x1, - 0x1, -0x1, 0x1, 0x0, 0x1, - -0x1, - 0x1, 0x1, - -0x1, 0x0, 0x1, + 0x1, -0x1, - 0x0, -0x1, 0x0, + 0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x0, 0x1, - 0x0, 0x1, 0x1, -0x1, -0x1, - -0x1, - 0x0, - -0x1, - 0x1, - 0x0, - -0x1, 0x1, -0x1, 0x0, @@ -43682,121 +43609,135 @@ mod msm_tests { 0x1, 0x1, -0x1, + 0x0, -0x1, - 0x1, - -0x1, - -0x1, - -0x1, - 0x1, - -0x1, - 0x1, - 0x1, + 0x0, 0x0, 0x0, 0x1, - 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, -0x1, + 0x0, 0x1, 0x1, + 0x0, -0x1, -0x1, - -0x1, - 0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, -0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, + -0x1, 0x0, 0x1, - 0x1, + 0x0, -0x1, 0x1, - ] - .span(), - array![ 0x1, + 0x0, 0x1, -0x1, - -0x1, 0x0, -0x1, -0x1, + 0x1, 0x0, 0x0, -0x1, -0x1, + ] + .span(), + array![ -0x1, -0x1, 0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x0, + 0x1, + 0x1, + -0x1, 0x0, 0x0, + 0x1, 0x0, 0x1, 0x1, 0x1, - 0x0, -0x1, 0x1, 0x0, - -0x1, - 0x1, 0x0, - -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, - -0x1, 0x0, - -0x1, + 0x1, 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x0, - -0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x0, 0x1, 0x0, -0x1, 0x1, + 0x0, + -0x1, + 0x0, 0x1, + 0x0, 0x1, - -0x1, 0x1, 0x1, 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, -0x1, -0x1, 0x1, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, - 0x1, 0x0, 0x1, + 0x0, 0x1, 0x0, + 0x0, + 0x0, + -0x1, + 0x0, + 0x0, -0x1, ] .span() @@ -43807,73 +43748,73 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x44365d64e7541d0b1185150d, - limb1: 0x6cdf1017efcf73d57d30b828, - limb2: 0x10d54ae8a0fccf18, + limb0: 0x6bf00e943f3add27112513d0, + limb1: 0x121e741080747c254893663e, + limb2: 0xc3e49aaf03b95cc, limb3: 0x0 }, y: u384 { - limb0: 0xb3366ec622a9ea69861c25c, - limb1: 0x6edf9bcc645f555cd7814c3a, - limb2: 0x58b4cae7b4088862, + limb0: 0xf103ad828d82b0ecdfb4cfa9, + limb1: 0x77597c854eea57e6234920ab, + limb2: 0xa821c00f62e62d8, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x6ff9a34bec92017fcd086962, - limb1: 0x3e9e36b25acb64f3236abdc0, - limb2: 0xf47ea3074e6c18d, + limb0: 0xaa284d5c53f9106d1d746fd4, + limb1: 0x264ab04da34d9776a2bcd9a, + limb2: 0x2dfb14cf12397553, limb3: 0x0 }, y: u384 { - limb0: 0x1ba4c6612a4b3dc08ff09f83, - limb1: 0xba0abc719e7353dd361fe1c6, - limb2: 0x340bd61bad85ac47, + limb0: 0xec162d6a431d51f3c58116c6, + limb1: 0xedea2c9557e2b704488728cc, + limb2: 0x6413d50d8b657871, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x2433e7aae8de3983f85e832f, - limb1: 0xe95d247baf6d37b3f4ac0ec3, - limb2: 0x2d60bb8aba2c4f2e, + limb0: 0x58abcb83d31b56c01b4cf05, + limb1: 0xc75f68ad18b796ab2383ad29, + limb2: 0xd8e513ad88fc967, limb3: 0x0 }, y: u384 { - limb0: 0x7a00c9dd11c143200f4a67d4, - limb1: 0x8a42337699b57485c716d6c4, - limb2: 0x5524f8394d23301a, + limb0: 0x46a4f6553b2a514134dd58d0, + limb1: 0xa2292378e8aff3833615112e, + limb2: 0x37a1df22922f3834, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xf3cd350ba66f2ada6be81c83, - limb1: 0xb80a63667910660602c13a6, - limb2: 0x7a930eea6b2d6da0, + limb0: 0x61309b12a353dd0912882ddf, + limb1: 0x92ca8dbd6aae23e0e83e5c4, + limb2: 0x784e7f13092aa942, limb3: 0x0 }, u384 { - limb0: 0x5d285f7b31a310ae0e14f9b0, - limb1: 0x29032437, - limb2: 0x4000000000000000, + limb0: 0xf9103665621168edc8803f10, + limb1: 0xffffffffffffffff8f2ee39b, + limb2: 0x3fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x8124748519fe538fda2f6860, - limb1: 0x55697d4508db246e0e7e8865, - limb2: 0x1235972839acdc9e, + limb0: 0xdc6e2be886ed81838e5d5ec0, + limb1: 0x79f38d2ed28816544f4e3957, + limb2: 0x43459117e10208d2, limb3: 0x0 }, u384 { - limb0: 0xec8f2d260df54dac13385c44, - limb1: 0x9bcefac65b85ec997d1fbfe5, - limb2: 0x636e4a8bad61b3a9, + limb0: 0x597a17890749c9f6aa8897f7, + limb1: 0x5acd93261bd3e59471c60426, + limb2: 0x23990f11da2a9082, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43881,54 +43822,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe149738b913e64a778a2f58b, - limb1: 0x1d58982892426092bbd581d4, - limb2: 0x1d4e7c7fd52d84fe, + limb0: 0x297f23918a9b74b6f7524cf1, + limb1: 0x986ea6883a98a92c0dc38da0, + limb2: 0x94f96d5f1711da5, limb3: 0x0 }, u384 { - limb0: 0x1561dc79e8c9f6b2beeaad08, - limb1: 0x66d450cc9fde4958dad8178c, - limb2: 0x4dc3446f80386bc0, + limb0: 0xf0ad70803fd7165ef78a4a51, + limb1: 0xefa4d7f9c0cb8b98060090dc, + limb2: 0x40bc3585566f8762, limb3: 0x0 }, u384 { - limb0: 0x962a904a34e1bc89f4775c7e, - limb1: 0xad2459348573899bb69c60d4, - limb2: 0x4760cec758278254, + limb0: 0x289ae991109941dfa16d270, + limb1: 0xeeec15451ae6db3de38c96b1, + limb2: 0x7841411f66ea6c74, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x8bbc1f0ba6d2c0aa29fde947, - limb1: 0xe984e7cca6dabec6e9c0b820, - limb2: 0x31f24ab42af39f39, + limb0: 0x2fe9983418fdf62d2a86ef6d, + limb1: 0xc0e34d6f7dc20b23cf3ee4de, + limb2: 0x6e52daa481a12d0b, limb3: 0x0 }, u384 { - limb0: 0xc00063a61000468f48580379, - limb1: 0x23f529e0223550cd13bdd658, - limb2: 0x6093c0e8b3d66be1, + limb0: 0xfb20b5ef0490282976c93bb8, + limb1: 0x21118c3cbfe2f8518d14bdeb, + limb2: 0x61b92450eaf54054, limb3: 0x0 }, u384 { - limb0: 0x4bcafc2b02704afe1de3afc1, - limb1: 0x3f4a777839174a780ec8179f, - limb2: 0xa552422363fe596, + limb0: 0x7b4af9648412afef2a210993, + limb1: 0x18a384f495674b309c3a6e1e, + limb2: 0x5e0c792e0433fdce, limb3: 0x0 }, u384 { - limb0: 0x8dc99f7cc670351ed2eb7f8d, - limb1: 0x87015e526a5662447a373ec2, - limb2: 0x6f8443fbdf669b84, + limb0: 0xe91356e0335f631287197600, + limb1: 0xab8b6e3c3403542abb06efb4, + limb2: 0x20943deb86bbc7b8, limb3: 0x0 }, u384 { - limb0: 0xec8f2d260df54dac13385c44, - limb1: 0x9bcefac65b85ec997d1fbfe5, - limb2: 0x636e4a8bad61b3a9, + limb0: 0x597a17890749c9f6aa8897f7, + limb1: 0x5acd93261bd3e59471c60426, + limb2: 0x23990f11da2a9082, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43938,30 +43879,30 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x7e7048cb7c2d02bd76e9637c, - limb1: 0x8575dbbd0e2598575130192e, - limb2: 0x60a46e2392d083b1, + limb0: 0xf0364ffa42db6824430b89e3, + limb1: 0xd53c5b85e3482a96948d5885, + limb2: 0x607ce7bfd31cf3dc, limb3: 0x0 }, u384 { - limb0: 0x5e46df86c374b0a7e0724c6c, - limb1: 0xfffffffffffffffffdcb7e0e, - limb2: 0x7fffffffffffffff, + limb0: 0x1b7217247c6f3ac0a6f5c352, + limb1: 0xfffffffffffffffffe04a048, + limb2: 0x3fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x19521c9b08d59764dcf00c5d, - limb1: 0xf4d237caa1296775899c1387, - limb2: 0x49670206b497afac, + limb0: 0x7e34befeffcc186e6eb98517, + limb1: 0xddca6e1482939ea293484b9e, + limb2: 0x1aa48c7c0732923d, limb3: 0x0 }, u384 { - limb0: 0xc0cbe73f08b7693757b507ef, - limb1: 0xca0fd42bf089fb7bd6e5ba4d, - limb2: 0x64fbab43d977c134, + limb0: 0x1b41d8c0f28b96b09e393bf3, + limb1: 0x6a875c31c2138842502d9cca, + limb2: 0x1dc43edb82cb0fb, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -43969,54 +43910,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xe410e6b289a194310fe82807, - limb1: 0xc6d47bb0f46adeff41771f2b, - limb2: 0x7c4e1c7e44708655, + limb0: 0x838f863405d775fcafc1cf77, + limb1: 0x26f9c37095e09eb56f42549f, + limb2: 0x1621766db057e0df, limb3: 0x0 }, u384 { - limb0: 0xedff2aeaf63261e0e9b784b6, - limb1: 0x5cf62ace31c0479eddec297, - limb2: 0x6f1a22709bf51057, + limb0: 0xeadb8df2f92f4dc8e9379e13, + limb1: 0x2f62953ad4ea9ca2fdda03ac, + limb2: 0xb3139493cb5f4bb, limb3: 0x0 }, u384 { - limb0: 0xfbd5ee077aaf05cc563792c1, - limb1: 0x9bb8fe58063a06900884eaa6, - limb2: 0x1deba4c893f8e3be, + limb0: 0x28c0731ede1abd71391d7557, + limb1: 0x6cb9330b427dc7950f5ce40e, + limb2: 0x35ffe8abe9127c4c, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xbb4b9506a681678d4256062d, - limb1: 0xfa49cb7ff1241f7d35562366, - limb2: 0x2235acacd0a2eea2, + limb0: 0x37bd9d782a35f1c02a51e3d, + limb1: 0x2e979fa9c76ab10a783139cd, + limb2: 0x44c747cc534ed050, limb3: 0x0 }, u384 { - limb0: 0xb6c50edb134077e9acd421c4, - limb1: 0x1f3419b8f046e7f9bb2b1ece, - limb2: 0x4c47e162b55ff564, + limb0: 0xa31ce1a5415104a56880e25e, + limb1: 0xe087549d28e68076ce4cb157, + limb2: 0x360f11ba5f4a7fe4, limb3: 0x0 }, u384 { - limb0: 0xb6114f2da2e8314e9204f981, - limb1: 0xfd4f24702582d15a19294b6b, - limb2: 0x139b2b1ee50ccc17, + limb0: 0xe866f1eceaf062b84b0d8967, + limb1: 0x6245d3aa93437514008afeda, + limb2: 0x45f18cb43fbf8e8f, limb3: 0x0 }, u384 { - limb0: 0x25f74792b54778f3d5ac239d, - limb1: 0x266a18d802a4a54bf554c9e4, - limb2: 0x26b5aeda5a516e93, + limb0: 0x8ad9e9f6ac3df9fd67759c44, + limb1: 0xf624f21e40edc78ff0101fb, + limb2: 0x77f3394facec5124, limb3: 0x0 }, u384 { - limb0: 0xc0cbe73f08b7693757b507ef, - limb1: 0xca0fd42bf089fb7bd6e5ba4d, - limb2: 0x64fbab43d977c134, + limb0: 0x1b41d8c0f28b96b09e393bf3, + limb1: 0x6a875c31c2138842502d9cca, + limb2: 0x1dc43edb82cb0fb, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44026,9 +43967,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x5235d5fe0aba2cd6fb6fc0c8, - limb1: 0x692b2e23277eca63ebea2bb, - limb2: 0x70252b237f0f94e8, + limb0: 0xa356e3b8c813e7c20162bc51, + limb1: 0x4b849a092333ef89fc8c11a2, + limb2: 0x32d056e659de1c0a, limb3: 0x0 }, u384 { @@ -44041,15 +43982,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x63bd12fc7f0187dc2bb1bbab, - limb1: 0x495584a9de7cd212bc5aff6e, - limb2: 0x204aa9fd8aa2208f, + limb0: 0x68faa2cbfed91e80887a3c4e, + limb1: 0x22ab3d331a197e3eb3350a8a, + limb2: 0x4427b05d4385900f, limb3: 0x0 }, u384 { - limb0: 0x6bd275092a8fc4fc3a99135c, - limb1: 0xd804a4d1f5c76358e7e9337c, - limb2: 0x43575a44d0ecef43, + limb0: 0x504cf5eb6ed53a26e0d6c114, + limb1: 0x363bec4e0d138fdd7250853c, + limb2: 0x447699f61536c145, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44057,54 +43998,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x8022cc9ec9d347636dca7f53, - limb1: 0xa59711cc2d74b6abf482ec59, - limb2: 0x4514061e0488961f, + limb0: 0x497fa31acb60b1fa6f5cd00a, + limb1: 0x2db836b4e00a6f138e66106b, + limb2: 0x241f636d64b24340, limb3: 0x0 }, u384 { - limb0: 0xc9b285e8102a790478b78f8e, - limb1: 0x9b8f387651545e3fc26f73b9, - limb2: 0x5f07fa347f8ccf7a, + limb0: 0x32d9080cf280168b6fcbf2de, + limb1: 0x137706e70cab917867bea4cb, + limb2: 0xf50d118af60c7d8, limb3: 0x0 }, u384 { - limb0: 0x8dc4e54b17ce52e43fad688, - limb1: 0x9d28fe8e9bbba1022464c339, - limb2: 0x15d654d9b00f3ed9, + limb0: 0x79d8bcdcb64b9a7b5031c26b, + limb1: 0x81f1159d4f070d529ed418ee, + limb2: 0x57043af107998b57, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x8cd7bfca15aca4f94b7816a3, - limb1: 0x2ac20cb39de3a3071d2273f5, - limb2: 0x1e72c8806868d3c9, + limb0: 0x6bf2a922c5c6073cffa1494f, + limb1: 0x2ac344717382146fa33338e9, + limb2: 0xcee6ca0b5493e, limb3: 0x0 }, u384 { - limb0: 0x4f105b43c1cb2379432aa526, - limb1: 0xd84bb1300e513b87ce08b7bd, - limb2: 0x74474bc43ddb66f2, + limb0: 0x9bd43e7a59b07444051e1f9f, + limb1: 0x99f3b5c3948621ca8b391763, + limb2: 0x72a1e68f56e2b2d0, limb3: 0x0 }, u384 { - limb0: 0x4ff3b2afa90ca8803b3cb3a4, - limb1: 0x4b1349753764f008160f68cc, - limb2: 0x77cb559292343031, + limb0: 0xa90b8fbac6039c6be53e2674, + limb1: 0x3e7fcb5eb3b6bd597af539e6, + limb2: 0x7979d966a01cdc3e, limb3: 0x0 }, u384 { - limb0: 0x70623df42b73696b246dd2d8, - limb1: 0x7aed65b73ff80fe92813b5cb, - limb2: 0x7d9956d1305bdf75, + limb0: 0x759fcdc3ab4b000f8136538e, + limb1: 0x54431e407b94bc151eedc0e7, + limb2: 0x21765d30e93f4ef5, limb3: 0x0 }, u384 { - limb0: 0x6bd275092a8fc4fc3a99135c, - limb1: 0xd804a4d1f5c76358e7e9337c, - limb2: 0x43575a44d0ecef43, + limb0: 0x504cf5eb6ed53a26e0d6c114, + limb1: 0x363bec4e0d138fdd7250853c, + limb2: 0x447699f61536c145, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44114,9 +44055,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x8023dbee75aa8c9f99e8b332, - limb1: 0x7895644d634fb0396db18c75, - limb2: 0x317496f7a88a0f7e, + limb0: 0x1146ab74653d2938f0fa3019, + limb1: 0x7a2831156f47c5e68eff26e8, + limb2: 0x262f1376d7449f59, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -44127,15 +44068,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x5be4409e95593d6fb704d741, - limb1: 0x2dcd75ed7febbe66c5df1e64, - limb2: 0x4e15ccf09bdc27a2, + limb0: 0x7377b6db3a85cefd56fab74e, + limb1: 0xeee7bf849a0232d4e20d7599, + limb2: 0x5e39ec516279aa9b, limb3: 0x0 }, y: u384 { - limb0: 0x3c9d32272f8509caeaa398b8, - limb1: 0xa031c67816956a61071c0d5d, - limb2: 0x18164c40a8f4e34c, + limb0: 0x541ac5b1eabaf89370934303, + limb1: 0x6dc79cac482597b8d3113c2, + limb2: 0x5094e8dfab8ab06f, limb3: 0x0 } } @@ -44148,29 +44089,29 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xad9eca0c7490759f38034021, - limb1: 0x600c45cd5bbcfb3ec91cd2b9, - limb2: 0x261724e215867aae, + limb0: 0x293b0686026c054494218408, + limb1: 0x67556c5424fa65130a62e84b, + limb2: 0x7747e9e924cfef6e, limb3: 0x0 }, y: u384 { - limb0: 0x1c4fad9816f147f36221a388, - limb1: 0x2b8fe03f9a8235c353535268, - limb2: 0x19c9cb63648d8dba, + limb0: 0x8bd42ed649defc1143649d7f, + limb1: 0xa863f8de4df3173157ec9c37, + limb2: 0x6a25f946da1d09e0, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xf536f227efcecea17e66208, - limb1: 0x5d479c983adb540c066e0e5d, - limb2: 0x32dbc25037f6c587, + limb0: 0x9ad6d6847c675db29cb9f845, + limb1: 0xca8251cb8ef2b16b901b6306, + limb2: 0x78f4c9540bbc8e9d, limb3: 0x0 }, y: u384 { - limb0: 0xd67f33a93f4fc18c60f8f00f, - limb1: 0x662468f7efcedabc5a01977c, - limb2: 0x4a3e1231939906cf, + limb0: 0x74d7d5dcd42d3d8398f01d55, + limb1: 0xbf1d55e9c456148683694844, + limb2: 0x297374471749207b, limb3: 0x0 } }, @@ -44178,10 +44119,10 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xf9adf8c56247b40dae5ceb3d1c275035, high: 0xec6ddfb8376ffa876fe579f6382f3b5 + low: 0xbe35ea23d80cd80e72098a2e69bf0c1c, high: 0xa8cf26f3d23a37bdc17e854b15b1d2a }, u256 { - low: 0xffb59512fa04a706ef8dff9bfae3fcee, high: 0x70f9be09e3b3f04d418864590de6fba + low: 0xace5b79c0e4f4d3994f437c093fef669, high: 0x88771dc89f7c06c62324ed5381dd360 }, ] .span(); @@ -44191,30 +44132,24 @@ mod msm_tests { array![ -0x1, 0x1, - -0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x1, -0x1, + 0x1, 0x0, -0x1, - -0x1, + 0x0, + 0x0, 0x0, 0x1, 0x0, 0x1, -0x1, 0x0, + 0x1, -0x1, 0x0, - 0x0, 0x1, 0x0, -0x1, @@ -44222,136 +44157,142 @@ mod msm_tests { 0x0, 0x0, 0x1, - 0x0, + -0x1, 0x0, 0x1, + -0x1, 0x1, -0x1, + -0x1, + 0x1, 0x0, -0x1, + 0x1, + -0x1, + 0x1, + 0x1, -0x1, 0x0, -0x1, 0x0, 0x0, + 0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, + -0x1, 0x0, + -0x1, 0x1, 0x1, 0x0, 0x0, -0x1, 0x1, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, 0x0, 0x0, + -0x1, + 0x1, 0x1, -0x1, 0x0, - -0x1, + 0x0, 0x0, -0x1, + 0x1, + 0x1, -0x1, - -0x1, - -0x1, + 0x0, + 0x1, -0x1, -0x1, ] .span(), array![ - -0x1, - -0x1, 0x1, 0x1, 0x1, - -0x1, - 0x0, 0x1, - 0x0, + 0x1, 0x0, -0x1, - 0x1, - 0x1, 0x0, 0x0, - 0x1, 0x0, - -0x1, 0x0, - -0x1, 0x1, 0x1, - 0x0, - -0x1, - -0x1, -0x1, -0x1, - 0x0, + 0x1, 0x0, -0x1, -0x1, - 0x0, - -0x1, + 0x1, 0x1, 0x0, 0x1, 0x0, + 0x1, 0x0, 0x1, 0x0, - -0x1, 0x1, + 0x1, + -0x1, -0x1, 0x0, 0x1, 0x0, + 0x1, + 0x1, + 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x0, -0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, - 0x1, - 0x1, 0x0, + 0x1, 0x0, -0x1, + 0x1, + 0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, 0x0, + 0x1, + -0x1, -0x1, -0x1, 0x1, + -0x1, 0x1, -0x1, - 0x0, -0x1, 0x0, 0x1, - 0x1, - -0x1, -0x1, + 0x0, 0x1, ] .span() @@ -44360,84 +44301,84 @@ mod msm_tests { array![ 0x0, 0x1, + 0x1, 0x0, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, -0x1, + 0x1, + 0x1, + 0x1, 0x0, - -0x1, 0x1, 0x1, - -0x1, 0x0, + 0x1, -0x1, 0x0, -0x1, - -0x1, + 0x0, + 0x0, + 0x0, + 0x1, + 0x1, -0x1, 0x1, - 0x0, 0x1, - 0x0, -0x1, -0x1, - 0x0, -0x1, -0x1, 0x0, -0x1, - 0x0, 0x1, -0x1, + 0x0, + 0x1, 0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x0, 0x0, - 0x0, - 0x0, + -0x1, 0x0, 0x0, 0x1, + 0x0, + -0x1, -0x1, 0x0, + 0x1, + 0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, -0x1, - 0x1, 0x0, - 0x1, - 0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x0, - 0x0, 0x0, 0x1, - -0x1, + 0x0, 0x0, -0x1, + 0x1, -0x1, -0x1, 0x0, - 0x1, + 0x0, 0x0, -0x1, + 0x1, -0x1, -0x1, ] @@ -44447,79 +44388,79 @@ mod msm_tests { 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, 0x1, + 0x0, -0x1, 0x1, 0x1, -0x1, -0x1, 0x0, - 0x0, - 0x1, + -0x1, 0x0, 0x0, 0x0, 0x0, -0x1, + 0x1, 0x0, 0x0, 0x1, 0x1, + -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, 0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, 0x0, 0x1, 0x1, - -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, - -0x1, - 0x0, + 0x1, 0x0, + -0x1, + 0x1, 0x0, -0x1, + 0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x0, + -0x1, 0x1, 0x0, 0x0, - -0x1, 0x0, - 0x1, 0x0, 0x1, - -0x1, - 0x0, 0x1, - -0x1, 0x1, 0x0, 0x1, 0x0, -0x1, - 0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, + 0x0, 0x1, 0x1, ] @@ -44531,63 +44472,63 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x12182f9a7b825cc95aec3ac6, - limb1: 0x87d572b6e5d3e0d28db4bf3e, - limb2: 0x68d475795b005568, + limb0: 0x6c55ca9a84faeb058d791bea, + limb1: 0x7e0681e146599445661f7ae4, + limb2: 0x6c9b7f62f6b5733e, limb3: 0x0 }, y: u384 { - limb0: 0x63f588d9bc0f8c877581e96d, - limb1: 0xe31cf72f4f5a448a8977c8cb, - limb2: 0x5748b0ad9919823b, + limb0: 0xf7121d152ec0ccbd44a548cd, + limb1: 0x65202c3b661a0ae43cef1d85, + limb2: 0x6fac0fb118251c62, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x617d09ce93708a8541304189, - limb1: 0x3d39fd000f6ba605f34e5d99, - limb2: 0x44092410d2386007, + limb0: 0xc4282216ba00cd5696407ef6, + limb1: 0xfc5da2daf972296b64e9b972, + limb2: 0x7a6044ad704536a9, limb3: 0x0 }, y: u384 { - limb0: 0xd2210742c3883b6d2418fa96, - limb1: 0x1c715b16c0788de1787a9b20, - limb2: 0x34de6e1db15f894a, + limb0: 0x799d628b403f65b287f4223e, + limb1: 0x8c3fab5d799eea0c3c7240e3, + limb2: 0x274c8b28601af776, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xbcf90b1af3a5e4bd9691aa94, - limb1: 0x595b385a2c2fc9041736a927, - limb2: 0x77f3ead3adcc4c82, + limb0: 0xed8a5a1e453d6413ab207404, + limb1: 0x594b2d34869d6fada61bf157, + limb2: 0x4472895b754f0189, limb3: 0x0 }, y: u384 { - limb0: 0x6fa6005f5cf54d081c0c4720, - limb1: 0xfa6f1053c9623c56bb571750, - limb2: 0x2d3e08595c6364c1, + limb0: 0xe764b45eab24ad1ca59c8aeb, + limb1: 0xd581f1b282184215947f6c7e, + limb2: 0x260ca44e3749f25, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x82b8e1f430333c4259518a1, - limb1: 0xbf7dfa2105f7d4c49bd920e6, - limb2: 0x398b1b1082ca4261, + limb0: 0x952e2cdf26b31e757a403f15, + limb1: 0x5d32df4e693790af0cfe7166, + limb2: 0x58cd9f2efba8dee1, limb3: 0x0 }, u384 { - limb0: 0xca4478db1d651e3744ab7d84, - limb1: 0xb66d0aff091c24208a924f03, - limb2: 0x2dcbc6c4cb1657f6, + limb0: 0x4ebfa01561bd0dd5c214d1e7, + limb1: 0x113885fa00b60c5cfc5443d0, + limb2: 0x4fadf507e5343d57, limb3: 0x0 }, u384 { - limb0: 0xe1850a7c65bdfbf2903b5ba8, - limb1: 0xfffffffffffffffeff2ef7a5, + limb0: 0x791b491d1400ce3dc58a4ebf, + limb1: 0xffffffffffffffff013ecd5f, limb2: 0x7fffffffffffffff, limb3: 0x0 } @@ -44595,21 +44536,21 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x64ff4e6ee3d3fc14b4b69a96, - limb1: 0xc2d52570565de0691405b86, - limb2: 0xb38f60bf5be89b5, + limb0: 0x42a34e961c6b1db347aff3a6, + limb1: 0x779a355c572d6f6f102bd2bf, + limb2: 0x146af3c2415206b2, limb3: 0x0 }, u384 { - limb0: 0x118a88fe266327fd653630f3, - limb1: 0x6b58bdffd11588b7bc7fa564, - limb2: 0x6263561d0731b56c, + limb0: 0xae42c556bf60a09fa1dcc879, + limb1: 0x67dcb6d0bccae7109998726e, + limb2: 0x2e8f520fc28891e7, limb3: 0x0 }, u384 { - limb0: 0x30f5973690f040ad552a22eb, - limb1: 0xbad6aae38393cfe2a2c05fab, - limb2: 0x3e38a35457826a61, + limb0: 0xcf98585afc31b20341ab6790, + limb1: 0x5021bfff05b9553bff6239c9, + limb2: 0x2327cd5fd8be0eb5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44617,66 +44558,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xeb9c0ea3950ac1ffcb89e053, - limb1: 0x373d8d7199e0e361a6d7111a, - limb2: 0x63996745529f47e4, + limb0: 0xee977d10fc3811f074b12f7c, + limb1: 0xe2c2acb6661070026aa6abd1, + limb2: 0x24f182986bc58517, limb3: 0x0 }, u384 { - limb0: 0xec8cdd15d4854ee81a212fb5, - limb1: 0x22052ece6b87a74e22489c56, - limb2: 0x2e586bbec100fc0c, + limb0: 0xa32dc5e2326c85a7f0c6a892, + limb1: 0x6d92086c29deb641ba83ef12, + limb2: 0x38f6cb32cf1f2a00, limb3: 0x0 }, u384 { - limb0: 0xd203e3effc696bd32797f558, - limb1: 0x5d8dbabe3accd2f93fb27311, - limb2: 0x73309d27f7ad7803, + limb0: 0x2a903a8835f6c3bc8d28a85a, + limb1: 0xa548d75d9e5ab0caf5bccb47, + limb2: 0x156cd83415f56221, limb3: 0x0 }, u384 { - limb0: 0x62af2a38d857c07c6c3c6255, - limb1: 0xe7ba7bb7c00682d64e338ae7, - limb2: 0x5d64ca1f0e7d6eb8, + limb0: 0xe4faf1ec15e75b0889da2d24, + limb1: 0xf8ef4df5adc4d83582c06939, + limb2: 0x4ffdc0007f490cca, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x67911db03818a32cd3cba73e, - limb1: 0x53f492d937e3ca9016156dd6, - limb2: 0x161676ccb6ad2431, + limb0: 0xa39c337c34faa0f876df42e8, + limb1: 0x7cfedadee809d4d5220e9376, + limb2: 0x282fdf7b8fdde23e, limb3: 0x0 }, u384 { - limb0: 0xf14d08414738a87d48fb8183, - limb1: 0xc756bbc1ac23566eb4b2e52e, - limb2: 0x356cf53e624ea030, + limb0: 0xdbed9559e60659680d5278a8, + limb1: 0x725adb0c97706fbfb578f732, + limb2: 0x268a9902fbc61b9b, limb3: 0x0 }, u384 { - limb0: 0x97d1387352b8ca642317f9e7, - limb1: 0x593c4589f282bbe3cd7d33cb, - limb2: 0x7f9c5843c7fc5e36, + limb0: 0xc2579453b581325e6b7f7f8, + limb1: 0x1579c87ad95e3039d13c7a4d, + limb2: 0xe81e3697b7c311e, limb3: 0x0 }, u384 { - limb0: 0x3bb28f0aa5b56a1fad0e71be, - limb1: 0x3da5fae57684fa604783817c, - limb2: 0x1d0392c9182f39f, + limb0: 0xd4c52c5be87fa73f12b5c04e, + limb1: 0xab95f4d2bccc4ca625bba75f, + limb2: 0x49ede5467251253f, limb3: 0x0 }, u384 { - limb0: 0x1e2fb3f5d2d5098c5df24833, - limb1: 0x9cf09f0d3290c68e28385bc1, - limb2: 0x3fb202f0aceb7452, + limb0: 0xbae7f04e6bd2822e9a98dfb9, + limb1: 0x997497de1e4624e7055128cb, + limb2: 0xbddfee3684250cd, limb3: 0x0 }, u384 { - limb0: 0x30f5973690f040ad552a22eb, - limb1: 0xbad6aae38393cfe2a2c05fab, - limb2: 0x3e38a35457826a61, + limb0: 0xcf98585afc31b20341ab6790, + limb1: 0x5021bfff05b9553bff6239c9, + limb2: 0x2327cd5fd8be0eb5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44686,39 +44627,42 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x70b7942b87a927c9a3e21901, - limb1: 0x5236d563fabcb68af18efdb2, - limb2: 0x1712fbeba7ed5ae, + limb0: 0x423b136dd684791d38cb40c7, + limb1: 0x28099c9176e21440f44c82e8, + limb2: 0x4d68afcffade8b4e, limb3: 0x0 }, u384 { - limb0: 0x267b8f68041ffa5dbcec6998, - limb1: 0x2a2856b81b14d8179e062655, - limb2: 0x4294cfaec339db3f, + limb0: 0x2e452af5a92584fe5cd54f11, + limb1: 0x63d93e5f0572bece3130e1d5, + limb2: 0xb96a9cad83b18bb, limb3: 0x0 }, u384 { - limb0: 0x27d0ba9cb62969a0b8f38964, limb1: 0x983a36e, limb2: 0x0, limb3: 0x0 + limb0: 0xf9c15998c825fd9a64b7588a, + limb1: 0xa96c303, + limb2: 0x4000000000000000, + limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xf3aacb5a5e3bc6403a0879ce, - limb1: 0x59e65864cd0f5472c4491b77, - limb2: 0x44c81197a5c3789a, + limb0: 0x2132de2b46aaeb038c1e9935, + limb1: 0x112583335b708b90522e3e38, + limb2: 0x5d863fbbc7d2c665, limb3: 0x0 }, u384 { - limb0: 0x7c9f82471d1f21a18a303147, - limb1: 0x2c645c4a0a3cf6c388d924b5, - limb2: 0x150cbccdae4dd931, + limb0: 0x5f6895bd9a6a6af964192ab0, + limb1: 0xd947ddef26b70114441da700, + limb2: 0x474bdf2d325abea0, limb3: 0x0 }, u384 { - limb0: 0xe190bd02790212f16ee61c28, - limb1: 0x572209a59fc0aaf3d26c14f, - limb2: 0x6303f4bce04a5fc3, + limb0: 0x77c600dec72bcfb238e40484, + limb1: 0xd1ca9f0552a0c0160097fb3b, + limb2: 0x156308155f2e4b49, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44726,66 +44670,66 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x48fb113957134548744e899e, - limb1: 0xe7afdcd2c021f8bcd27253a0, - limb2: 0x7cc09453da5f07d6, + limb0: 0xf16b7b1570a1dd81dfc35242, + limb1: 0x1b15a2dbbd5f2b30815e1eae, + limb2: 0x50792a16cd586be7, limb3: 0x0 }, u384 { - limb0: 0x31a86209533c5098cc34bda, - limb1: 0x5dd6af8968e87be442e29813, - limb2: 0x79fe46e4134e9a97, + limb0: 0x85b14726f310a48caa693d94, + limb1: 0x48c8f5f6dd433baf189448b1, + limb2: 0x28b293f0b18abe8d, limb3: 0x0 }, u384 { - limb0: 0xa65235d39cbbf5caffef48cf, - limb1: 0x2e9df469a6ccbe053a4fcf25, - limb2: 0x195be768b7cccf12, + limb0: 0x3a9cb35e0f0914f64073e3f3, + limb1: 0x622919b3556b5623d17c9d6d, + limb2: 0x66b9a1931f5d9e13, limb3: 0x0 }, u384 { - limb0: 0x1b14d5ccb0fd317b2b9b425d, - limb1: 0xadbdf732420f77fa68092de3, - limb2: 0x59f4baa2825ce8d7, + limb0: 0x8cbe02a24423b7e9ee8c0e4, + limb1: 0xfd7bdd18e31832d66e4fa041, + limb2: 0x4828c21b75e5134d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xda04dfcc00ecfacd6850b0bc, - limb1: 0x1388b9da491682a997c2b4a4, - limb2: 0xf51e9ab1be46379, + limb0: 0x5036f32b1d5fb7962899d754, + limb1: 0x6c5b864c1a3351de7c488eed, + limb2: 0x4e8f7f4345e770b8, limb3: 0x0 }, u384 { - limb0: 0xd05cadbe23178138a21d5581, - limb1: 0x30ad55adb10dfb05adf260c5, - limb2: 0x2ae66e267613c86d, + limb0: 0x94ac0874464e5ab2be9d5bb2, + limb1: 0xa698c745a6b05c073e3576c5, + limb2: 0x7289be33cc622a77, limb3: 0x0 }, u384 { - limb0: 0xc1630e7fcdac54e06eeef59c, - limb1: 0x57bea72cb2a8817a52a4624b, - limb2: 0x7b115a182bb1436, + limb0: 0x4a3fea57fd63847a60e0e74a, + limb1: 0x617d5e4d3b0e3bbfb6c80f3, + limb2: 0x3e6332149c6e4241, limb3: 0x0 }, u384 { - limb0: 0x47bb266312fa5641c72843c, - limb1: 0x4dc8b7086537f2fc8ada7e52, - limb2: 0x1cf46bb9017aedeb, + limb0: 0xdf951b09866e6433b1eac745, + limb1: 0xd107fc17be1c4fc46b43c1d3, + limb2: 0x438493841da782c4, limb3: 0x0 }, u384 { - limb0: 0x8944ad3ec991033082ec4874, - limb1: 0x5dfc3d576bb83499f491db12, - limb2: 0x725b69a154079817, + limb0: 0x6c0dc0b546dc4c885cd541f0, + limb1: 0xadfbefc88323eeaafd65d5d, + limb2: 0x249a8c00d8147d87, limb3: 0x0 }, u384 { - limb0: 0xe190bd02790212f16ee61c28, - limb1: 0x572209a59fc0aaf3d26c14f, - limb2: 0x6303f4bce04a5fc3, + limb0: 0x77c600dec72bcfb238e40484, + limb1: 0xd1ca9f0552a0c0160097fb3b, + limb2: 0x156308155f2e4b49, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44795,9 +44739,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xc73327d5fbb8c5198fd39b10, - limb1: 0x4eeb3498d35d849120568706, - limb2: 0x5b4924f4fac46f98, + limb0: 0x8e1f31ecd156084a3461bdbf, + limb1: 0x1b866d9b164c9b978d53e7bc, + limb2: 0x57cf134458793c67, limb3: 0x0 }, u384 { @@ -44810,15 +44754,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x63caf83c7cf753cf84816351, - limb1: 0xe53e116e4319995a08f22f78, - limb2: 0x2731424c7dc66ccf, + limb0: 0x7ffc402f604e35e3ad790cab, + limb1: 0x6440cf33ae26eeec12ee8ced, + limb2: 0x365893771f43dc63, limb3: 0x0 }, u384 { - limb0: 0xe189eb1678e990bd283e13bd, - limb1: 0x696acaa5c46490f5f57af93e, - limb2: 0x4402f11b7ffb5376, + limb0: 0x4e4d83cb00c1ce95be9f0ce0, + limb1: 0xaa572ff07ff066e6f4fa5535, + limb2: 0x412d31f71a6bc7cc, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44826,54 +44770,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x97293cbd0f54150dbe811a99, - limb1: 0x22ca68a2722d8221cc088254, - limb2: 0x55066d99c3091275, + limb0: 0xb0cf65d046d3c4df8966ffe8, + limb1: 0x102695502b4b7cc0d897cce5, + limb2: 0x4213eb71b65631e6, limb3: 0x0 }, u384 { - limb0: 0xa7b41f36f47986984500a9b4, - limb1: 0xe351a98b119975481b8b8a2d, - limb2: 0x314112a8d091015e, + limb0: 0xbc58f633f1ca94eba9f83f02, + limb1: 0x167944315e7e414f28a43c0f, + limb2: 0x49c9bd347e846bec, limb3: 0x0 }, u384 { - limb0: 0x9e6f1703e194b13375ec8276, - limb1: 0x9637e204bd37179de505f9f6, - limb2: 0x515416eb8103af15, + limb0: 0x421b4356466d85798a8a83a6, + limb1: 0x6600cdb1b8d612978d72ce16, + limb2: 0x2f955e29db488f56, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x6371aa66cbe88f88b9e13cea, - limb1: 0x8894e712f559374ee4eda82f, - limb2: 0x2c1cbd1defccdc5c, + limb0: 0xd1ca10e116a563d9e3c9a543, + limb1: 0x3a295584fceddfca98b6656f, + limb2: 0x4702e5a182dfab30, limb3: 0x0 }, u384 { - limb0: 0xed5b54f6236b189dc77befbe, - limb1: 0x17cd837082512202faa36568, - limb2: 0x5f116fbf0390967f, + limb0: 0x6e7b3a42400f52592e1f374b, + limb1: 0xd4bf23e6270e1f96dbcac207, + limb2: 0x49d33330f469629e, limb3: 0x0 }, u384 { - limb0: 0xa0d20e7ac2763e868f88dd65, - limb1: 0x48b10a935e5bc355c6962406, - limb2: 0x385e5b2431a14f55, + limb0: 0xd799416e8571590327c63299, + limb1: 0xb0df02ad6d5e776513ce3fe6, + limb2: 0x665a75a4c137b897, limb3: 0x0 }, u384 { - limb0: 0x707023342969355e7d3d7a91, - limb1: 0x16d5f27ba494d73074aae5d5, - limb2: 0x47fef2023802bb6, + limb0: 0x8ca16b270cc01772a63523eb, + limb1: 0x95d8b0410fa22cc27ea7434a, + limb2: 0x13a7404ac4fd9b49, limb3: 0x0 }, u384 { - limb0: 0xe189eb1678e990bd283e13bd, - limb1: 0x696acaa5c46490f5f57af93e, - limb2: 0x4402f11b7ffb5376, + limb0: 0x4e4d83cb00c1ce95be9f0ce0, + limb1: 0xaa572ff07ff066e6f4fa5535, + limb2: 0x412d31f71a6bc7cc, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -44883,12 +44827,25 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x98c5ab5bce4dfbf29c0fa8ab, - limb1: 0x345fb633831551ce1237750e, - limb2: 0x2026c1d5bbfbd374, + limb0: 0x6a739b2c3a5780ddc290cbe0, + limb1: 0xbf1ea121748f0fd9886c7c05, + limb2: 0x2cac820e931fa8a0, limb3: 0x0 }, - g_rhs_sqrt: array![], + g_rhs_sqrt: array![ + u384 { + limb0: 0xb88206f0c03a3bc9f5275bff, + limb1: 0x7476b98af8c9a769c6001318, + limb2: 0x3e46b52bee86fe8f, + limb3: 0x0 + }, + u384 { + limb0: 0x41e46fd8b061692d39f48613, + limb1: 0xbfd7a98dd618788d0b964e18, + limb2: 0x2bee1bac978429af, + limb3: 0x0 + } + ], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 4 @@ -44896,15 +44853,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x8d7452c66b3e50829e5494e4, - limb1: 0x29b86efc1f6cc7f4e9ed583, - limb2: 0x289f5eb384597394, + limb0: 0xb2d22e6de03a9c74634f6d17, + limb1: 0xa3349bd27b1fed9f14153fe5, + limb2: 0x14354b473884ea79, limb3: 0x0 }, y: u384 { - limb0: 0xfe84f3ee6e407c0e698f8c77, - limb1: 0x7ad169cdfa7522300a5ed1e5, - limb2: 0x53409fd9373fd265, + limb0: 0x8c254e6393d33f75db535123, + limb1: 0x9bad676c259030f6a875a0c6, + limb2: 0x76967783965f34bf, limb3: 0x0 } } @@ -44917,43 +44874,43 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xfb571ad55f2c938b9ca5118d, - limb1: 0x110074fce7e6d1d81e4ed833, - limb2: 0x6e45d5a4702f830a, + limb0: 0xbd72f27742dc976549bfcad2, + limb1: 0x8c63bda87350022c53b9169e, + limb2: 0x2383c6b5d780e426, limb3: 0x0 }, y: u384 { - limb0: 0xe7554dd8abadd1500b789cc6, - limb1: 0x2d8bd3835a213dfcb3e3bcec, - limb2: 0x154bbab1aa695d34, + limb0: 0xf2ccd6414f178d53b92410d6, + limb1: 0x78c060bd941bfa477144a384, + limb2: 0x125bd9d2a5cc3723, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x45feeae3b59bbadf46a2e2d2, - limb1: 0x6477f6599c290bb649d60f4a, - limb2: 0x55adcd0afd27a77b, + limb0: 0xc1dc15c93430d3bf43a36717, + limb1: 0x2d31c2ff44437290e6ff8ae3, + limb2: 0x6c05db3079892dbd, limb3: 0x0 }, y: u384 { - limb0: 0x5cc8405fc3bfe048c792ec28, - limb1: 0xcf34d746d42b40a4cb2c9d16, - limb2: 0x6218bc713831a95e, + limb0: 0x14fb1448390e1827cb981d23, + limb1: 0xad6a28a6df4a041922b3a0aa, + limb2: 0x5967d47f08cc5cbe, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x1d52f004071eb1371285236c, - limb1: 0x2375ac390150f7a1a9ea618a, - limb2: 0x4c27972ae647dce8, + limb0: 0xeee1072cf8ca24dfaae24bc, + limb1: 0xea972877e1fc0ce16e49bfaf, + limb2: 0x72932e9854c9e0fc, limb3: 0x0 }, y: u384 { - limb0: 0x8800f96307826c098a6fbe57, - limb1: 0x98650ddc4bae87587f58759e, - limb2: 0x7f613763f402385b, + limb0: 0x203501449aae83782b87b0f3, + limb1: 0xace3709d66e3e5dbc1131439, + limb2: 0xd7752e210e76738, limb3: 0x0 } }, @@ -44961,13 +44918,13 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xed0d04182d58bce989745cd7111868f8, high: 0xd4b2960eda678063a19607d3bfb255e + low: 0x9b78d294ed9e2414c0f8d1229dba894f, high: 0x86b18a47b1369c3d476c48495e060dd }, u256 { - low: 0xf45c88409da283380a8bc856c3edd9b7, high: 0xb1b2fe995331356074f3be044f20133 + low: 0x82888a7ac73f75c85fb5a57e7308c4bb, high: 0xc4fd9c561eae8a4bc6ceda510917a88 }, u256 { - low: 0x565af699d3bb63d75e12425cb42fb357, high: 0x44cd420a408001f743397f1ad5b9bb2 + low: 0xb9ffbf715755b5c04190e2f02777aef3, high: 0x72e7b071eb0c97f48257f66c018e04a }, ] .span(); @@ -44975,72 +44932,67 @@ mod msm_tests { array![ ( array![ - 0x0, - -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, + 0x1, 0x0, 0x0, -0x1, - 0x1, + 0x0, 0x1, 0x0, -0x1, - -0x1, - 0x0, + 0x1, 0x0, 0x0, 0x0, -0x1, -0x1, - 0x1, - 0x0, 0x0, -0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x1, - 0x1, - 0x1, -0x1, - 0x0, 0x1, 0x1, - -0x1, 0x0, 0x1, 0x0, 0x0, - 0x0, -0x1, - 0x1, -0x1, 0x0, -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, + 0x0, 0x1, 0x0, + -0x1, + -0x1, 0x0, 0x1, + -0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, 0x1, + 0x0, -0x1, 0x0, 0x0, 0x1, 0x0, 0x0, + 0x1, + 0x1, + 0x0, 0x0, 0x1, 0x0, @@ -45048,234 +45000,235 @@ mod msm_tests { -0x1, 0x1, 0x1, + -0x1, 0x0, - 0x0, - 0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, -0x1, + -0x1, + -0x1, + -0x1, + 0x1, + 0x1, + -0x1, + 0x1, ] .span(), array![ -0x1, + 0x0, -0x1, 0x0, - 0x1, 0x0, -0x1, + -0x1, + 0x0, 0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, -0x1, + 0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, -0x1, 0x0, - 0x1, -0x1, 0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, - 0x1, -0x1, - 0x1, -0x1, 0x1, - -0x1, 0x1, 0x1, - -0x1, - 0x0, + 0x1, 0x1, 0x0, + -0x1, + 0x0, 0x0, -0x1, -0x1, - 0x1, - 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x0, 0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, 0x1, -0x1, + 0x1, + 0x0, -0x1, + 0x0, -0x1, - -0x1, - 0x1, 0x0, 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x0, + 0x1, + -0x1, -0x1, 0x1, 0x0, 0x0, 0x1, 0x1, - 0x0, - 0x1, ] .span() ), ( array![ - -0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x0, -0x1, 0x1, -0x1, - 0x0, - 0x1, 0x1, + 0x0, -0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, - 0x0, -0x1, + 0x1, -0x1, 0x1, 0x0, -0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, - 0x1, - -0x1, - -0x1, 0x0, - 0x0, - -0x1, 0x1, - 0x0, 0x1, 0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x0, + 0x0, -0x1, 0x0, -0x1, - 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x0, 0x1, 0x0, - 0x0, 0x1, - -0x1, 0x1, + 0x0, + 0x0, -0x1, + 0x0, + 0x0, 0x1, + 0x0, 0x1, -0x1, 0x0, -0x1, - -0x1, - 0x0, - 0x0, 0x1, -0x1, - 0x0, - 0x0, + -0x1, -0x1, 0x0, - 0x0, - 0x0, + -0x1, + 0x1, 0x0, 0x0, 0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x0, -0x1, + 0x1, -0x1, -0x1, - -0x1, + 0x1, ] .span(), array![ - 0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x0, 0x0, 0x0, -0x1, - 0x0, 0x1, 0x1, -0x1, 0x1, + 0x0, -0x1, - 0x1, - -0x1, - 0x1, -0x1, 0x0, 0x1, - 0x0, -0x1, 0x0, -0x1, - 0x0, 0x1, 0x0, + 0x1, 0x0, 0x1, 0x1, -0x1, - -0x1, - -0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, - -0x1, - -0x1, + 0x1, + 0x1, 0x1, 0x0, -0x1, @@ -45283,29 +45236,31 @@ mod msm_tests { -0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, - 0x0, - -0x1, - -0x1, + 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, + 0x0, -0x1, + 0x0, 0x1, - 0x1, + -0x1, + 0x0, 0x1, 0x0, - -0x1, + 0x0, + 0x0, 0x0, 0x1, ] @@ -45314,167 +45269,169 @@ mod msm_tests { ( array![ 0x1, - 0x0, + 0x1, 0x1, 0x0, - -0x1, + 0x0, -0x1, -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, - 0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, -0x1, - -0x1, 0x1, -0x1, -0x1, 0x0, - 0x1, - 0x1, - 0x1, + -0x1, 0x0, -0x1, 0x0, + 0x0, 0x1, -0x1, - 0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x1, + -0x1, 0x1, 0x1, 0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, - -0x1, + 0x0, 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, 0x1, - -0x1, + 0x0, 0x0, -0x1, 0x0, -0x1, - 0x1, + 0x0, -0x1, - 0x1, 0x0, + -0x1, 0x1, - 0x0, -0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x1, + -0x1, + -0x1, ] .span(), array![ 0x0, - 0x0, - 0x1, 0x1, - 0x0, -0x1, - 0x0, 0x1, - 0x0, - -0x1, -0x1, 0x1, - 0x0, - 0x1, - -0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, - -0x1, 0x1, 0x1, -0x1, - -0x1, 0x0, - -0x1, - -0x1, - 0x1, - 0x1, 0x1, + -0x1, 0x0, 0x0, + -0x1, + 0x0, + 0x1, 0x1, -0x1, + 0x0, -0x1, - 0x1, 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x0, 0x0, + 0x1, + 0x0, 0x0, -0x1, 0x1, 0x1, - -0x1, 0x1, -0x1, - 0x1, - 0x1, 0x0, + -0x1, + 0x1, 0x1, -0x1, 0x1, 0x0, + 0x1, + 0x0, 0x0, 0x1, 0x0, 0x1, + 0x0, 0x1, - -0x1, 0x0, 0x0, - 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x1, -0x1, -0x1, 0x1, + -0x1, + 0x0, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, + -0x1, + -0x1, + 0x1, + 0x1, ] .span() ), @@ -45484,97 +45441,97 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x9afebd968dec822da11887bf, - limb1: 0x6b908cdcff76a7858d75e654, - limb2: 0x17ad217bd9f97ab0, + limb0: 0x4014a49afb631f8e1836b690, + limb1: 0x74df4a76f49519e4c3e0e6f9, + limb2: 0x7c8279fc7a089f59, limb3: 0x0 }, y: u384 { - limb0: 0x10264416cd7664020f94c558, - limb1: 0x70eabddba70df7dfcc596f3a, - limb2: 0x508e519c6431eefc, + limb0: 0xa46a399605fe9363792bb4f6, + limb1: 0x9895e623adabb56a63a8f6e2, + limb2: 0x14ca3170c1cc6aed, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x5da8f340623ce65d70ba1b35, - limb1: 0xd95fa6f96bf618d678d7a898, - limb2: 0xea7da84b30be2bf, + limb0: 0x4a10ce592a5c2a981b6844c1, + limb1: 0x8f53ada37cef2b6b98b562af, + limb2: 0x21686ec46a068d7c, limb3: 0x0 }, y: u384 { - limb0: 0x36845a90602fac778d4f82af, - limb1: 0x6ba99c0d3e34c9544f3fad48, - limb2: 0x682ed8c20beb4dec, + limb0: 0x4f9172c7aef1a21131359aff, + limb1: 0x32768c07d82704d159cedbfa, + limb2: 0x6e215538e93fb16f, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x319ed379544f0171dd726a49, - limb1: 0x20662ac9c1fc0cdc859ca7b9, - limb2: 0x3ed44c942df24dd, + limb0: 0x497eed719c2eb94bac06d4b4, + limb1: 0x79c287fa544aa1d1aa1afec7, + limb2: 0x76b9810e5d21f010, limb3: 0x0 }, y: u384 { - limb0: 0x89030a63e872113b7fddf735, - limb1: 0x37e28f91f3aa2948c26890dc, - limb2: 0x1b0fc3b31604d60f, + limb0: 0xf14e3bf5aa4fc7c3cea2fc74, + limb1: 0xfc0cb3ad5809766613cbd49c, + limb2: 0x58babf6763d5d3d8, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xa67fe8c70a0f6f656997eb5f, - limb1: 0x891cec262581dde9d186719f, - limb2: 0x3aafd907a4c13a85, + limb0: 0xa22b1e11e908dcea4d21e1a6, + limb1: 0xf5bce7a49d851cf5fc7991b9, + limb2: 0x53e56d9d0730e395, limb3: 0x0 }, u384 { - limb0: 0xa3e33f12cf918783b1797add, - limb1: 0xfddae9e9ebb9de802b525799, - limb2: 0x7ef8b14497bffc9e, + limb0: 0xe7148291e087494e09f4d91a, + limb1: 0x610589893799fc5bd4f1059a, + limb2: 0x22589aaef98fbe21, limb3: 0x0 }, u384 { - limb0: 0xfdf54364c97cac9110544cea, - limb1: 0xdf88ca730e45885eab09406e, - limb2: 0x357bdef6cc936911, + limb0: 0x48b15c6d8983c33f08586c40, + limb1: 0x95ed215de9b759b03c8d8f1a, + limb2: 0x715172dcb3593b61, limb3: 0x0 }, u384 { - limb0: 0x76e3dd9666b94da5a25dfaee, - limb1: 0xffffffffffffffff43c96a37, - limb2: 0x3fffffffffffffff, + limb0: 0x5e8c761fea977cf2be85246c, + limb1: 0xffffffffffffffffd1b71ca0, + limb2: 0x7fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x43634fab2bb82dd6089e1948, - limb1: 0xcbd3f52031961d5ba391e91e, - limb2: 0x3447e19fb1c96b18, + limb0: 0x4841a1ccc5c73433c9bf36f2, + limb1: 0xe1307fc896abd3f44cc2a866, + limb2: 0x7c66a08aaa6389cb, limb3: 0x0 }, u384 { - limb0: 0x70bae6a65eff4b176e0ef5b0, - limb1: 0xdd45ab93e4577bdf60c53079, - limb2: 0x6d0218fdd7867df8, + limb0: 0xcbb45633bc1ed5086b96eb4b, + limb1: 0xfede8ba62ca70809f5fc9ffd, + limb2: 0x634869c1b8905813, limb3: 0x0 }, u384 { - limb0: 0x4aaba2432625bc054d28291e, - limb1: 0x6fdb0315985e7a75b5701b1b, - limb2: 0xace035ad4c2b33, + limb0: 0x516aab493921d15f178a506a, + limb1: 0xefd439181aed2f4b466e4ee4, + limb2: 0x62bfc00935e3ef9a, limb3: 0x0 }, u384 { - limb0: 0x6584cac562c7e30691a603d, - limb1: 0xfb815b937b28834a607ad0a3, - limb2: 0x5837a4a9d2677de1, + limb0: 0x31ae42b1be02d2ff5fb7f292, + limb1: 0xe6f40c6971db647c931cb7d5, + limb2: 0x160b584e0236dc5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45582,78 +45539,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf0cbd462b0aaeba2876f1734, - limb1: 0xcbbc9e560829142abf92332e, - limb2: 0x5e4abdc5cb820a3a, + limb0: 0x971bac6590bec339b46c1b39, + limb1: 0x74f91ca5883ff45a21ef360f, + limb2: 0xb18092dfd4a28b9, limb3: 0x0 }, u384 { - limb0: 0x778a8ed51467ef949a92d4cb, - limb1: 0x8f4da417f1dd5d5827ac83b6, - limb2: 0x43cab8ed1dac8a29, + limb0: 0x44b0e5d9ec05c9d10475a1b5, + limb1: 0xc05c95376eabe60079e843f, + limb2: 0x40e80ea0a74a439a, limb3: 0x0 }, u384 { - limb0: 0xd66d59855373aaf75aa99b20, - limb1: 0x95bc3a87492f0d985b44c4e4, - limb2: 0x4a1f49bff8dcf4c0, + limb0: 0x3946c3ecbd31ef0ee52b7a33, + limb1: 0xfaa87c2bac5c2fc35f0b95b, + limb2: 0x5072b233ffa9c5d8, limb3: 0x0 }, u384 { - limb0: 0xc2352ad116032cd020fe5def, - limb1: 0x98d7870bc44ab8d6cafa3db9, - limb2: 0x10441740741ccf5e, + limb0: 0x30b00284d82e87bc947d56bf, + limb1: 0xa9f3946eb3b2003577dd9b09, + limb2: 0x7b78b11c04b56f85, limb3: 0x0 }, u384 { - limb0: 0x435194621ed181860e73b9f9, - limb1: 0xf05d1db8e0231dec91b5017a, - limb2: 0x28ab93cab25cc1aa, + limb0: 0x2ea8bdcbc5ab6e5eb0cf6720, + limb1: 0x96286e97d09717c0025aa7a, + limb2: 0x36a71840da052f14, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x2783af46b256d12e91783307, - limb1: 0x2e8e6276880b763f8d4b2f6d, - limb2: 0x23c74e0e66217326, + limb0: 0xfa5c939ae1d96a5580ec4097, + limb1: 0x40630c87471f1df1b1a0a729, + limb2: 0x4bef12ddf85ed03c, limb3: 0x0 }, u384 { - limb0: 0x331b4f38c3d4220566d8aa04, - limb1: 0xd18d71f11067eb688ebb7b0e, - limb2: 0x494c757a8ff512fd, + limb0: 0x81e9e6d19c3db62045459c18, + limb1: 0xfe7abdb3b5c9f929f01bd462, + limb2: 0x1e8152b4d3fb6826, limb3: 0x0 }, u384 { - limb0: 0x59f739dcbce124ea2281b9d9, - limb1: 0x82c09ee89df44e74c4f18bb5, - limb2: 0xd4d37b1f63df41e, + limb0: 0x30f2e8e1f80ab452bb8c9a55, + limb1: 0xad2613be4d7276a2de25b761, + limb2: 0x20a5147c607bc3ab, limb3: 0x0 }, u384 { - limb0: 0xfa5c509cb0f5bacee89d16c2, - limb1: 0x1eb97ca7460853bd4b96bfa4, - limb2: 0x76fd8a72c0e801e9, + limb0: 0xf01f35262f3158f2b812bf45, + limb1: 0xc80f236b0970d7c35c7555e1, + limb2: 0x2a4fc088fe34ae51, limb3: 0x0 }, u384 { - limb0: 0xde2b65283e7a16857d54ecfa, - limb1: 0x35d87602bbc56b160b3a7d92, - limb2: 0x61c89eb487b7babc, + limb0: 0x950d4851b5f85d0f853fa0f1, + limb1: 0xe4e9ddc80bc7ea207b1dfde4, + limb2: 0x2548f4fd1983ebbe, limb3: 0x0 }, u384 { - limb0: 0x5750cd3ad2979d9445e4404b, - limb1: 0xa172e422f9d9b84c2128d178, - limb2: 0x5dfb8d095305ea19, + limb0: 0x5e0fd640e593b2ee104667aa, + limb1: 0x216c1a257c686d21b2270541, + limb2: 0x400e6cdcdb9dae81, limb3: 0x0 }, u384 { - limb0: 0x6584cac562c7e30691a603d, - limb1: 0xfb815b937b28834a607ad0a3, - limb2: 0x5837a4a9d2677de1, + limb0: 0x31ae42b1be02d2ff5fb7f292, + limb1: 0xe6f40c6971db647c931cb7d5, + limb2: 0x160b584e0236dc5, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45663,51 +45620,51 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x12c385f8433be119db8460d1, - limb1: 0x1d66c8cafc4b7334e4837014, - limb2: 0x52afce441964abaf, + limb0: 0xbeb8fee42072bb5a8144cde, + limb1: 0xfe87ea9093935f5004c69b3f, + limb2: 0x6fdab37f64a50120, limb3: 0x0 }, u384 { - limb0: 0x920527e5ae6d3780dfccbd4b, - limb1: 0xfb4f767cde380f20380462c1, - limb2: 0x513d48b698f06581, + limb0: 0x651e425832ff2db865ea96d6, + limb1: 0x9e1c934f2569be1a6fd676d6, + limb2: 0x2ee6541a86c26e93, limb3: 0x0 }, u384 { - limb0: 0xaa69eae2dcd019809111a6d4, - limb1: 0xe1ac7e1045a532abd2c74187, - limb2: 0x5d3a5c37e4fb84cb, + limb0: 0x17d9a3f2e73a81324ca52570, + limb1: 0xa920071b0767ae603be4943a, + limb2: 0x674c29703e811c2c, limb3: 0x0 }, u384 { - limb0: 0x30e144ad6f226327a440849c, limb1: 0xb8edcb4, limb2: 0x0, limb3: 0x0 + limb0: 0x50a59c264e4a932e1d45e1cd, limb1: 0xefbe294, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x88cb7d1020e792bf4b34ba6c, - limb1: 0xb42ab1b5639646df61f1d062, - limb2: 0x60139d814ecea2aa, + limb0: 0x4c56c075f1ec4600eeeefc4, + limb1: 0xb7953d72f77690017c23f7f9, + limb2: 0x1f975e03f9b50185, limb3: 0x0 }, u384 { - limb0: 0x6e6d70959f59389e36452f61, - limb1: 0xe4ac76e535f327d61bbef5b1, - limb2: 0x370fa6f1d532fbb5, + limb0: 0x98f0052108d90ba47ab80805, + limb1: 0xdec49657710643abecbff75a, + limb2: 0x459193765a097929, limb3: 0x0 }, u384 { - limb0: 0xbd7f5b25b98085402b134be5, - limb1: 0xd851ac60e9b106410a19449c, - limb2: 0x4a72207236fabccd, + limb0: 0xa285e16cce7b6c7b0ea37dd9, + limb1: 0x19554a176e2f8764e28c2e98, + limb2: 0x5a5b7806f68e9d15, limb3: 0x0 }, u384 { - limb0: 0x43ae170281dc1a009978ccc7, - limb1: 0x8db241770ea911f975190e5f, - limb2: 0x613ceba0f95515d2, + limb0: 0x27b218f38f09c7f55c866461, + limb1: 0xcc7fa93ce98152f5be483c1f, + limb2: 0x5c7ac0bcf0257fa2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45715,78 +45672,78 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x6df336cea3188e1d8f74775a, - limb1: 0x2d37c52d81f2d0731c7c9b10, - limb2: 0xf163110dfc83716, + limb0: 0x258da7ad969f73c3afeb9afb, + limb1: 0x69626bc69cb95ab6806cd6e3, + limb2: 0x468187fc66c723f6, limb3: 0x0 }, u384 { - limb0: 0xd7e9aea51ce2dc40e5572909, - limb1: 0x619c79f35dcde284ff2fab96, - limb2: 0x149b83787d3c076, + limb0: 0xaf26a607b07cb1aeb1165b75, + limb1: 0x5eafed736d0b4e1aed69bef, + limb2: 0x5b8ba711295a39f0, limb3: 0x0 }, u384 { - limb0: 0xe9b77a2c597cbeee785e7236, - limb1: 0x40555b8a6439139eec55ca12, - limb2: 0x23571d91dee2444a, + limb0: 0x546e0d02102a4b1dbe10db41, + limb1: 0x7b69cd8ec4ef2b1646592b1c, + limb2: 0x541dbcd18681156a, limb3: 0x0 }, u384 { - limb0: 0x8c7a60de0fca53c232628603, - limb1: 0x1b9b330b5fa0c0a18a2e1ad0, - limb2: 0x2e110063e8d9bbef, + limb0: 0x9aff0bd3232bf348697ee36b, + limb1: 0x5f4d04fb0008a93f30dc4eaa, + limb2: 0x79eb0ae45e32a16f, limb3: 0x0 }, u384 { - limb0: 0xc998a228969505e90f94376c, - limb1: 0xe2df48594dc70c8e68899b0f, - limb2: 0x15294367bcedee2b, + limb0: 0x1348ccaed512bdd01a76920, + limb1: 0x40fe194f3f1e8b4069423406, + limb2: 0x7d3783e3df228154, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7dd9ec2fc5dd095af61a06fc, - limb1: 0xd58511b8435ee0f60230f26, - limb2: 0x7d17dbf38efed98f, + limb0: 0x20e805c9e21aeeeff211bc89, + limb1: 0xf84c100582479b96fbd69dd1, + limb2: 0x3cde57c51fd2eeb5, limb3: 0x0 }, u384 { - limb0: 0x3f741bdabee38c7ce2668d9c, - limb1: 0x3fdbca1a3e40afa55a9de52e, - limb2: 0x4e38463a213490ff, + limb0: 0x87909e76645d93f06bd3bc96, + limb1: 0x24f1431e15280d869919e60, + limb2: 0xe97dccd29db6f80, limb3: 0x0 }, u384 { - limb0: 0x40ef6ce57d6953525fd86870, - limb1: 0xab6644a82c859a6088e9ec01, - limb2: 0x78c602b8e541c257, + limb0: 0xa10da749bf9fadd1995737cb, + limb1: 0x2ad550c65dab0a5eca6730bb, + limb2: 0x36b2201ab223ac88, limb3: 0x0 }, u384 { - limb0: 0x6554692824a4ff08c7fbddbd, - limb1: 0xdf41e6e00c2be5dadeaed63a, - limb2: 0x101545a2c140ce4c, + limb0: 0xdf22f14f73cbd112caea6f07, + limb1: 0xf057782eb36e073b86c2db1b, + limb2: 0x271b3d19d4ca212b, limb3: 0x0 }, u384 { - limb0: 0x47cb80bedcdde9d115e1a8d3, - limb1: 0xd72161644e045f314f3e92f9, - limb2: 0x2b03bc73db4a8f90, + limb0: 0xe84973e31669b436b7d4bb08, + limb1: 0xfe6366833cd53c4eb634ece, + limb2: 0x12efe8ff72d040d2, limb3: 0x0 }, u384 { - limb0: 0xca24861d65f266cf23cf6325, - limb1: 0x9e98d6e4b2c441775d1faf9, - limb2: 0x27c0cd45dcb47bb4, + limb0: 0xaf2b0c647aed4e0a075f9519, + limb1: 0x4aed2b24cfaac53b4e44e4f5, + limb2: 0x37aa24da9c485bfb, limb3: 0x0 }, u384 { - limb0: 0x43ae170281dc1a009978ccc7, - limb1: 0x8db241770ea911f975190e5f, - limb2: 0x613ceba0f95515d2, + limb0: 0x27b218f38f09c7f55c866461, + limb1: 0xcc7fa93ce98152f5be483c1f, + limb2: 0x5c7ac0bcf0257fa2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45796,9 +45753,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xefeebbc9cf6cfe3c05f2dce6, - limb1: 0x375e2e44d55e94882a21bf3f, - limb2: 0x747a6c0a2427e4e0, + limb0: 0xbd5db36655ba5f14dc6006ab, + limb1: 0x810693570e520accfc32ff00, + limb2: 0x5e3fa24cbf8e315c, limb3: 0x0 }, u384 { @@ -45811,15 +45768,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x5be8722e4e5e43a38c1d3dd2, - limb1: 0x558c68fbd496d65d364beeab, - limb2: 0x7955c634dd26c573, + limb0: 0x98f9f423e72d450bf3cb900e, + limb1: 0xfcecc11930633fea1d752a8d, + limb2: 0xac587da8e17079c, limb3: 0x0 }, u384 { - limb0: 0x70b8394649741830b1d37a6f, - limb1: 0x63a2e3cd20dda4d018bafae, - limb2: 0x6d6ae0b20a14f863, + limb0: 0x6c70443539751c1c3890e665, + limb1: 0xf6e9ca622ec632c2bd2f9e89, + limb2: 0x67de102d38d78272, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45827,54 +45784,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x2f27a6e6582029796af94381, - limb1: 0x37c97234f4a298d1ed9870e7, - limb2: 0x3333caaffb83893e, + limb0: 0x76ffea2caa1e3771a7f62af3, + limb1: 0x6bab271d6793059551a46d6d, + limb2: 0x7fc6eeea326451e6, limb3: 0x0 }, u384 { - limb0: 0xdc9650c8c06b37a451a61088, - limb1: 0xa3cc59854d18c3f827650685, - limb2: 0x48b9b352cb8c1a76, + limb0: 0x3d2d79150217c1cf3e72b158, + limb1: 0xf3b8b21e6d16192ca7bca69e, + limb2: 0x2f0e912370a3319a, limb3: 0x0 }, u384 { - limb0: 0x296da434257919b4927f4432, - limb1: 0xcd742db4e53a496f3707ea0f, - limb2: 0x4b6b2df8d6994566, + limb0: 0x1ba4fd159a3059b4ba78a182, + limb1: 0x3ed580f1f61ff96a8f8a7949, + limb2: 0x3d787df797b52f28, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x46a7723e2a40239304b84bc8, - limb1: 0xcc65baa9d6ae4869be685628, - limb2: 0x3ad7c330ff6ee80d, + limb0: 0xe9f30d9c762e83a795ad244e, + limb1: 0x8479eb87fc6092d46cad89ff, + limb2: 0x12590c8e66a04087, limb3: 0x0 }, u384 { - limb0: 0xb7c889d2c2905b42b18c3fd7, - limb1: 0x9b1f6ccf388d94001f08163d, - limb2: 0x489d7fbe68b0b959, + limb0: 0x5831c0291546e9cf03509003, + limb1: 0x1fac3b37a83e876321c322, + limb2: 0x39ff73cacaf19d55, limb3: 0x0 }, u384 { - limb0: 0x87e82313fc02f31a1b8a68f5, - limb1: 0xe2d40d8138780128eaac891, - limb2: 0x44a9c090e720792a, + limb0: 0xf2a214d340a83a64fa71673d, + limb1: 0x9ec7898c85c05d89bfccfff0, + limb2: 0xd505f79eca55c24, limb3: 0x0 }, u384 { - limb0: 0x688d9d25fad0253284d95512, - limb1: 0x87244a0936121433a204a508, - limb2: 0x56a4730882e08459, + limb0: 0xa59f1f1b939f269aec87a73b, + limb1: 0x2e84a22691de7dc0892de0ea, + limb2: 0x681434ae33d0c683, limb3: 0x0 }, u384 { - limb0: 0x70b8394649741830b1d37a6f, - limb1: 0x63a2e3cd20dda4d018bafae, - limb2: 0x6d6ae0b20a14f863, + limb0: 0x6c70443539751c1c3890e665, + limb1: 0xf6e9ca622ec632c2bd2f9e89, + limb2: 0x67de102d38d78272, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -45884,9 +45841,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xb705e41602811594671a65d2, - limb1: 0x25889ae52738566396a0a533, - limb2: 0x17ddf3014b92b403, + limb0: 0xe65f83c0cbab29c59e85c56e, + limb1: 0x182a730628a00d0cbc44d423, + limb2: 0x25b6ceed856e6fc8, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -45897,15 +45854,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x6982dde357f938c9fb9a1acb, - limb1: 0xf19a882a89be2c9b9c857801, - limb2: 0x7b816e98da587ae8, + limb0: 0x69934d68ef28902dc998f60f, + limb1: 0x3ae1a5350e16ae2e9ac4e818, + limb2: 0x255e3b92db938e51, limb3: 0x0 }, y: u384 { - limb0: 0x412b7bcbde39510eb9bd5f08, - limb1: 0x245c9b78de5dc5f7d33f2b95, - limb2: 0x2af3c134087ab1d3, + limb0: 0x8b874350635a4ff4102e58ed, + limb1: 0x5ca409676f9000321968b095, + limb2: 0xfca30b1402312fc, limb3: 0x0 } } @@ -45918,57 +45875,57 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x8a3d07eef95f48e841bdbb3a, - limb1: 0xc78a0771a90f24d8c8241ea2, - limb2: 0x11b3cf75e9714ce9, + limb0: 0xd4551d97c2b65ea42648f266, + limb1: 0x9dd929c783a8e2656f87e29f, + limb2: 0x36bdf687a4819b7c, limb3: 0x0 }, y: u384 { - limb0: 0x516419594d8c4343c58937b4, - limb1: 0xd42ba0fa747c60b950253e6, - limb2: 0xb13e1e1a7bf2803, + limb0: 0xe06e405030e9e9942bde8c6b, + limb1: 0xca04f2ba88420f46b6abe1d4, + limb2: 0x4afccb8ab6f51ace, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x965e5918473469806b956d4f, - limb1: 0xca370f580d3f672c37286d28, - limb2: 0x4ec5cd0a5107e16b, + limb0: 0x77c3f62aa9e39bb023abb55c, + limb1: 0xfb9bb556f8bfb40b0f6e1099, + limb2: 0x4c8e2d52e7281e76, limb3: 0x0 }, y: u384 { - limb0: 0xebf7e4db6ce194233cf28a12, - limb1: 0xfe410bca44bc09741a9c1ecc, - limb2: 0x4a7f73f803ae851e, + limb0: 0x565d70466fb2f7ebde85ea2e, + limb1: 0x5d670677e1afe55d59b654c9, + limb2: 0x316d664f1ff8a80d, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xed96f2783f1299eeffbaf38f, - limb1: 0x7046a37eceb1c2257cda3b9b, - limb2: 0x3cbaecf2cb6ef914, + limb0: 0xbc60148b32a2c58eebcf38d2, + limb1: 0x921a7ea00a9e61ddd2937435, + limb2: 0x62a86290bd144f02, limb3: 0x0 }, y: u384 { - limb0: 0xac0f1d462b56662f7e7e022c, - limb1: 0x5209ec43ccf8f3077e742932, - limb2: 0xcda2218dfc347b2, + limb0: 0xde111cfba93ca807efeb6c8a, + limb1: 0x6fdd271c2b6f62e9707cfa, + limb2: 0x689186d8d8ac93e8, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xf84f2d0980543572111d7ba, - limb1: 0xbc0520804a13dfb95a234c49, - limb2: 0x4c84295f62898654, + limb0: 0x1bf6bca42f0e80de69ba54ff, + limb1: 0x55242c2046ca7b5c987e568a, + limb2: 0x64faf764fa28aae2, limb3: 0x0 }, y: u384 { - limb0: 0x4f6a53ecb9e0583105306924, - limb1: 0xd1f2db11a20d019d7cb8c9c, - limb2: 0x6350706c270cb22c, + limb0: 0xea624a100c7ab8acb2a7b617, + limb1: 0x4da0aacf9d39e18adb79c5d0, + limb2: 0x53b15d05a00c4e8e, limb3: 0x0 } }, @@ -45976,16 +45933,16 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xdcff697dd26d028dd1f15ee755e9718e, high: 0xb3bca633f9bbcfc742c59053bcab3ea + low: 0x99d60177dee770e4bdb61068f9f64795, high: 0x7f9b21e0f62319eab3b0d3dbc5ed083 }, u256 { - low: 0xf5652d0067a4eb268d6e44f20189a5d9, high: 0x72adf7572323dc9c67781b2c3a31607 + low: 0x8ead69a92d8d779a0824266a5ae00f12, high: 0x89407fe117e6a12288dbaab72dc5d1f }, u256 { - low: 0x7a2be04940d2d16f3db612f46df2fc82, high: 0xe1becf73a6f36fa241813ef799fde33 + low: 0xd92f61fdc3b3a3dc266d09a7a06a5786, high: 0x1f4ab4d150ac785de0a77613e35a237 }, u256 { - low: 0x7c76a592a73e3f3b5c27761d4894d9fc, high: 0x4c30990edf6b1e0ee8f0e0999755cb9 + low: 0xcbe743637528a9d8cf9e9b3557d25e09, high: 0x399647a023595f493ce64a4549e9b33 }, ] .span(); @@ -45993,169 +45950,168 @@ mod msm_tests { array![ ( array![ + -0x1, + -0x1, 0x1, - 0x0, 0x1, - -0x1, 0x1, 0x1, -0x1, - -0x1, - -0x1, + 0x0, + 0x1, 0x1, - -0x1, - -0x1, -0x1, 0x1, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, + 0x1, + 0x1, 0x0, 0x0, -0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, 0x1, - 0x0, + 0x1, 0x1, 0x0, 0x0, + -0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x1, 0x0, + -0x1, + -0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, 0x1, + 0x1, -0x1, 0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, + -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x1, 0x0, -0x1, - 0x1, - 0x0, 0x0, + 0x1, 0x0, + -0x1, + 0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x1, - 0x1, - -0x1, - 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, + 0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, -0x1, + 0x1, ] .span(), array![ + -0x1, + -0x1, + 0x0, 0x1, + 0x0, + -0x1, 0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, 0x1, 0x1, 0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x1, - -0x1, 0x0, 0x1, -0x1, - 0x1, - 0x1, -0x1, - 0x1, - 0x0, - 0x0, 0x0, -0x1, + -0x1, 0x0, 0x1, + 0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, 0x1, + 0x0, + -0x1, -0x1, 0x0, + -0x1, + -0x1, + 0x1, + -0x1, 0x1, - 0x0, -0x1, -0x1, -0x1, -0x1, 0x0, + 0x0, + 0x1, + -0x1, -0x1, 0x1, 0x1, 0x1, 0x0, -0x1, - 0x0, -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x1, 0x0, 0x0, -0x1, - 0x0, - 0x1, - 0x0, 0x1, 0x1, - -0x1, - -0x1, - 0x1, - -0x1, 0x1, 0x0, -0x1, 0x1, 0x0, -0x1, - -0x1, - -0x1, 0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, - 0x0, 0x1, ] .span() @@ -46163,128 +46119,138 @@ mod msm_tests { ( array![ -0x1, - 0x0, - -0x1, - -0x1, - 0x1, - -0x1, - 0x1, - 0x1, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - -0x1, 0x0, 0x0, - 0x1, + 0x0, 0x1, 0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, + -0x1, 0x0, -0x1, + 0x1, 0x0, -0x1, + -0x1, 0x1, 0x1, 0x1, - 0x0, - 0x0, + -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x0, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, 0x1, + 0x1, 0x0, + 0x1, -0x1, 0x0, -0x1, 0x1, -0x1, - -0x1, 0x1, - 0x0, - 0x0, - 0x0, + 0x1, 0x1, -0x1, - -0x1, - 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, + -0x1, 0x0, + -0x1, + 0x1, 0x0, 0x0, 0x0, - 0x0, - -0x1, + 0x1, 0x0, 0x1, 0x1, + -0x1, 0x1, + 0x0, + 0x0, 0x1, + 0x0, -0x1, 0x0, -0x1, -0x1, + 0x0, -0x1, + 0x1, + 0x0, -0x1, + 0x1, ] .span(), array![ + 0x0, + 0x0, -0x1, + 0x1, + 0x0, + 0x1, + 0x0, + 0x0, -0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, -0x1, 0x1, -0x1, - -0x1, 0x1, 0x0, - 0x0, + -0x1, 0x1, - 0x0, -0x1, -0x1, 0x0, 0x1, + 0x1, -0x1, - -0x1, + 0x1, + 0x1, -0x1, 0x0, - -0x1, - -0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, 0x0, + 0x0, + 0x0, + -0x1, -0x1, -0x1, - 0x1, 0x0, + 0x1, + -0x1, 0x0, 0x0, 0x1, @@ -46292,38 +46258,27 @@ mod msm_tests { 0x0, -0x1, 0x1, - -0x1, - 0x1, 0x0, - 0x1, -0x1, 0x1, -0x1, - 0x1, - -0x1, - 0x1, - 0x1, 0x0, - -0x1, - -0x1, 0x0, 0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, -0x1, - 0x0, - 0x1, + -0x1, 0x1, 0x0, -0x1, - 0x0, - 0x0, - 0x0, -0x1, -0x1, -0x1, + 0x0, 0x1, 0x1, ] @@ -46331,222 +46286,221 @@ mod msm_tests { ), ( array![ - -0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, + -0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x1, 0x1, 0x1, -0x1, + -0x1, 0x0, 0x1, 0x0, 0x0, + 0x0, + 0x1, + 0x1, + -0x1, + -0x1, 0x1, 0x1, - 0x0, -0x1, 0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x1, - -0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x0, - -0x1, - 0x0, - 0x0, -0x1, + 0x1, -0x1, 0x0, 0x1, + 0x0, 0x1, 0x1, - 0x1, + 0x0, 0x1, -0x1, 0x0, + 0x0, + 0x0, -0x1, - -0x1, - -0x1, - 0x1, - 0x1, + 0x0, 0x1, -0x1, - 0x1, + -0x1, 0x0, - 0x1, -0x1, 0x0, + 0x0, + -0x1, 0x1, + 0x0, + -0x1, 0x1, -0x1, 0x1, - 0x0, - 0x0, 0x1, - 0x0, + 0x1, -0x1, 0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, 0x1, 0x0, - 0x1, + 0x0, + -0x1, + -0x1, ] .span(), array![ + 0x1, -0x1, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, -0x1, 0x0, 0x1, 0x1, 0x1, - 0x1, - 0x1, - 0x1, + -0x1, 0x1, -0x1, 0x0, - 0x0, - -0x1, - -0x1, -0x1, + 0x0, + 0x0, -0x1, - 0x1, 0x0, -0x1, 0x0, - 0x1, 0x0, + 0x0, + 0x0, + 0x1, + -0x1, -0x1, -0x1, 0x0, + 0x1, 0x0, + 0x1, 0x0, - -0x1, 0x1, 0x1, -0x1, - 0x0, - -0x1, -0x1, - 0x0, - 0x1, 0x1, + 0x0, 0x1, + -0x1, 0x1, + -0x1, 0x0, 0x0, 0x0, 0x1, - 0x0, -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x0, + 0x0, -0x1, + 0x1, -0x1, 0x0, - 0x0, -0x1, - 0x0, -0x1, -0x1, 0x0, 0x1, 0x1, - 0x0, - 0x0, -0x1, -0x1, 0x1, -0x1, - 0x1, - -0x1, + 0x0, -0x1, + 0x1, + 0x1, -0x1, 0x1, - 0x0, + 0x1, + 0x1, + -0x1, 0x1, ] .span() ), ( array![ - -0x1, 0x0, - 0x1, - -0x1, - 0x1, + 0x0, 0x0, -0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x1, 0x1, + -0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, + 0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x0, - -0x1, 0x1, 0x1, -0x1, 0x0, - 0x0, -0x1, -0x1, 0x1, - -0x1, + 0x0, 0x1, 0x0, 0x1, -0x1, + 0x1, -0x1, -0x1, 0x1, + 0x1, + 0x1, + 0x0, -0x1, -0x1, 0x0, - 0x0, 0x1, - -0x1, + 0x1, -0x1, -0x1, 0x1, @@ -46554,113 +46508,114 @@ mod msm_tests { 0x0, 0x1, 0x0, + 0x0, 0x1, - -0x1, 0x1, 0x0, - -0x1, - 0x0, - 0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, + 0x1, -0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, + 0x1, 0x0, 0x0, 0x1, 0x1, - 0x0, 0x1, - 0x0, 0x1, + -0x1, + 0x1, + -0x1, + 0x1, + -0x1, + 0x0, + -0x1, + -0x1, ] .span(), array![ - 0x0, 0x1, -0x1, 0x0, - 0x0, -0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, 0x0, - -0x1, 0x0, - 0x1, - -0x1, - 0x1, 0x0, 0x0, -0x1, -0x1, 0x0, - 0x0, - 0x1, -0x1, -0x1, + 0x0, -0x1, -0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x0, + 0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x0, + -0x1, + -0x1, 0x1, + -0x1, 0x1, -0x1, -0x1, - 0x1, 0x0, + -0x1, 0x0, 0x0, 0x0, 0x0, 0x0, - 0x1, 0x0, - 0x1, - -0x1, -0x1, -0x1, 0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x0, - 0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x1, - -0x1, 0x0, 0x0, 0x1, 0x0, + -0x1, + 0x1, + -0x1, 0x0, -0x1, -0x1, - 0x1, + -0x1, -0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x0, + 0x1, + 0x0, + -0x1, ] .span() ), @@ -46670,109 +46625,109 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xd251fce1afa4dc1c97bd4ccc, - limb1: 0xc10233cf5f929ea7876a059, - limb2: 0x10e336cf8b62359f, + limb0: 0xf95437a10ed73f191376b9b4, + limb1: 0x43a612070db777c1409ab968, + limb2: 0xba85f1f61de1d65, limb3: 0x0 }, y: u384 { - limb0: 0x49ddd16a704f3260cb8e59d9, - limb1: 0x4a7780cedd738ecf40fa0dc5, - limb2: 0x2b4e832796a70e05, + limb0: 0xcdfbdab941984632529056e4, + limb1: 0x55152ce6d4acdca9b90d2f18, + limb2: 0x660907bc945c04da, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xda16dd0966f8637a29488734, - limb1: 0x2ae101ef6550a65df03e679c, - limb2: 0x54417b1c1f90562c, + limb0: 0xe2a4ad264670d8a7fada0319, + limb1: 0xf0a85b9217d3b87925ecae68, + limb2: 0x615190405e896617, limb3: 0x0 }, y: u384 { - limb0: 0x4d07dd7e858bfdef43de86cc, - limb1: 0xd59cac3a48821e2d1979728e, - limb2: 0x686a45b15fdbb285, + limb0: 0x2907ce72c120dac5ddc3519c, + limb1: 0xbad3cd0b5ae30abc759fdeca, + limb2: 0x33e6f5cc41ca904f, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xe4f2a80c742621afe7b77405, - limb1: 0x11d0638ea2b8e36fc72fda42, - limb2: 0x594471fda88d81f7, + limb0: 0xc96b5ed16d70a71ac13ccc9c, + limb1: 0x50021b5b51d8d3e8564f31e7, + limb2: 0x54bc1715fb3e2a82, limb3: 0x0 }, y: u384 { - limb0: 0x4349428290a3bbca5504df63, - limb1: 0x84346b2caeef8243c055e77, - limb2: 0x36390fbd70d93958, + limb0: 0x73aa1a7b496ce010ca8ca39e, + limb1: 0xdfb67ad4fd2c42f77d57f756, + limb2: 0x77246d6fa0d3912d, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x80d62a97a0a6e053c9bae89b, - limb1: 0xa3ae285ad7852ea179cef7a0, - limb2: 0x42b9c6eae5155410, + limb0: 0x1fb83974e1d7a792fa3ebec5, + limb1: 0x2a81643cfedb26070ba28697, + limb2: 0x59a47c9a4a9e2131, limb3: 0x0 }, u384 { - limb0: 0xd0697b2bd63eda9d6931cf1b, - limb1: 0xc5aeab8d801b6ab6869b1803, - limb2: 0x405c63b8f0685e34, + limb0: 0x742cb12fb6f627b98fe187c7, + limb1: 0x655503ae9f113ebc2ce8430b, + limb2: 0x17fef99b8ed1f8f5, limb3: 0x0 }, u384 { - limb0: 0xddef13730901384bfb1d75da, - limb1: 0x64957942789808ce7759a8a, - limb2: 0x3671e23d39969515, + limb0: 0xe678699f3cf4ff0a9eef566, + limb1: 0xa2debf999aaa267c6f5ae15, + limb2: 0x7271e9442135de5a, limb3: 0x0 }, u384 { - limb0: 0x904805fdb617c172530fab52, - limb1: 0xbe2992ebba456f4b1e9d6c14, - limb2: 0x53b42a44656728d4, + limb0: 0x9051d0938c08ccc3f3edcf0d, + limb1: 0x81699f3f07105717fbf35e6e, + limb2: 0x4c65d19d508f1569, limb3: 0x0 }, u384 { - limb0: 0x8dc8f32f1a53fa8e34bbf129, - limb1: 0xffffffffffffffff9321ebb7, - limb2: 0x7fffffffffffffff, + limb0: 0x88b8ee01f57fd23cf586de29, + limb1: 0xffffffffffffffff6c2eb040, + limb2: 0x3fffffffffffffff, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x4c7019b611e6ef87fa2794c0, - limb1: 0xe3f5bef321976afecb407589, - limb2: 0x7d320d8969fae2ec, + limb0: 0xd4e4deb84ce4ee5f9e046b0f, + limb1: 0xe99f882a96db54be40bcc34a, + limb2: 0x2fa3cbd6a7a72673, limb3: 0x0 }, u384 { - limb0: 0x2e26896dd0d13ca46f5b136d, - limb1: 0x9ff82ed0084de5316e653aa9, - limb2: 0x28ed97a6cadba258, + limb0: 0x87c98d06bb48cb5e2e07985a, + limb1: 0xb12d93d7d6a4940f562ab04, + limb2: 0x6cd348cd14000185, limb3: 0x0 }, u384 { - limb0: 0xf9ee02eba9bee3ad5c613ed6, - limb1: 0x4cb23c509bea623078383f0d, - limb2: 0x5b0aaf0954a03d77, + limb0: 0xfd784503eba384c9db5d319a, + limb1: 0xb2a8a35690d9226a665b704d, + limb2: 0x6607163d39f43111, limb3: 0x0 }, u384 { - limb0: 0x490331ea19ce67030c6673e6, - limb1: 0xae2b70321ed5fbd38a3d4f42, - limb2: 0x53b66da870caf0fa, + limb0: 0x18d1f53b4d6e7e6bfd2820b7, + limb1: 0xebb1af809c6b18ebd0af944, + limb2: 0x1ad1dc4654551a96, limb3: 0x0 }, u384 { - limb0: 0xff6bcce38af94349a22bf3c, - limb1: 0x35e301fa3af2a831b13f4bf6, - limb2: 0x564165e0c2c1ca2, + limb0: 0xe23be36d22dd80254d0b1080, + limb1: 0x3ba6641a24771493d55d889d, + limb2: 0x296823105b3b2ec2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -46780,90 +46735,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x77affb60ca74b6f74124c683, - limb1: 0x54badfec393a061f6257953c, - limb2: 0x1f856934fd362d72, + limb0: 0xbb727afec6cd7c39e94eeb79, + limb1: 0x5ca6f8e52e7fd299b531e175, + limb2: 0x6b38859483e65d91, limb3: 0x0 }, u384 { - limb0: 0xfe5af2af6044ea155b7ff69e, - limb1: 0x44e6452b81496892ec941755, - limb2: 0x3e62dcb66d621ca8, + limb0: 0x503d7c7c24b2313ad733930e, + limb1: 0x5142cc1db00d0adcd2197f2f, + limb2: 0x453d6b7b7a3f791f, limb3: 0x0 }, u384 { - limb0: 0xc76ff5fe676fffc666cfca3d, - limb1: 0x4a4cf315523b8fce5d31c406, - limb2: 0x4e9b1769470d02f2, + limb0: 0x4f2e9ef9f89d27d2d16ceadd, + limb1: 0xdc577d93ced4ed4ba1c5a27a, + limb2: 0x398bd26e3c30c0ee, limb3: 0x0 }, u384 { - limb0: 0x1a43144421ae6ee823d26680, - limb1: 0x53253fd564d16dda3deac8aa, - limb2: 0x363521980f1d793b, + limb0: 0xb2849a26eef47e03c5cab88c, + limb1: 0x6a9c5dd34a4b4f56a2fb9832, + limb2: 0x791c4bce2b2bbf90, limb3: 0x0 }, u384 { - limb0: 0x427fe345c75a2a3766abc682, - limb1: 0x88d12467db413434b5b70d18, - limb2: 0x356687d98cee48eb, + limb0: 0x6a24f16f4fd6471e4d6baa62, + limb1: 0x153a8cccfb59218bac8a2495, + limb2: 0x5db71e5e08c9d665, limb3: 0x0 }, u384 { - limb0: 0xbc7e9686834c027850b4377f, - limb1: 0x339df449c1600bc0aaa0cff3, - limb2: 0x3d9a83ec8b4d6ea1, + limb0: 0x49dfb51af71e9b6ee79cf124, + limb1: 0x183721d136b314f64928260c, + limb2: 0x58964019f27ac684, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x5e7116260823e4bec2a50618, - limb1: 0x3c569512f148ec3122382f9, - limb2: 0x6bb20852e295fd6d, + limb0: 0x7e780bcc8a99b635a30845fd, + limb1: 0x8d110e83cac3a344df36aa07, + limb2: 0x3d4184a9a685f0f6, limb3: 0x0 }, u384 { - limb0: 0x49d49471f2d87b4c4a00bdac, - limb1: 0x997840069d225d0584196cc9, - limb2: 0x3bb44b63ed56e7c, + limb0: 0xcf04bd3128a89f6fbcbbe40d, + limb1: 0x964902bbcf6f3ef3f2097c47, + limb2: 0x623d475c9a0041ba, limb3: 0x0 }, u384 { - limb0: 0x6995d1158dc4ce67ea9ed88b, - limb1: 0xc33135dd5a7e7b4a16281be6, - limb2: 0x3702769ed3286d64, + limb0: 0x6d5f4deba28e8c161a01cc1d, + limb1: 0x5abc24c4ce1d031826398420, + limb2: 0x58d6e455a87372dd, limb3: 0x0 }, u384 { - limb0: 0x1439346a93ca765393b81e97, - limb1: 0x79590e8b0ce6c7bc21d7ac84, - limb2: 0x3db87c2c5341c609, + limb0: 0x3862a014b62e52605c15a21f, + limb1: 0x85d9da247fae7e1a69bfd1df, + limb2: 0x764a858d7332345f, limb3: 0x0 }, u384 { - limb0: 0x5a22a4f6c7fdabc5e5bc6b59, - limb1: 0xac2270579f1ff1923d614b46, - limb2: 0x69030c220ee9b863, + limb0: 0xf4fd9c3f56415650faa65277, + limb1: 0x21043f030b419402021cf639, + limb2: 0xf246a321aa247f0, limb3: 0x0 }, u384 { - limb0: 0x29da3ded57a2105c309e1a9c, - limb1: 0xe1c12217b6c9bdcd7f77672b, - limb2: 0x655b8427e0cbe072, + limb0: 0x10c10e6c205714ebc418d627, + limb1: 0x673f3c19ed99b94b957f8fe, + limb2: 0x6c4083387c3f750e, limb3: 0x0 }, u384 { - limb0: 0x55a85ce1c640489205228b26, - limb1: 0xdfc3513f805139a9f5f6059f, - limb2: 0x31051a7c1684afe0, + limb0: 0x25772032f9e05ffaf5e437e4, + limb1: 0x4052fc056b41ef6528c3afa1, + limb2: 0x78208919fa0ed97c, limb3: 0x0 }, u384 { - limb0: 0xff6bcce38af94349a22bf3c, - limb1: 0x35e301fa3af2a831b13f4bf6, - limb2: 0x564165e0c2c1ca2, + limb0: 0xe23be36d22dd80254d0b1080, + limb1: 0x3ba6641a24771493d55d889d, + limb2: 0x296823105b3b2ec2, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -46873,63 +46828,66 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xd1204b8119ec5b0a9a262dc4, - limb1: 0xbcf781574fec443af02144a2, - limb2: 0x5427acee497c6af5, + limb0: 0xdd4140bc116dd65463a63aaf, + limb1: 0xee4c3168f8256f791df8b963, + limb2: 0x17161ee21e88888d, limb3: 0x0 }, u384 { - limb0: 0xb4985ae91b4d7dc5f7d32f50, - limb1: 0xf2a3dcc5efb36b51e17c3428, - limb2: 0x798654c8daa138cd, + limb0: 0x4b7ee50329e5ba40ea49b44a, + limb1: 0xa6be52424049651261697cb8, + limb2: 0x62ccc5744ef496cc, limb3: 0x0 }, u384 { - limb0: 0x6d4c1e00215b0d051327ca54, - limb1: 0xa288eb73efe303b36105df5, - limb2: 0x51cae870b4d693cd, + limb0: 0x2e0479f0e1d52839ebd7ed88, + limb1: 0x37c493a095882d0c9512e713, + limb2: 0x44a182646d9651cb, limb3: 0x0 }, u384 { - limb0: 0x5ea6ea6ea92e1b3c579c9273, - limb1: 0x7b473671118d5ddbf678b099, - limb2: 0x27e2c73fb0cf82ec, + limb0: 0x6bb5bc0152a7a79ed844b859, + limb1: 0x9a7b45692844ec60cfc0c41d, + limb2: 0x180e0c2f9d14aaa8, limb3: 0x0 }, u384 { - limb0: 0xb5c59e1d12ad9ace2c07bd71, limb1: 0xfcd0a3d, limb2: 0x0, limb3: 0x0 + limb0: 0xabb30f1dd95af0d5de674794, + limb1: 0x618624c, + limb2: 0x4000000000000000, + limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xe32f9d85d394261efdf2acd2, - limb1: 0xa685ddc0422f08692179c693, - limb2: 0x5d46f7dcee9ea008, + limb0: 0xed77124d9afb82e639436961, + limb1: 0x835c5e8665a404e1fc7771a5, + limb2: 0x643a344223d955f0, limb3: 0x0 }, u384 { - limb0: 0x140ece07eff77c6bef99a9b0, - limb1: 0xc1aeb34f4ed2766bef064e0, - limb2: 0x358f050a5581c5e2, + limb0: 0xed087a338669127b32c13c0, + limb1: 0xe45d791c553c5c3cfa0b7fda, + limb2: 0x5820a11757610313, limb3: 0x0 }, u384 { - limb0: 0xc329275e998e3d765518e2d5, - limb1: 0x6070d3d64787304c7d5e216b, - limb2: 0x167e2aa1ef729857, + limb0: 0xd49ff6aa22e06fb98cda2af8, + limb1: 0xa47cd11c488ebe4b912a4b16, + limb2: 0x208bb8de09116aa1, limb3: 0x0 }, u384 { - limb0: 0x1ac48b00e7ce2294c54c2297, - limb1: 0x25c2d966979a0fcd0a7e1a1f, - limb2: 0x1828f753686ded3c, + limb0: 0x50a374de76ddc553f65f94a4, + limb1: 0x4f5d99239bde61d47fb15990, + limb2: 0x3f0f4c9998aa0643, limb3: 0x0 }, u384 { - limb0: 0x831dca6815c0cd7089784c1, - limb1: 0x17122347cb9b2bbe397784b3, - limb2: 0x4205d21177fdfc15, + limb0: 0xf8eb6de7eb43e69665a7c708, + limb1: 0x8ea41a8f1a5ad3dbf00b939d, + limb2: 0x53bef1ef5e8fe60f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -46937,90 +46895,90 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xb973c7e1b049a4a6799c21f, - limb1: 0x4a5338982e1601a1ae1ecdde, - limb2: 0x7ae74e6732b73f8a, + limb0: 0xfc7c4d4d4aafe2a5bffe96bb, + limb1: 0xdd58a8c29f0c2cfdf94d7dc5, + limb2: 0x4e2ec97092d4421, limb3: 0x0 }, u384 { - limb0: 0xe3e5048c94f7d8c88b9d390a, - limb1: 0x5b5d84c000f4befd2ee1a5d7, - limb2: 0x2263454a98561092, + limb0: 0xb4eee224491a86ea16daca53, + limb1: 0x47ae79f1d6ab8011627c9e2e, + limb2: 0x1a284db4ac589278, limb3: 0x0 }, u384 { - limb0: 0xbbd995c976572f02c68a813d, - limb1: 0xebfac43631e9ac47bfa963af, - limb2: 0x77e7fe54c346a982, + limb0: 0x27c98037a7507c6395921496, + limb1: 0x350b0fc6040dfeb3cdb56676, + limb2: 0xfe68e1a1cd6ae91, limb3: 0x0 }, u384 { - limb0: 0x98e015d902271c75ddfbbb46, - limb1: 0x1d61153e5a783bd7f0d6fbc3, - limb2: 0x11820b4a47014471, + limb0: 0xa79708c5b9afc9f573193f7c, + limb1: 0x5db62a2d2a6b76c686d0cae1, + limb2: 0xc42af9d848d38e1, limb3: 0x0 }, u384 { - limb0: 0xa763fe5962163e2ab1afb8c2, - limb1: 0x774a20e041f5e19751888a4f, - limb2: 0xbbc731103cfd9f, + limb0: 0x1d29026be64df471286c87b3, + limb1: 0xa605472e2cf96d0a3e3a8ae7, + limb2: 0x225a94506b2e31db, limb3: 0x0 }, u384 { - limb0: 0x209c17a1d93d07ec059556ea, - limb1: 0x4545cee2ab1a3119b557e7b3, - limb2: 0x401d38cedf2056c9, + limb0: 0x2c2d9d4c69f5822a132fb5fc, + limb1: 0x4839db8df1718e3072d344ee, + limb2: 0x53a888132aac726f, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x1b48482974a6d1ad8a58ae9e, - limb1: 0x384614ee9ff6dfd8d5a5262c, - limb2: 0x7e4137e5b851caf5, + limb0: 0x2279f408b399e8a4db4b1693, + limb1: 0xcf02856802664e1373b840b7, + limb2: 0x26528631431014b, limb3: 0x0 }, u384 { - limb0: 0x1442956275426f690511fd08, - limb1: 0xe556cff1c9e02dd97ef2a608, - limb2: 0x5a8863d6249658b0, + limb0: 0x42a32b2b11eb97510b0ed8a1, + limb1: 0xbf51d145c593be8041caa785, + limb2: 0x268f27d1dfb459cf, limb3: 0x0 }, u384 { - limb0: 0x8e3ff349318cf225a6072a03, - limb1: 0xd3126289e9faf7562cb9d2b0, - limb2: 0x7d55795c4c0daa52, + limb0: 0x573f42d1eb1ecdc5992a0beb, + limb1: 0x76e568c5d6be960c77c20362, + limb2: 0x7ed834ed2e90da8a, limb3: 0x0 }, u384 { - limb0: 0x3356237c617bd5105865776a, - limb1: 0x79a04dc406e9708447e0b1d3, - limb2: 0x39900b2c49cb2a0e, + limb0: 0xf3dd2ee894a0609071a805fb, + limb1: 0x4665bad9f5688ba57071688a, + limb2: 0x535020519426919e, limb3: 0x0 }, u384 { - limb0: 0x4454cad7656c9b82e7133794, - limb1: 0xa0636217a6dc25bb28f30254, - limb2: 0x7342f2d7183b0e4e, + limb0: 0x14edca7892261118da8849b9, + limb1: 0x9ccd5210a59c461954342b54, + limb2: 0x3e2e17993b91f1c4, limb3: 0x0 }, u384 { - limb0: 0xe4c58e01d56e8bb68223ee14, - limb1: 0x99ba831b2ce2046c7254efbd, - limb2: 0x1fab556a8752410b, + limb0: 0xdbd6a503b42d29773f21f2d0, + limb1: 0xeba1ce6e199d6cbd244f6599, + limb2: 0x3d5fa2ea27455b6e, limb3: 0x0 }, u384 { - limb0: 0x2769b5f894400423be0839c4, - limb1: 0x575aba73f9154da37636d07c, - limb2: 0x7577a4270e27ac22, + limb0: 0x5d489fd6234fa6e2ef1babe4, + limb1: 0x80f57a30fd599faaeb6a0fed, + limb2: 0x1c5df96d3e63c529, limb3: 0x0 }, u384 { - limb0: 0x831dca6815c0cd7089784c1, - limb1: 0x17122347cb9b2bbe397784b3, - limb2: 0x4205d21177fdfc15, + limb0: 0xf8eb6de7eb43e69665a7c708, + limb1: 0x8ea41a8f1a5ad3dbf00b939d, + limb2: 0x53bef1ef5e8fe60f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -47030,9 +46988,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x2958373c727b48fc8b4894a4, - limb1: 0x37be5965d8f25ea538083733, - limb2: 0xe1cffd377328f72, + limb0: 0x4c470c91c904b356d41e180b, + limb1: 0xcbcf9ad776b9dd411a867e4c, + limb2: 0x3f507ab4db851ba7, limb3: 0x0 }, u384 { @@ -47045,15 +47003,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x71511a812bf1d71110d2319f, - limb1: 0xf070b61ed4d094d7eecc748, - limb2: 0x2a515697e0d36606, + limb0: 0x94d7d257edadef7480694859, + limb1: 0x9544060a9018c020207feb02, + limb2: 0x1174472b9a211109, limb3: 0x0 }, u384 { - limb0: 0x40f67aea24e17ad5ef0004a1, - limb1: 0xc34e9a81f7f676324891be20, - limb2: 0x527a12e637e227dc, + limb0: 0x53eff4084c1e803d43e93025, + limb1: 0xbf5589129653739e83c41faf, + limb2: 0x49f258a9a6386f65, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -47061,54 +47019,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xa17b7a9efb12da22b8979a24, - limb1: 0x90a993b4f8a93c27e854112a, - limb2: 0x3505a11ec4ce3f7b, + limb0: 0x7b3db5e4a6419e18208ecd28, + limb1: 0xac7f93998122eb95dc2349fd, + limb2: 0x36fa3f8a9173f8f6, limb3: 0x0 }, u384 { - limb0: 0x822b6612f2c0d7176e51731c, - limb1: 0x23474b2e36f2033bf3f06759, - limb2: 0x53112846a7207035, + limb0: 0xf35a3be69b634d09b430efd4, + limb1: 0xe016d2e0d16a4746b8c5b039, + limb2: 0x64bc1796e504cc76, limb3: 0x0 }, u384 { - limb0: 0xaee3a2d645fd73e2bb3e7d60, - limb1: 0x96df4f0a6c236742e444b04e, - limb2: 0x12fc3729dae3a08f, + limb0: 0xa6b559f516ef6a1d641a73f8, + limb1: 0x192b0028d14617e757edef98, + limb2: 0x265bbbd8fd477049, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x5dc4cc978c62986da58371, - limb1: 0x7d94a7c05153bfd4142a7da, - limb2: 0x49507ea479926cb1, + limb0: 0x3657fbfc176f5b2a9e2ba91, + limb1: 0x24f35c4755dc43565477443d, + limb2: 0x38e6f47eb63c6bf4, limb3: 0x0 }, u384 { - limb0: 0xd1f1d8f551b9e1dcbebc4637, - limb1: 0xf75ebd749e19dc90c49d7fff, - limb2: 0x37ba2934c1fcf64c, + limb0: 0xde11c003bd6b929e1b81b074, + limb1: 0xe4b8af682c80baf896e3223d, + limb2: 0x5e53e2e823276565, limb3: 0x0 }, u384 { - limb0: 0xe7c5bc9304c6d1aabb4ddb01, - limb1: 0x951dd487cbd43656fab6c5b4, - limb2: 0x2a0eeea63705e5b8, + limb0: 0xe3e63129fd31675d3bdf811, + limb1: 0xdfbeb964235e2726d7df65dc, + limb2: 0xc983055c893c69, limb3: 0x0 }, u384 { - limb0: 0x7df64578d863b8a0098e48df, - limb1: 0x409eec6f4ec84723eaa57da5, - limb2: 0x7a0036b868d24ec, + limb0: 0xa17cfd4f9a1fd10379255f86, + limb1: 0xc6dbe717f193fdf68c38a15f, + limb2: 0x6ec2f3ff3fdacfef, limb3: 0x0 }, u384 { - limb0: 0x40f67aea24e17ad5ef0004a1, - limb1: 0xc34e9a81f7f676324891be20, - limb2: 0x527a12e637e227dc, + limb0: 0x53eff4084c1e803d43e93025, + limb1: 0xbf5589129653739e83c41faf, + limb2: 0x49f258a9a6386f65, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -47118,19 +47076,12 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xc9ca586dfd891566113d70e7, - limb1: 0x68997f58d650b103e0f5e3bf, - limb2: 0x125dcf286f2a7373, + limb0: 0xd266ad5aeeadfd2f2214bab4, + limb1: 0x90ff459ec628281a57378b43, + limb2: 0x2b082a995a5da0bd, limb3: 0x0 }, - g_rhs_sqrt: array![ - u384 { - limb0: 0x126861a1e65ab49964398199, - limb1: 0xd6a75a1a20fc4c6e6762d4a, - limb2: 0x35521adf451480e0, - limb3: 0x0 - } - ], + g_rhs_sqrt: array![], }; let res = msm_g1( points, scalars, scalars_digits_decompositions, msm_hint, derive_point_from_x_hint, 4 @@ -47138,15 +47089,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x46a9971085f86e795c3b13ac, - limb1: 0xa847680ad40f1d10ffee8ad4, - limb2: 0x786749cd1017c15b, + limb0: 0x5405f041540879ef69fa2424, + limb1: 0xb9589766c656419908138f56, + limb2: 0x4355d09f368a70c, limb3: 0x0 }, y: u384 { - limb0: 0x2657496f05c18041b7a08b90, - limb1: 0x9d8217e1a81c5d7c76c24cf8, - limb2: 0xb1dc0ea4b4d9dd1, + limb0: 0xa4cac2a39c6ce2e87b678f84, + limb1: 0xcb12a33b751c2ff61daf4d6b, + limb2: 0x7669568e2cf23d7b, limb3: 0x0 } } @@ -47159,89 +47110,91 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xbc7ac8047975956a326ab841, - limb1: 0xb0e5a3c3e942dbac2d9daad3, - limb2: 0x7390dfa4c0328b28, + limb0: 0xab061939c1f45a67b558df54, + limb1: 0x1f8591a6209e421bbc94a5b6, + limb2: 0x763c2ce275c96ad, limb3: 0x0 }, y: u384 { - limb0: 0xea076ea669e1d66a9e9c4c1d, - limb1: 0x175300f41099771c1fc8dac9, - limb2: 0x7078de37517d5085, + limb0: 0xc871042ae5ff981f5bd44dc5, + limb1: 0x77c89c2f0ecf54d28254161, + limb2: 0x38b60e159ecdb06f, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x4db211e7226f8d70d77ff0ba, - limb1: 0x7cfab5bce402a16b991f7e10, - limb2: 0x3f1cecef353f6af7, + limb0: 0x6d53b8b79b9f008c1600a143, + limb1: 0x38915bf156897722cdef4240, + limb2: 0x2a498be3e93546de, limb3: 0x0 }, y: u384 { - limb0: 0x56c42dbbfd950be5602ba8c9, - limb1: 0x446b0a4e4415ef92947f7858, - limb2: 0x2f6b8b7e866244dd, + limb0: 0x6c82e4bab26b22b6d127ba0f, + limb1: 0x25cfeae863c8a8a30e3eb82c, + limb2: 0x7b91ab07a8ab672e, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xc8011f380f803ddd2280b3fe, - limb1: 0x842d2ffe2b00cbc6309556de, - limb2: 0x130ec06e58144fe4, + limb0: 0x651f7aec451a73fea9bbe466, + limb1: 0x61cd98b1068391aa057660f5, + limb2: 0x702158e060c58632, limb3: 0x0 }, y: u384 { - limb0: 0x398ab5516448b7eebb3a3eaf, - limb1: 0x407957fc47283e53afb2dba5, - limb2: 0x455595dd721d1e7d, + limb0: 0x669a6c1c0e581ec45c4ce0c4, + limb1: 0xc222a7d9e4561d0d06fe4ffe, + limb2: 0x463894c4fc5e0430, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x72748f56b89eecd96ef93ce8, - limb1: 0xb2c441b11886c64f47fa4a03, - limb2: 0x3c9a4002b58fe19d, + limb0: 0x935293bca354f8fd1de8c0b4, + limb1: 0xa93dd052857f4b78a531f975, + limb2: 0x3717e031af1aa04e, limb3: 0x0 }, y: u384 { - limb0: 0x6ec61d1cf4f381aec9df37ee, - limb1: 0x275ac9e556b3b97491b72b2c, - limb2: 0x7d0de6873c1f34ce, + limb0: 0xe4412e9b914e0e47982a1f24, + limb1: 0x1ef46aee16abfa16ff1517bc, + limb2: 0x73b64fce397c1d8c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xfdb9ee82b115f8690c1c544, - limb1: 0xf7a71a09f5277aaa1ce321f4, - limb2: 0x5a9f9959351cd7bb, + limb0: 0x63aff84ce085a3a104b7abd, + limb1: 0xaac616fd1c14663ef8d81b45, + limb2: 0x2e7ac7013c73a90e, limb3: 0x0 }, y: u384 { - limb0: 0x66b5e926a13dfd074e6258fc, - limb1: 0x89e4d371926c95250fa87784, - limb2: 0x51adfb6b9ef91358, + limb0: 0x41c96c1e942cb1d8439190da, + limb1: 0xebfd9238370219a8ae2e3041, + limb2: 0x714e1f701cfdc8cc, limb3: 0x0 } }, ] .span(); let scalars = array![ - u256 { low: 0x5153f737d7f14ec29a9dadd2e7aad070, high: 0x436c63246b7d9bb2966398e4a295d }, u256 { - low: 0x640ca20c702a5b67b7ae77585b45cf5a, high: 0xa292e86a9c9a24efd723837705bacc2 + low: 0x4e821f665a27759f33eb63153d496b89, high: 0x61c7cd99c78c83ba328321c4da6f2d9 + }, + u256 { + low: 0x7de1bdb659726a503b837c84cc9f0b3f, high: 0x386c342a15bf3e1e38641282b88a8c3 }, u256 { - low: 0x113c183677f4531bfde9d47dd89331ac, high: 0x3a0208fc110412c38431ed6258694b6 + low: 0x43125b7202166979476f723b88b9ea4d, high: 0x875839940d41bda5d89a2d951db5bc1 }, u256 { - low: 0x5e2d2454e46232e735c3de958a647b9f, high: 0xcff156a05727bb50bee2ebdb44788bd + low: 0xe32ffbb37690dd468480bd358968e07d, high: 0x9ba0ee0dd95206d06e6162659b6c44b }, u256 { - low: 0x9df497f16b5a174d34367eaa03ea038f, high: 0x2adc75c4fe4b7355c29b6dac1d7fbe9 + low: 0x70e38028a7fd5a8333df9da30086bbf7, high: 0x4b1633a47577572ddd651bb5a137b91 }, ] .span(); @@ -47249,111 +47202,110 @@ mod msm_tests { array![ ( array![ - -0x1, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, 0x0, 0x0, - -0x1, 0x0, + 0x1, -0x1, - 0x0, 0x1, 0x1, - -0x1, 0x0, 0x1, + 0x0, 0x1, - 0x1, - -0x1, 0x0, + -0x1, 0x0, 0x1, -0x1, - 0x1, -0x1, 0x0, - 0x0, -0x1, + -0x1, + 0x0, 0x1, + -0x1, 0x0, 0x0, -0x1, -0x1, - -0x1, - -0x1, - 0x0, + 0x1, + 0x1, 0x0, 0x1, -0x1, - 0x0, -0x1, + 0x0, -0x1, 0x0, -0x1, 0x1, - 0x0, - 0x0, 0x1, 0x0, + -0x1, 0x0, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, + 0x1, + -0x1, + 0x0, 0x0, 0x0, - 0x1, 0x0, - 0x1, - 0x1, - 0x1, - -0x1, - 0x1, 0x1, 0x1, 0x0, - 0x1, - -0x1, -0x1, - 0x1, - 0x1, -0x1, 0x0, -0x1, 0x1, -0x1, -0x1, + 0x0, + 0x1, -0x1, -0x1, + 0x0, -0x1, - 0x1, - 0x1, + 0x0, 0x1, 0x1, ] .span(), array![ + 0x0, + 0x0, 0x1, + 0x0, -0x1, 0x1, - 0x0, + 0x1, + 0x1, 0x1, 0x1, -0x1, 0x0, - -0x1, 0x0, - 0x1, -0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, + 0x1, 0x1, 0x0, -0x1, - 0x1, -0x1, 0x1, 0x1, @@ -47361,426 +47313,403 @@ mod msm_tests { -0x1, 0x0, 0x1, + 0x0, + 0x1, + 0x0, -0x1, -0x1, 0x1, - 0x0, - 0x0, 0x1, -0x1, 0x1, 0x0, -0x1, + 0x1, -0x1, 0x0, 0x0, - -0x1, - 0x1, 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x0, + -0x1, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, + 0x0, + -0x1, 0x1, 0x1, -0x1, - -0x1, 0x0, 0x0, -0x1, 0x0, 0x1, 0x0, - 0x0, 0x1, - -0x1, + 0x0, 0x0, -0x1, -0x1, - 0x0, - 0x0, - 0x0, - 0x1, + -0x1, 0x1, 0x1, 0x0, - 0x0, 0x1, + -0x1, + 0x1, + -0x1, ] .span() ), ( array![ - -0x1, - 0x0, 0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, 0x1, + 0x0, -0x1, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x0, - 0x1, -0x1, + -0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x1, - 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, - 0x0, - 0x0, 0x1, + 0x1, + 0x0, -0x1, -0x1, + 0x0, 0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, + -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, + -0x1, + -0x1, + -0x1, 0x0, -0x1, + -0x1, + -0x1, 0x0, - 0x1, 0x0, 0x1, 0x1, - 0x0, 0x1, -0x1, + 0x1, 0x0, 0x1, 0x1, - 0x0, + -0x1, 0x1, 0x0, - -0x1, 0x0, + 0x1, -0x1, + 0x0, -0x1, 0x0, - 0x1, 0x0, -0x1, - 0x1, - 0x0, -0x1, - 0x0, -0x1, 0x0, 0x1, - 0x0, -0x1, + -0x1, + 0x1, 0x0, 0x1, ] .span(), array![ - 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x0, 0x1, + -0x1, 0x1, -0x1, - 0x0, -0x1, + 0x1, + 0x0, -0x1, -0x1, 0x0, - 0x0, - 0x0, - -0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, - 0x1, + 0x0, -0x1, 0x0, -0x1, 0x0, -0x1, + -0x1, 0x0, - 0x1, 0x0, - -0x1, 0x0, 0x0, 0x1, -0x1, 0x0, - 0x1, - 0x0, -0x1, - 0x1, - 0x1, 0x0, -0x1, - 0x1, -0x1, 0x1, + -0x1, + -0x1, 0x0, + 0x1, 0x0, 0x0, 0x0, 0x1, - -0x1, - 0x1, - 0x1, - -0x1, 0x1, 0x0, 0x0, - -0x1, + 0x0, 0x1, -0x1, - 0x1, -0x1, 0x0, + 0x0, -0x1, - -0x1, - -0x1, + 0x1, + 0x0, -0x1, -0x1, 0x0, 0x1, - 0x0, 0x1, + 0x0, -0x1, - 0x1, 0x0, 0x1, 0x1, -0x1, + -0x1, 0x1, 0x1, + 0x0, + 0x1, + 0x0, + -0x1, 0x1, + 0x0, + -0x1, ] .span() ), ( array![ - 0x1, - -0x1, - 0x1, - -0x1, - -0x1, - 0x1, - -0x1, - 0x0, - -0x1, - -0x1, - -0x1, - 0x1, - 0x1, - -0x1, 0x0, 0x0, - -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x0, 0x1, 0x1, 0x1, + 0x1, -0x1, - 0x0, 0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x0, -0x1, - 0x0, -0x1, -0x1, - 0x1, - 0x0, - 0x0, -0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, + 0x1, -0x1, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, 0x0, 0x1, - 0x0, -0x1, -0x1, + 0x0, 0x1, -0x1, + -0x1, 0x1, 0x1, 0x1, 0x0, 0x0, 0x0, - -0x1, - 0x0, - 0x0, - 0x0, - -0x1, - 0x1, 0x1, - -0x1, 0x1, - ] - .span(), - array![ - 0x0, 0x1, 0x0, - -0x1, 0x1, 0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, -0x1, + -0x1, 0x0, 0x1, - 0x1, - 0x0, - 0x0, 0x0, 0x1, -0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x1, + -0x1, 0x0, -0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, - 0x0, -0x1, - 0x1, - 0x0, -0x1, + 0x1, + 0x1, + ] + .span(), + array![ -0x1, 0x0, -0x1, -0x1, -0x1, - 0x1, - -0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, - 0x1, + 0x0, 0x0, -0x1, - -0x1, + 0x0, 0x0, -0x1, + 0x0, -0x1, 0x1, -0x1, 0x0, - -0x1, + 0x1, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x0, + -0x1, + 0x1, 0x0, -0x1, 0x1, 0x1, - -0x1, - -0x1, 0x0, -0x1, + 0x1, -0x1, -0x1, 0x0, - 0x1, - 0x1, 0x0, 0x1, - 0x0, -0x1, - ] - .span() - ), - ( - array![ - 0x1, -0x1, + -0x1, + 0x1, 0x1, 0x1, 0x0, + 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, - 0x0, - 0x1, - 0x0, -0x1, 0x1, 0x0, 0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, - 0x0, -0x1, 0x0, 0x1, 0x0, - 0x0, + 0x1, -0x1, 0x1, 0x0, 0x0, - -0x1, + 0x1, + 0x1, + ] + .span() + ), + ( + array![ + 0x0, 0x0, 0x1, 0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, @@ -47788,291 +47717,323 @@ mod msm_tests { 0x0, -0x1, 0x0, - 0x0, -0x1, + 0x0, 0x1, + -0x1, + -0x1, + -0x1, + 0x0, + -0x1, + 0x0, 0x0, + 0x1, 0x0, 0x1, -0x1, -0x1, 0x0, + 0x0, -0x1, -0x1, 0x0, -0x1, - 0x0, -0x1, -0x1, 0x0, - -0x1, 0x1, 0x0, + -0x1, 0x1, 0x0, 0x1, -0x1, - -0x1, + 0x0, 0x1, 0x0, + 0x0, + 0x0, 0x1, 0x1, -0x1, - -0x1, + 0x1, 0x1, 0x0, 0x1, -0x1, - 0x0, 0x1, - ] - .span(), - array![ -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, - -0x1, - 0x1, 0x1, 0x0, + -0x1, + 0x1, 0x0, - 0x0, + -0x1, + -0x1, 0x1, 0x1, -0x1, 0x1, + -0x1, 0x0, - 0x1, -0x1, - 0x1, + 0x0, + 0x0, -0x1, -0x1, - 0x1, + ] + .span(), + array![ 0x0, + -0x1, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, - -0x1, + 0x1, + 0x0, 0x0, 0x0, - 0x1, - -0x1, - -0x1, - -0x1, 0x1, 0x1, + 0x0, + 0x0, + 0x0, 0x1, -0x1, - 0x0, -0x1, 0x0, 0x1, 0x0, -0x1, - 0x0, -0x1, 0x0, 0x0, + 0x1, + 0x1, 0x0, - 0x0, + -0x1, 0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, + 0x0, + -0x1, + -0x1, 0x1, + 0x0, 0x1, + -0x1, + -0x1, 0x1, + 0x0, -0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, + 0x1, + 0x1, + -0x1, + 0x1, + -0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x0, - -0x1, 0x0, - -0x1, - 0x1, 0x1, -0x1, - -0x1, 0x1, + 0x0, + 0x1, + 0x0, -0x1, 0x0, + 0x1, + 0x1, + 0x1, 0x0, 0x1, + 0x1, + 0x1, ] .span() ), ( array![ 0x0, + -0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x0, - 0x1, 0x0, - 0x1, - -0x1, 0x0, - -0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, + -0x1, 0x0, + 0x1, -0x1, + 0x0, -0x1, - 0x1, -0x1, - 0x1, 0x0, 0x0, -0x1, -0x1, - 0x0, 0x1, 0x0, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, + -0x1, 0x0, 0x1, -0x1, 0x0, - -0x1, - 0x1, 0x1, 0x1, -0x1, - 0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x0, - 0x1, - -0x1, 0x0, 0x1, + -0x1, 0x1, + 0x0, 0x1, -0x1, -0x1, - 0x0, + -0x1, + -0x1, 0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, + -0x1, -0x1, - 0x1, 0x1, 0x0, - 0x1, - 0x1, - 0x1, - -0x1, + 0x0, + 0x0, 0x1, ] .span(), array![ 0x1, 0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x1, 0x1, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, - -0x1, - -0x1, 0x0, 0x0, + -0x1, 0x1, -0x1, -0x1, + 0x1, + 0x0, + 0x1, -0x1, 0x0, + 0x0, 0x1, 0x1, 0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x0, 0x1, - -0x1, + 0x0, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, + 0x0, -0x1, + 0x0, + 0x0, + -0x1, + 0x1, -0x1, -0x1, -0x1, 0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x1, - 0x0, 0x1, - 0x0, -0x1, 0x1, 0x0, 0x0, - 0x1, - 0x0, -0x1, 0x0, - 0x1, - 0x1, - -0x1, + 0x0, -0x1, + 0x0, 0x1, - -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, 0x0, - 0x0, - -0x1, -0x1, ] .span() @@ -48083,121 +48044,118 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x86d4360fd441343a9a3630fb, - limb1: 0xcba5de7d290266be576ff84c, - limb2: 0x19f4a82e82b9fcec, + limb0: 0xad277877082194771563f01b, + limb1: 0x4473ab98f651c00136ae15fe, + limb2: 0x25ea1c56b064ef52, limb3: 0x0 }, y: u384 { - limb0: 0x1dc03e31f2a14ab82ae9eac2, - limb1: 0xe919d33b03962dd8b73b912b, - limb2: 0x68ba9d81302082c1, + limb0: 0xb48e8f44e6e63603aa358fb3, + limb1: 0x5e81083f79f7927cfe945390, + limb2: 0x5258a827ec4fbc1, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xce6ad1af054843f42741ed3d, - limb1: 0x771f1dd64294cc58fc5e48a1, - limb2: 0x9ebde6f870f2f2c, + limb0: 0x6dd625801b229cebeba46b68, + limb1: 0x9d5e9c5158481e272e41581f, + limb2: 0x4c9aae040e141251, limb3: 0x0 }, y: u384 { - limb0: 0x25f7797720bd3e2fe440a600, - limb1: 0x7ed5f3e33eacbcb53823096d, - limb2: 0x77bb84cc57afc154, + limb0: 0xfa568fbb2c8035529f53f2ba, + limb1: 0x4cb9a3c548cd76eefaf299de, + limb2: 0x23d72c510c253c83, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x480be1e7876f9ee95db848b6, - limb1: 0xe9f4e195f0f24abd5fadc8c1, - limb2: 0x3c6e8dcec3ebcd92, + limb0: 0xf6ca254e1fac67b5fb5a3263, + limb1: 0xdfe867afb0e2b4e72474d42c, + limb2: 0x4272b77cddb6cad6, limb3: 0x0 }, y: u384 { - limb0: 0x2fb61c66ab24ceb941293f09, - limb1: 0xe4eb42d2bebcc7cee2171c79, - limb2: 0x57990b9da4be85d3, + limb0: 0xb9ea953d3799c5c9a8e5feac, + limb1: 0xa6c2f8503612871985d1c1e9, + limb2: 0x63478539c4fcabe2, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xa54e13f3a91fd283278eac3e, - limb1: 0x59b666b6fbef411f5d1eb545, - limb2: 0x33755378a08fd5e0, + limb0: 0x5295b5c4df930714513489b, + limb1: 0x423f1263de7904e44f85a677, + limb2: 0x57282b1156afaa5f, limb3: 0x0 }, u384 { - limb0: 0x1b1cdbc1851e68cc1bcb6ac, - limb1: 0x2908e09b7101f424362b5711, - limb2: 0x12edce97f2139511, + limb0: 0x4ee0ae6a7f0ba55d3cac8c97, + limb1: 0xea0de8f817107bb3aa6ddff9, + limb2: 0x43b4a42ec12fa801, limb3: 0x0 }, u384 { - limb0: 0x91ffe7bf5115837f20a8ed88, - limb1: 0xc4510d11bbadb78faf3b4d7b, - limb2: 0x623c0419f054fc4d, + limb0: 0x7a2ff359702b229807c4b775, + limb1: 0xcc5a8256736e61d5068c4640, + limb2: 0x7c7c445fcf4db061, limb3: 0x0 }, u384 { - limb0: 0xbae5450db2ede341798f7d8d, - limb1: 0x11dcc4b34828e237d3f9a5c7, - limb2: 0x53376d15bf6cf468, + limb0: 0xa1b105d19876d81fa4c76e00, + limb1: 0x3dd38786d868347250e6e8a7, + limb2: 0x79d5de31a14dc02f, limb3: 0x0 }, u384 { - limb0: 0x2300686691eeff2fb4fc349c, - limb1: 0x6aeb357380992351f66fcabf, - limb2: 0x16eb9abb87f11adf, + limb0: 0x215b4d7021a6b558b4b9026c, + limb1: 0xacdcf86fa4ffeb91767b70fa, + limb2: 0x3d2240105c9f359e, limb3: 0x0 }, u384 { - limb0: 0xfb896b0a5ae496308a3b1a61, - limb1: 0xd2604328, - limb2: 0x4000000000000000, - limb3: 0x0 + limb0: 0x2ac2fdfdf48b4e3cb69108a0, limb1: 0x4f9c5f88, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x73b84f2ad13a3e0d9c38920b, - limb1: 0x150b0122f58224be167ddfd1, - limb2: 0x3b8a6f7d5de31a4b, + limb0: 0x12658f2693a45d8077099b81, + limb1: 0xe3e64fa199a29037884cd99e, + limb2: 0x10711c62a373ba07, limb3: 0x0 }, u384 { - limb0: 0xe9afdc3865767180fd98be88, - limb1: 0xc687572fbeca0f4732f4f51b, - limb2: 0x6833286db3286df6, + limb0: 0xda8b3216527472623eb30286, + limb1: 0xe7755380cbaa9b885bde8c9, + limb2: 0xfa852bee74216b2, limb3: 0x0 }, u384 { - limb0: 0xb04e505e123cfe372adaba5a, - limb1: 0xdc2c5d7d3af3820f9faa162e, - limb2: 0x4c48514473e38d4a, + limb0: 0x16509959e12576cc4dfab018, + limb1: 0x5b64d0d04b12f6751ccb64c5, + limb2: 0x3866e224c69c65dc, limb3: 0x0 }, u384 { - limb0: 0x99acae5052793fc71e7b99f9, - limb1: 0x5b8a4306eabf41761f8df91a, - limb2: 0x15bcd9f855e2c0a2, + limb0: 0x16e498eb939e564327510644, + limb1: 0x9fad4422a53bd2501cfc6881, + limb2: 0xbc9b7d5eafd21a, limb3: 0x0 }, u384 { - limb0: 0x39b3cec690e165a22083c8b9, - limb1: 0x661345e43d6dac5b3c5ed371, - limb2: 0x67960aae572dd228, + limb0: 0x1eca7bcdba5d7a984019bf9d, + limb1: 0x37b8c5920de4ab4a7045e536, + limb2: 0x5ad58c5cffac4a76, limb3: 0x0 }, u384 { - limb0: 0x24ada28d9ca91ead39a36fa7, - limb1: 0xd7e13c48d1090f6a4c601bf9, - limb2: 0x914f173451303b4, + limb0: 0x3bd1a769e3d3495f47526f3e, + limb1: 0xada3e6ceea6f435e9b4d8c5a, + limb2: 0x52b494e3f2b56392, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48205,102 +48163,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x86dc8d8e139d14f3047746fc, - limb1: 0x4604a4f867da30d1b399541b, - limb2: 0x2fee8da1968e88c1, + limb0: 0xa8c58f2840c7ecc23843de2a, + limb1: 0xc33431107af25f5a68c2b296, + limb2: 0x71cdc8e12b37af1c, limb3: 0x0 }, u384 { - limb0: 0xfedcb2884b2689556ca9b8b8, - limb1: 0x1888c39710f460ab987b6d56, - limb2: 0x303d531927e8093c, + limb0: 0x49ceb59b29584eae03237dc8, + limb1: 0xebd157052280223731f673b6, + limb2: 0x430a81cc01a41506, limb3: 0x0 }, u384 { - limb0: 0x44ab4d98b7af221f9594b615, - limb1: 0x5f2de8ea8e5f3e9c647983d0, - limb2: 0x7d8096ae2e833d4b, + limb0: 0x25b5a1811fa64b9f2642db3c, + limb1: 0xb355b7d168a311d01abaa164, + limb2: 0x1891f12948bcf22b, limb3: 0x0 }, u384 { - limb0: 0x49910f429df75c9fc61846dd, - limb1: 0xc034c970ae8855e8e6507409, - limb2: 0x491895d0dcb814cd, + limb0: 0x30d692d33ce6e02bb5631fbc, + limb1: 0xd763559a37e639ac66fe569b, + limb2: 0x7df5dc746327b000, limb3: 0x0 }, u384 { - limb0: 0x27bbf97f2af324b032d3dfba, - limb1: 0x73b654c73b30748225b38080, - limb2: 0x2586b5c690198d4f, + limb0: 0x5dd14c977151e2e7e4fc7b4, + limb1: 0x5f43a7d48bb3136c8c3b4988, + limb2: 0x1add9354ac911f86, limb3: 0x0 }, u384 { - limb0: 0x3a3f2a368e1fe94d6c689310, - limb1: 0x1e480855b1d845e605c52d1d, - limb2: 0x4764084df623bf8e, + limb0: 0x27727af2d8cddf5c969a4aeb, + limb1: 0x16bbb160cb6772b5d938fc7c, + limb2: 0x19416c7683ed589b, limb3: 0x0 }, u384 { - limb0: 0x68286d8ba86d406893b76ea, - limb1: 0x587bb98cf183d2af2cc46e38, - limb2: 0x6724ad39d1a0b929, + limb0: 0xc23f99526b856d646cf032d3, + limb1: 0x3ab7d8dbec70cdec848f16af, + limb2: 0x2df0aac55c3fda7e, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7360958c78c31f9d76271e5, - limb1: 0xb2b1e8a9ca23ff5e04274169, - limb2: 0x59aadc47d2daae11, + limb0: 0xa7268559ad8aca86b211484b, + limb1: 0x69422f9e193bf2d0c925f1e2, + limb2: 0x48897221bc20747d, limb3: 0x0 }, u384 { - limb0: 0xf6005e4a2f2ea5722c07c40f, - limb1: 0x9f2de9802402fc5777fc4c11, - limb2: 0x14734e1aaa297ecb, + limb0: 0xfd5f88e7518bc28b76c40935, + limb1: 0x78bd4c058c26f2f5a7fe058e, + limb2: 0x1b7bbd51b6f27c2b, limb3: 0x0 }, u384 { - limb0: 0xd46d77a5f165d4dc7d93d62c, - limb1: 0xfb1448982ea1b9c598ca59de, - limb2: 0x339ae802744b9ecd, + limb0: 0xcb99a5c7fe151b767c361f2a, + limb1: 0xa8c7bd8df0dd77e81b63c1e8, + limb2: 0x53548b5c720dc708, limb3: 0x0 }, u384 { - limb0: 0x44a8b8ff3e6430beec4e2e56, - limb1: 0x2d21e580f2058ff0e88c1e6, - limb2: 0x7c4322308e61392d, + limb0: 0x485241c633c6e464bdba6d01, + limb1: 0x711d828b606e0f53361cb219, + limb2: 0x5ce96aa0cf411a67, limb3: 0x0 }, u384 { - limb0: 0xb0d8370bf62209af7a1f0dca, - limb1: 0x1530f3f68ea281fa9d54799, - limb2: 0x3080a9b06e990e89, + limb0: 0x56b6649f2fd4a8d9ecd383fb, + limb1: 0x7201aed631fc888f3d32d111, + limb2: 0x73f54d6d63f3c686, limb3: 0x0 }, u384 { - limb0: 0x3d395466e8bfd7f365cebb46, - limb1: 0xb6db2ba2e8e474318a89d491, - limb2: 0x530be1c4b0286b7b, + limb0: 0xd717a1fc861a4b9275f9434c, + limb1: 0xefa93b5723dce8b8312342df, + limb2: 0x5f3b739ed8ebfdf0, limb3: 0x0 }, u384 { - limb0: 0xd39581452d4bda29f24a5621, - limb1: 0xbd7857aed53ddc942da91163, - limb2: 0x5a2ecca56edc56c5, + limb0: 0xdc230203e6fb395270a10c4b, + limb1: 0xb3231c4ade19aa441806b41b, + limb2: 0x75e4582366b3ff08, limb3: 0x0 }, u384 { - limb0: 0x4658f9be3d534731193fdff9, - limb1: 0x97ab26f19ee8ea31a81789ce, - limb2: 0x44e4b781fce7910e, + limb0: 0x2b6fa6c566cf5c2738d5d6dd, + limb1: 0x6950a69f6f5fe920dbfe9b93, + limb2: 0x38243930a566095c, limb3: 0x0 }, u384 { - limb0: 0x24ada28d9ca91ead39a36fa7, - limb1: 0xd7e13c48d1090f6a4c601bf9, - limb2: 0x914f173451303b4, + limb0: 0x3bd1a769e3d3495f47526f3e, + limb1: 0xada3e6ceea6f435e9b4d8c5a, + limb2: 0x52b494e3f2b56392, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48310,75 +48268,75 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x32b619b8465fb31c96c80b64, - limb1: 0x48b92a39cf9544efa7cefeb6, - limb2: 0x31eed1a6f3fa8616, + limb0: 0xe4943358b7c88e1151aabeec, + limb1: 0xbf2e0a46319281e402de4c30, + limb2: 0xb4cb6cdd21a7f8f, limb3: 0x0 }, u384 { - limb0: 0xd21a4fe1b629fb7895f68895, - limb1: 0xa718b5ee695f6c98a4e7c59d, - limb2: 0x19befb33e0b0c13b, + limb0: 0xc3aa143c1da37dcec479c6aa, + limb1: 0x6fb164bdeb926f596c563489, + limb2: 0x487831e868909c77, limb3: 0x0 }, u384 { - limb0: 0x83b38921263fcd75369d2ea7, - limb1: 0xaf03ac2cb8915b05f06e4bf7, - limb2: 0x601bc38799774757, + limb0: 0x33bd8689608d6d7643af8aed, + limb1: 0xf394c849c60c5f9459bbda4f, + limb2: 0x43c183e5c361a78f, limb3: 0x0 }, u384 { - limb0: 0x294cdbe79c4821e1c02a62db, - limb1: 0x21567b4754beb022ec98689, - limb2: 0x4feb3a87ed2b6009, + limb0: 0xc0c345a0eae11fb2eb10aef1, + limb1: 0x3561671889e7784c8235f308, + limb2: 0x233c9da91f73a6e1, limb3: 0x0 }, u384 { - limb0: 0x6b243d5adc33d92896e77df5, - limb1: 0x94c707fed74a30495dd7124a, - limb2: 0x6122a5231c267801, + limb0: 0xdad2fbf668f149c3c15a8c04, + limb1: 0x414f8401f4a828a60c1ebfd5, + limb2: 0x5e179da869fb1297, limb3: 0x0 }, u384 { - limb0: 0xcd150f880aee3ec4117f8c38, limb1: 0x6f213da, limb2: 0x0, limb3: 0x0 + limb0: 0xf708b1d18dde41d17c8380dc, limb1: 0x3183d0d, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x6fa2af2ad983731ec581c49e, - limb1: 0xd9a273228a284ca2330c9595, - limb2: 0x7463bdb8b2a641e7, + limb0: 0x8fe02bb2ce9794f87e8bd581, + limb1: 0xc9b9753d3bdc30b923e10f3f, + limb2: 0x7e34cd8db9562e43, limb3: 0x0 }, u384 { - limb0: 0x6bfc390a24c8e78b120a2bf0, - limb1: 0xe933d28e3eaf8bee6fa47430, - limb2: 0x58606094847f5499, + limb0: 0x9136388978a40e46de1207be, + limb1: 0x6907f3ab5772001fbefc54d8, + limb2: 0x10a6bc9e9b7130ba, limb3: 0x0 }, u384 { - limb0: 0xaf9f6f910ebd1db4362216d1, - limb1: 0xd15052c71ae634c1cbf80c18, - limb2: 0x7a432c7f4fafe46, + limb0: 0xba16244ed90c583621790c5d, + limb1: 0x5c6857f8c61a3d59bf8e44c6, + limb2: 0x99679452582ad02, limb3: 0x0 }, u384 { - limb0: 0xd7fea3f18f2b7c5d923dc16, - limb1: 0x8bfc679a3b3db4f90e69d195, - limb2: 0x3b04c4e371fdedde, + limb0: 0xc40acca0ecd3784b74b09349, + limb1: 0xeaf712e2f4011960cbd54f55, + limb2: 0x261f7a7376035281, limb3: 0x0 }, u384 { - limb0: 0x8144d66a48f7f84cc686f857, - limb1: 0x39183ab0290d815bb75af4f, - limb2: 0x5f5229ad7661647d, + limb0: 0x325c51a22dd5301d09768d85, + limb1: 0xaf50a209214d6d712c90a78a, + limb2: 0x75ec16cfa4f01024, limb3: 0x0 }, u384 { - limb0: 0xdd1706ee6ba20ef3ac97b365, - limb1: 0x2c67fcefb776a9cfa771cba3, - limb2: 0x191dbb3240bdd175, + limb0: 0x7b22fa60d0d240ea7111f3f1, + limb1: 0x54b8f6168878e538a3ba4a39, + limb2: 0x2c04033695064093, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48386,102 +48344,102 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x5c7c3911c12e661f5b1fe92c, - limb1: 0x809e929fce8b4cf6822f8d03, - limb2: 0x227a4e29f14e7c6, + limb0: 0x216e828db0466d235399555c, + limb1: 0x8c2916536b2a109e51cf09fe, + limb2: 0x5be1fbc9ac1c50d0, limb3: 0x0 }, u384 { - limb0: 0x208df38a6a32a00e2d7abd8e, - limb1: 0xccddd6f2df22135780e1327a, - limb2: 0x515cf13fab07e410, + limb0: 0x148f747f0023968d2d27fa07, + limb1: 0xb35f1780660e102886b32720, + limb2: 0x7072006178580519, limb3: 0x0 }, u384 { - limb0: 0xbf06d0baa46f1f376bd805de, - limb1: 0x704b144208192efdd51f4b4a, - limb2: 0x3a77c5b9ad528357, + limb0: 0xcd224e70281d7aaff6914c1e, + limb1: 0x4fc57e6ba73951d2a987b3b2, + limb2: 0x1141772bbde5480b, limb3: 0x0 }, u384 { - limb0: 0x87163fac9bb7430f1e04f3, - limb1: 0x292b79d5ff20b35ef5c7b5b3, - limb2: 0x61ef76199e0121b9, + limb0: 0xcdbcc348f4dc0b9332897152, + limb1: 0xdafc62d6d182ccecd678c9d6, + limb2: 0xb154da2b1143e1e, limb3: 0x0 }, u384 { - limb0: 0xaa77d0d4527ec93a4295b13, - limb1: 0x6c7169d44c7990839dfeec2e, - limb2: 0x794ed11a127a3be8, + limb0: 0x5e20b7556c8c338f1f559ece, + limb1: 0xa7678f6f1d299627cf1c4c74, + limb2: 0xa78910e7340656c, limb3: 0x0 }, u384 { - limb0: 0xe52b366710cc098d8f99d0e3, - limb1: 0x13b730dae5ef50a186dc56b4, - limb2: 0x7013bf9cf6af5661, + limb0: 0xa5c985c363c40419eab14ba6, + limb1: 0xdbf090c92e4a42a169d542f8, + limb2: 0x78d8e401a83a4d39, limb3: 0x0 }, u384 { - limb0: 0xde6756ed5c8d17bc8b26b04a, - limb1: 0xfc82c699cbfbe6876bffd006, - limb2: 0x76bd170bb253d58d, + limb0: 0xba52f75d9a20fa3244f3dd82, + limb1: 0xf25565883f43d01b0035261b, + limb2: 0x5e4f5f7f5d6886f4, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7c71d711cf45ef6538e63028, - limb1: 0x8a531dbdc65e60efacc9cffe, - limb2: 0x111a69ee0a4feb53, + limb0: 0x845c29679261669a59daf236, + limb1: 0x67836c603a1e93b755e3b44a, + limb2: 0x300eb890a2243c1d, limb3: 0x0 }, u384 { - limb0: 0xaf87038d21938a43e71334fd, - limb1: 0xa7c4a8ae479bc2c9d9f88e3d, - limb2: 0x595d1ca046b50abf, + limb0: 0x374c0ea4b25b2739329363ab, + limb1: 0x421046414cc274cbe8767b4c, + limb2: 0x11159138b90c40a7, limb3: 0x0 }, u384 { - limb0: 0xa1b166a3e496d41623595b80, - limb1: 0x6676e5fea3e7301a51a269d5, - limb2: 0x4f9a234313355ff5, + limb0: 0x75257cf62da575b0da58ae88, + limb1: 0xa61e22a512fdee101432e87a, + limb2: 0x3b2d39707d7cb72f, limb3: 0x0 }, u384 { - limb0: 0x65eccd7e3759de5d9b217331, - limb1: 0x5489bf53c3885bcdee60b3fb, - limb2: 0x383cb57aa3fdd190, + limb0: 0xae6a60a909e4979e82897a6b, + limb1: 0x6c14a6dde05395b0bb74c022, + limb2: 0x748977358b7c0b97, limb3: 0x0 }, u384 { - limb0: 0x38d3cd558474f0ab65353335, - limb1: 0x75a16be74890b6e453a4432, - limb2: 0x573a34677d422d59, + limb0: 0x467f626184ddde18148e4c3f, + limb1: 0x5b2ba53bee22d1f244d8b819, + limb2: 0x3e91451d501f79ea, limb3: 0x0 }, u384 { - limb0: 0xf61f9a05a48db51b696eb4fa, - limb1: 0x57117a902c5c8e7aa05cccb5, - limb2: 0x3cb1bd584e018ff5, + limb0: 0x100c117350761753d7083be2, + limb1: 0x7f4bf78c3c25f2184cd865ba, + limb2: 0x3016de13e003f3e1, limb3: 0x0 }, u384 { - limb0: 0xf67ae0392f37c580b20c1945, - limb1: 0x28fc2418b777614036efc8a5, - limb2: 0x78954150fa3c8880, + limb0: 0x4c6dbaa94575209815b60248, + limb1: 0xaec3940b3cffc05377bee90b, + limb2: 0xe535a64fe681de4, limb3: 0x0 }, u384 { - limb0: 0x8dea0161f569d9dbbf430f97, - limb1: 0x352964b8640c15ec272e65ac, - limb2: 0x3ca0d6811c1b2363, + limb0: 0x3f017c99da4711ac0232a4c5, + limb1: 0xe0e8831682c8ab4798495de7, + limb2: 0x533ac3a34aa9cf0a, limb3: 0x0 }, u384 { - limb0: 0xdd1706ee6ba20ef3ac97b365, - limb1: 0x2c67fcefb776a9cfa771cba3, - limb2: 0x191dbb3240bdd175, + limb0: 0x7b22fa60d0d240ea7111f3f1, + limb1: 0x54b8f6168878e538a3ba4a39, + limb2: 0x2c04033695064093, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48491,9 +48449,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x4a77f8b10ebf3d1911311d95, - limb1: 0x4bcf7f4ccf9b7f584709b754, - limb2: 0x4f92b18196bdf984, + limb0: 0x505aa0ca5d912a540795d45c, + limb1: 0x42772814b4e13e4653e12fcb, + limb2: 0x6f32c68e8fac38cb, limb3: 0x0 }, u384 { @@ -48506,15 +48464,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xb362b88271c9c967e40724f1, - limb1: 0x134a71f8e37b988f42cbbe06, - limb2: 0x3f1a7b4c9989c791, + limb0: 0x7a10216e0d85c781a19016f7, + limb1: 0x1649716a17482232daeb0311, + limb2: 0x4f2887241a16d428, limb3: 0x0 }, u384 { - limb0: 0xe9894c6973481d227b05c9fa, - limb1: 0x9eec0093cc78e8e9a3f3ee9c, - limb2: 0x39a593c1b5050340, + limb0: 0x9b5fb531c530fb5e1901620f, + limb1: 0x82b8fbfef6d52cf1ad49d3b3, + limb2: 0x70f29a7f143522d7, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48522,54 +48480,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xae6ce176f32830ab2980c34d, - limb1: 0x24962163f671b2d69d28f2f, - limb2: 0x47b0ea38b4c5f9a1, + limb0: 0x713955e7d936a1a993628ede, + limb1: 0x9a4d5e02239a79eb702492af, + limb2: 0x2140c87f6153e0f3, limb3: 0x0 }, u384 { - limb0: 0xadd475182720105669afd31f, - limb1: 0x2759be59e03cb9d25b1ddeed, - limb2: 0x56c608ba73e35b3, + limb0: 0xdf5e3c289d13ae642d6fde09, + limb1: 0x8fecbdaa7762a02ccb1e9d80, + limb2: 0x5fe552ee7e405cc5, limb3: 0x0 }, u384 { - limb0: 0xae86e7d3d04b22d6028d0415, - limb1: 0xf3fcbbf394250074238fa4bb, - limb2: 0x56e430e4172e3283, + limb0: 0x94b5da75d27ffa490b061d51, + limb1: 0x588f5dd1ba01a8234ea0f4ea, + limb2: 0x705e019f251c6835, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xd6e265aab017eb58d9c6a15f, - limb1: 0x1dfe517ee86331c3b6e99e48, - limb2: 0x34d6e47e816da20a, + limb0: 0xe7f93f36e92a40e1bf5f3d68, + limb1: 0xc7a4d7428acaf226a556dd65, + limb2: 0x2979dda03e0b3c11, limb3: 0x0 }, u384 { - limb0: 0x5af5e3872df63ea7d893cc95, - limb1: 0x5467a82867cf775973a5b3c7, - limb2: 0x979432f9aa627d4, + limb0: 0xe11b73fafaa53b2075bb0882, + limb1: 0xadde691a6811c03823fa4a08, + limb2: 0x6c35d9b4c86e3875, limb3: 0x0 }, u384 { - limb0: 0xb0063b671047c391b58e521b, - limb1: 0xfb3ad62c90a9e97bb94304c1, - limb2: 0x505b343c449b270d, + limb0: 0x82463911628fcebaae866275, + limb1: 0xe571dc754ee9be1de9f5d3d5, + limb2: 0x3afbe103a40b1e92, limb3: 0x0 }, u384 { - limb0: 0xc007e37a1e3baaf6dcc33c31, - limb1: 0x44e2530644f6d665ae847463, - limb2: 0x1c6928203f438677, + limb0: 0x86b54c65b9f7a9109a4c2e37, + limb1: 0x47e1527778c3600946a3b96e, + limb2: 0x2c7733f7bfd0930e, limb3: 0x0 }, u384 { - limb0: 0xe9894c6973481d227b05c9fa, - limb1: 0x9eec0093cc78e8e9a3f3ee9c, - limb2: 0x39a593c1b5050340, + limb0: 0x9b5fb531c530fb5e1901620f, + limb1: 0x82b8fbfef6d52cf1ad49d3b3, + limb2: 0x70f29a7f143522d7, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -48579,9 +48537,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xddb6dc3d0559fd0f58e4ec76, - limb1: 0x142fe56256662090c2993416, - limb2: 0x1f73ca2de1ddcf6d, + limb0: 0xf828629efb105f046daec9f7, + limb1: 0xc864842ad7dd5426b6ed77b2, + limb2: 0x381c3a29d77d895a, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -48592,15 +48550,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x5105464f27b7e37e65f8efa1, - limb1: 0xa7bfd3ba9358e2950fc68729, - limb2: 0xcfdd4b5e8645289, + limb0: 0x28749bac2fb3eb290568c661, + limb1: 0xd1b0c6de60748afc285a347, + limb2: 0x2d6a97f07838f9f5, limb3: 0x0 }, y: u384 { - limb0: 0xbd55dd50ae9f4585f304f705, - limb1: 0xeb23433382dcba4bab3b74d2, - limb2: 0x5c0cc5e2cafb7e19, + limb0: 0xfbe2d8b646343f81672e7c10, + limb1: 0x6586a24348978cc34af4f4c9, + limb2: 0x6eeeeae696b21da3, limb3: 0x0 } } @@ -48613,85 +48571,85 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xbf86545336ce64e1baab1db7, - limb1: 0x6bb62a521e2c33b8c0d97949, - limb2: 0x656267d55ae69e44, + limb0: 0xcf413204540418c72b59a2b9, + limb1: 0xa22462c1a3cbda587dfdde06, + limb2: 0x15538be425a478b2, limb3: 0x0 }, y: u384 { - limb0: 0x572b14ba4d50120e4ae2984, - limb1: 0x1e62627cfbf14698214eef1a, - limb2: 0x658a0bc646785adf, + limb0: 0xcf5f55ba0f03d7db461bbdb6, + limb1: 0x713dfd0a171be156d76a2bdf, + limb2: 0x5f96509c68453669, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xb9ba34294f1a59f85072974c, - limb1: 0xf7af1b600373079a6f28c527, - limb2: 0x20d23fdc5cdfda8, + limb0: 0x35e296b576d91605b5b95549, + limb1: 0xad3f71e16899c610d6bced29, + limb2: 0x14858777ec28884f, limb3: 0x0 }, y: u384 { - limb0: 0x110dac14954aa2ead03c8acf, - limb1: 0xf5beb9893f1f9d3d2160a91f, - limb2: 0x4eca00415a554ea5, + limb0: 0xd75f8737ddcc57c3deda20dc, + limb1: 0x98e771a5529f3a134dad0e3c, + limb2: 0x6aa2c158ec527111, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x3e7538e87f0f6ffecaaf1757, - limb1: 0x6729a1d18d0249db050a33c6, - limb2: 0x5358bfd78541b615, + limb0: 0x688e963a9aecd709b5004bd4, + limb1: 0xc16253a7449ed4119d50f1b1, + limb2: 0x79ffc418c72b9d35, limb3: 0x0 }, y: u384 { - limb0: 0x544dc0bd303d0591e9ce7564, - limb1: 0xa5ee2137e54099fa0bfc31d0, - limb2: 0x70fe3d5a7b2376fb, + limb0: 0x302424853859e4d9a535c94f, + limb1: 0xa4aff54d535ca2a10578d0bb, + limb2: 0x9c8e0a9fa8772fa, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x87aa31f5444c7b341fb7c3d3, - limb1: 0xbe8298137db4e4cec0047531, - limb2: 0x63126ff48fde6371, + limb0: 0x2d25174cb0b73c991e1cb79b, + limb1: 0xc0f82624511e895f9f49bd2d, + limb2: 0x2044097b9adac74, limb3: 0x0 }, y: u384 { - limb0: 0x2f466681abe8b47298f738e5, - limb1: 0x96e6fae722bc5029b6755a8a, - limb2: 0x614c4a6e1af1bad4, + limb0: 0x7be92dcd2106d9882433e49, + limb1: 0x3a469cdbb0f5ba39aef608ba, + limb2: 0x6b857561c98f7258, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd71ae41c9fe54b1283695aa7, - limb1: 0x7fe41fb7b20eaac227728919, - limb2: 0x6131093a6d1fe17b, + limb0: 0xba889d404f7b899333e7e7b3, + limb1: 0x71d267b339a693efdef1a754, + limb2: 0x2ca83976112e196a, limb3: 0x0 }, y: u384 { - limb0: 0x4f77723604a4c5b6fb2bfd73, - limb1: 0x13ea97d4d7c5b798d2dee7b1, - limb2: 0x43ebdb18afc8906, + limb0: 0x3a0c28386347237be5361697, + limb1: 0x1ad56f6397306158a025e715, + limb2: 0x9cc3bbf51cb2c36, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x97d5187b532ce95f036a76fa, - limb1: 0x7fcc346ffdb167c2417e972a, - limb2: 0x7b71ffb2d1d02018, + limb0: 0x1fa5d1ba88b1c3612d55241f, + limb1: 0xc69070d63b1287f3c34c9d5a, + limb2: 0x5592629ea8c5cf95, limb3: 0x0 }, y: u384 { - limb0: 0xe90bd5f6e64507b3e4aa8d50, - limb1: 0x130acd2cc94dd65bf94c55a7, - limb2: 0x23c439219a8919e3, + limb0: 0xb39150f025ef3a367a7af1a0, + limb1: 0xca26745ae9943d3eb1962a37, + limb2: 0x2dbbe1dafecf309, limb3: 0x0 } }, @@ -48699,22 +48657,22 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0x8df6b197c3ad03720d5c16e961139cf, high: 0x7260634c82a6c15d733f669852d8585 + low: 0xf4f9e2524b5912211668aa7a9d1ac76f, high: 0x131a5d787d62405a22f57c0da002073 }, u256 { - low: 0xd61a43f28ecb497118c8ece658ea0417, high: 0x5ab8c82fedcb8f9378b094cb5178761 + low: 0x72e1e01b9de650ea1382b120ee382f02, high: 0x5ded65f4b30d45164c2fafdd1d250c2 }, u256 { - low: 0x8c1a612bfff99f34f94d9109593985b5, high: 0xee7427f37503d7733672754da2e6e6c + low: 0xb50f28ed98547c4727558610b6ea0526, high: 0xf07d859c7be626d1dd88096a60f1c66 }, u256 { - low: 0x52c1b3c7f33c4233c833b07eb4d56ffc, high: 0x73ac179c99373515a652a708fce7af + low: 0x99c6e37b8857d51e4a7d698c5fba5a8f, high: 0xb94fef020c6c4fddb8de8d8fb35be3f }, u256 { - low: 0x2a9e9a381d5a474ccda840fd4adb0798, high: 0x671f086faa2cbad467a6bdfb63c1dd8 + low: 0x62190d180a20417d449e50914c53682f, high: 0xed2e366fc234337d19ba66d726b0989 }, u256 { - low: 0x1f69cd4368bfbf7ed4dc2301882ab925, high: 0xed08e73fabbc6b697f43de414934a25 + low: 0x8d668f6b2a6cb93b2e5ccf6ab4e76101, high: 0xf9a35d1b65f9cf0709dc50e5642a51 }, ] .span(); @@ -48722,152 +48680,141 @@ mod msm_tests { array![ ( array![ - -0x1, + 0x1, 0x0, -0x1, + -0x1, + 0x1, + 0x1, 0x0, -0x1, 0x1, 0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, 0x0, 0x0, - -0x1, - 0x1, - 0x1, 0x0, 0x1, 0x0, 0x0, + 0x0, 0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, 0x1, -0x1, 0x0, - 0x0, 0x1, -0x1, - -0x1, - 0x0, 0x0, 0x0, 0x0, - 0x1, 0x0, 0x1, 0x0, - 0x1, - -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, - 0x0, - 0x0, - -0x1, - -0x1, - -0x1, 0x0, - -0x1, 0x1, - 0x0, 0x1, - 0x0, -0x1, -0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, - 0x0, - 0x0, + 0x1, + 0x1, + 0x1, 0x1, -0x1, -0x1, - 0x1, -0x1, 0x1, -0x1, -0x1, 0x1, - -0x1, 0x0, 0x1, 0x1, - ] - .span(), - array![ - -0x1, + 0x1, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x0, - -0x1, 0x1, -0x1, 0x1, 0x0, + 0x0, + 0x0, 0x1, + -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, -0x1, -0x1, -0x1, + ] + .span(), + array![ -0x1, + 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x1, + 0x0, 0x1, - 0x1, + 0x0, -0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x1, + 0x0, 0x1, -0x1, 0x1, 0x1, - -0x1, - 0x1, - -0x1, + 0x0, 0x1, + 0x0, -0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, -0x1, + -0x1, + -0x1, 0x1, 0x0, + 0x0, 0x1, 0x1, 0x1, + -0x1, + -0x1, 0x0, -0x1, - 0x1, - 0x1, - 0x1, + -0x1, 0x1, 0x0, -0x1, + 0x0, -0x1, - 0x1, - 0x1, + 0x0, 0x0, 0x1, -0x1, @@ -48876,37 +48823,46 @@ mod msm_tests { 0x0, 0x1, 0x1, + 0x1, -0x1, 0x0, + 0x1, + 0x0, + 0x0, + 0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x1, -0x1, - -0x1, 0x1, 0x1, + -0x1, + 0x0, + 0x1, ] .span() ), ( array![ - 0x1, 0x0, -0x1, - 0x0, -0x1, 0x1, - 0x0, + -0x1, 0x1, 0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x1, - -0x1, - 0x0, 0x1, 0x1, 0x0, - 0x1, 0x0, 0x1, -0x1, @@ -48917,25 +48873,35 @@ mod msm_tests { 0x0, 0x0, 0x1, - 0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x1, + 0x1, 0x0, -0x1, 0x1, + 0x1, + 0x0, + 0x1, -0x1, 0x0, 0x0, 0x0, 0x0, - -0x1, + 0x1, 0x0, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x1, 0x0, 0x1, 0x1, @@ -48944,111 +48910,103 @@ mod msm_tests { 0x1, -0x1, 0x0, - 0x0, - 0x0, -0x1, - 0x0, - 0x1, -0x1, 0x1, - 0x1, - 0x1, 0x0, - 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x0, -0x1, 0x1, 0x0, - 0x1, - 0x0, 0x0, + 0x1, 0x0, -0x1, - -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x1, ] .span(), array![ + 0x0, + 0x1, 0x1, 0x0, 0x0, + 0x1, -0x1, -0x1, - -0x1, - 0x0, - -0x1, 0x0, 0x0, -0x1, + 0x1, + -0x1, -0x1, 0x0, + 0x0, + 0x1, 0x1, 0x0, 0x0, - 0x1, -0x1, -0x1, - 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x1, - 0x0, 0x0, -0x1, + 0x0, 0x1, 0x1, -0x1, - 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, 0x0, + 0x0, + 0x1, 0x1, - -0x1, 0x1, -0x1, 0x0, - 0x0, + 0x1, 0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, 0x1, - -0x1, 0x1, 0x0, 0x0, - 0x1, - 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, -0x1, - 0x1, -0x1, - 0x0, -0x1, - 0x1, + -0x1, + -0x1, + 0x0, 0x0, 0x0, -0x1, + 0x0, + -0x1, 0x1, -0x1, -0x1, - 0x1, - 0x0, + -0x1, 0x1, -0x1, ] @@ -49059,164 +49017,165 @@ mod msm_tests { -0x1, -0x1, -0x1, - -0x1, - 0x1, - 0x0, - 0x0, - 0x1, 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, -0x1, - 0x0, 0x1, 0x0, - 0x0, - 0x0, - 0x1, -0x1, - 0x0, - 0x1, - 0x1, - 0x0, -0x1, -0x1, - 0x0, - 0x0, -0x1, 0x0, -0x1, + -0x1, 0x0, 0x0, 0x1, 0x1, - 0x1, - 0x0, - 0x1, + -0x1, 0x1, 0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, - 0x0, -0x1, - 0x1, -0x1, -0x1, 0x0, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, -0x1, -0x1, - 0x1, 0x0, - 0x1, 0x0, 0x1, 0x0, 0x0, - 0x1, - 0x1, - 0x1, - -0x1, 0x0, 0x0, - 0x1, - 0x1, + -0x1, + 0x0, + -0x1, -0x1, 0x1, + 0x0, -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x0, -0x1, -0x1, + 0x1, + -0x1, -0x1, 0x1, - ] - .span(), - array![ 0x0, + -0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, -0x1, - -0x1, 0x0, - 0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, - 0x0, - 0x0, -0x1, -0x1, + ] + .span(), + array![ + -0x1, 0x0, 0x1, -0x1, - -0x1, 0x1, 0x0, + 0x0, -0x1, + 0x1, -0x1, 0x1, -0x1, + -0x1, 0x0, + 0x1, -0x1, -0x1, - 0x0, + 0x1, -0x1, -0x1, + 0x1, + 0x1, 0x0, - -0x1, + 0x1, 0x0, + 0x1, -0x1, - 0x0, -0x1, - 0x0, + 0x1, 0x0, -0x1, -0x1, - 0x0, - 0x0, 0x1, 0x1, + 0x0, + 0x1, + -0x1, 0x1, -0x1, + 0x1, -0x1, -0x1, 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x0, 0x0, 0x0, 0x1, - 0x0, + -0x1, + 0x1, 0x1, 0x0, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, 0x0, -0x1, + 0x1, 0x0, + -0x1, + -0x1, 0x1, -0x1, 0x0, -0x1, + 0x1, + 0x0, + 0x0, + -0x1, -0x1, 0x1, ] @@ -49224,30 +49183,27 @@ mod msm_tests { ), ( array![ - 0x0, - 0x0, + 0x1, 0x1, -0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x0, 0x0, - 0x1, + -0x1, 0x0, 0x1, 0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, 0x0, - 0x0, - 0x1, - -0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x1, + 0x1, -0x1, 0x1, -0x1, @@ -49256,59 +49212,39 @@ mod msm_tests { 0x1, -0x1, 0x0, - 0x1, - 0x0, - -0x1, 0x0, -0x1, + -0x1, 0x1, - 0x0, - 0x1, - 0x0, 0x1, -0x1, 0x1, + 0x1, + 0x1, -0x1, - 0x0, - -0x1, - 0x0, 0x1, 0x1, 0x1, 0x0, 0x0, - -0x1, + 0x0, 0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, - 0x0, 0x1, - 0x0, 0x1, 0x0, - 0x1, - -0x1, - 0x1, - -0x1, 0x0, - -0x1, - 0x1, 0x0, - -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - ] - .span(), - array![ + 0x0, + 0x0, -0x1, + 0x1, 0x0, -0x1, 0x1, @@ -49316,407 +49252,433 @@ mod msm_tests { 0x1, 0x1, 0x1, - -0x1, 0x1, - 0x0, -0x1, + -0x1, + 0x1, 0x0, 0x0, 0x0, + 0x1, + -0x1, 0x0, -0x1, + 0x1, + ] + .span(), + array![ 0x0, -0x1, + 0x0, 0x1, -0x1, 0x1, 0x0, 0x1, - 0x0, - 0x0, -0x1, -0x1, - 0x1, 0x0, - -0x1, + 0x1, + 0x1, 0x0, 0x1, 0x1, 0x0, -0x1, - 0x0, 0x1, 0x0, + -0x1, + -0x1, + -0x1, + 0x0, 0x0, -0x1, 0x1, 0x1, 0x0, + 0x1, -0x1, 0x0, -0x1, 0x0, - 0x0, - 0x0, 0x1, 0x1, 0x0, + 0x0, + -0x1, + 0x1, -0x1, -0x1, -0x1, + 0x0, -0x1, 0x1, - 0x0, - 0x0, - 0x0, + -0x1, 0x1, -0x1, 0x1, 0x1, 0x0, + 0x0, + 0x0, + -0x1, + 0x0, + 0x0, + -0x1, + -0x1, + 0x1, 0x1, -0x1, -0x1, + -0x1, 0x0, + 0x1, 0x0, 0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, 0x0, + 0x1, -0x1, + -0x1, + 0x0, + 0x1, ] .span() ), ( array![ + 0x1, 0x0, -0x1, + 0x1, 0x0, 0x0, 0x0, 0x0, - 0x1, - 0x0, - 0x0, -0x1, + 0x0, -0x1, - 0x1, -0x1, -0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, 0x0, -0x1, - 0x0, -0x1, + 0x1, 0x0, 0x0, + 0x0, + -0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, 0x0, 0x0, - -0x1, 0x0, + 0x1, 0x0, 0x0, -0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x1, -0x1, + 0x1, + 0x1, 0x0, 0x1, + 0x0, + 0x0, + 0x0, -0x1, 0x1, - 0x1, -0x1, 0x1, 0x1, -0x1, -0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x0, -0x1, + 0x0, + 0x0, 0x1, + 0x0, + -0x1, 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, - -0x1, 0x0, - -0x1, + 0x1, -0x1, -0x1, 0x0, -0x1, + 0x0, 0x1, - 0x1, - -0x1, + ] + .span(), + array![ 0x0, + 0x1, + 0x1, 0x0, 0x1, 0x1, -0x1, 0x0, + 0x1, + 0x0, 0x0, 0x1, - -0x1, 0x0, - -0x1, - ] - .span(), - array![ + 0x0, 0x1, - -0x1, 0x0, 0x1, + -0x1, + 0x1, 0x1, 0x1, - -0x1, 0x0, -0x1, - 0x0, + -0x1, 0x0, 0x0, 0x0, -0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x0, 0x0, -0x1, - 0x1, -0x1, 0x1, -0x1, 0x0, - 0x0, + -0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - 0x1, -0x1, 0x1, - 0x1, -0x1, - 0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, -0x1, -0x1, - -0x1, - 0x1, - -0x1, 0x0, -0x1, - 0x0, + 0x1, 0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x1, -0x1, 0x0, 0x0, 0x1, + 0x1, + 0x1, 0x0, - -0x1, - -0x1, 0x1, -0x1, -0x1, - -0x1, - -0x1, - -0x1, - 0x0, 0x1, - -0x1, 0x1, + -0x1, + -0x1, 0x1, ] .span() ), ( array![ - 0x1, - 0x0, - 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x1, - 0x1, -0x1, - 0x1, -0x1, 0x1, 0x1, + 0x0, 0x1, 0x1, - 0x0, - -0x1, - -0x1, - -0x1, -0x1, + 0x0, + 0x0, -0x1, - 0x1, - 0x1, + 0x0, + 0x0, + 0x0, 0x0, 0x1, -0x1, -0x1, - -0x1, - -0x1, 0x0, - 0x1, + -0x1, 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x0, 0x1, -0x1, 0x0, + -0x1, + -0x1, 0x0, 0x1, 0x0, - 0x1, - 0x1, + -0x1, 0x0, - 0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, -0x1, -0x1, + 0x0, 0x1, - -0x1, - -0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, - 0x0, - -0x1, -0x1, 0x0, 0x0, + -0x1, + 0x1, + 0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, 0x0, - -0x1, - 0x1, 0x0, - -0x1, - ] - .span(), - array![ - -0x1, 0x0, + 0x1, -0x1, -0x1, -0x1, -0x1, - -0x1, - 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, - -0x1, - 0x1, + 0x0, + 0x0, 0x0, 0x1, + -0x1, + -0x1, + -0x1, 0x1, + ] + .span(), + array![ 0x0, 0x1, + 0x1, + -0x1, + -0x1, 0x0, 0x0, 0x0, - -0x1, + 0x1, 0x0, 0x0, 0x1, - 0x1, - -0x1, - -0x1, - -0x1, - -0x1, 0x0, 0x1, + 0x0, -0x1, + 0x0, -0x1, 0x0, + -0x1, 0x1, -0x1, + 0x0, 0x1, 0x0, - -0x1, 0x0, + 0x1, 0x0, -0x1, - -0x1, + 0x1, + 0x1, 0x0, 0x0, + -0x1, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, 0x0, 0x1, -0x1, -0x1, + 0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, -0x1, 0x1, - -0x1, 0x0, -0x1, + 0x0, + 0x0, 0x1, 0x1, - 0x0, 0x1, 0x0, - -0x1, 0x0, 0x1, - 0x0, + 0x1, + 0x1, + 0x1, 0x1, 0x0, 0x1, 0x1, + 0x1, -0x1, + 0x1, + 0x1, + -0x1, + 0x1, + 0x1, -0x1, + 0x0, + 0x1, 0x1, ] .span() @@ -49727,87 +49689,87 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xe15200ca9b968f4bf70c84fd, - limb1: 0xcd2afd6131041ed87875fa64, - limb2: 0x46f8def58550c990, + limb0: 0x51e4bee6afd64c0c9d45f63, + limb1: 0xd34cbbc5ba365d242eed686a, + limb2: 0x1367a914d993cc9, limb3: 0x0 }, y: u384 { - limb0: 0x61cb64c6f923f92ae4be9795, - limb1: 0x294b8eb805b5497beec5a68d, - limb2: 0x6e22db0b4eeb5106, + limb0: 0x4fd22b270acd9cefcd1a178b, + limb1: 0x2eae03b893b149cc2fd88e9, + limb2: 0x7d531a8af355de18, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x489ce355799b89c4eda26483, - limb1: 0xf5713a9403861001b9e77759, - limb2: 0x4e78a573002f761d, + limb0: 0x4f39cc8da276736a3524b43e, + limb1: 0x2c003365f086db2e1de7b142, + limb2: 0x28c27f41b56fe05, limb3: 0x0 }, y: u384 { - limb0: 0xc7155774eed1799a297a5b38, - limb1: 0xb2432d1a72d73e8bb652f8a2, - limb2: 0x3658b8b21734d1a1, + limb0: 0x5cae1c3e5df067879eacba92, + limb1: 0x1ca174ce3d26a1f9b2f6451f, + limb2: 0x77d2654f31f06bb6, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0xb8d6fb9820238230d4737603, - limb1: 0x12c92a5a6640c3ad7e11365f, - limb2: 0x44c5fb823907f21, + limb0: 0x43cae66c61e014e1c81c8d69, + limb1: 0x766b49bd0cfa0c6586c15a57, + limb2: 0x4e7cdc5239bd30db, limb3: 0x0 }, y: u384 { - limb0: 0x9bafd09c8b594a883f30de11, - limb1: 0x3e70957e8b456d20e36c332e, - limb2: 0x7dc39e61c36ff8d1, + limb0: 0x3629c515423333c008951574, + limb1: 0xb96ecb682cea88041858983a, + limb2: 0x15c28d0e41697fd1, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x32057e4eea132a118330b757, - limb1: 0xdcf1d11e742350468cb1609d, - limb2: 0x37357bf0ded862e, + limb0: 0xfd25afe25cc5a7bd85494535, + limb1: 0xcae4ef44ce93f334158fb9f6, + limb2: 0x4226d3713f0ba191, limb3: 0x0 }, u384 { - limb0: 0x3105dd4585caf52ee8228b0d, - limb1: 0x660d8e01b43e98fdf2a024d5, - limb2: 0x781b9795e14e03cd, + limb0: 0x7ce778769b3f082a35468cf4, + limb1: 0x7580f9ae1a4055b315937fc3, + limb2: 0x6744a74edd7ac120, limb3: 0x0 }, u384 { - limb0: 0xe6e803ca490279dba2495b24, - limb1: 0x9128431935560e516c338acf, - limb2: 0x5b0665d7b11cdcfe, + limb0: 0xf622f564e2db2755232f90d7, + limb1: 0xc67ac20dc5f03f2446ad441a, + limb2: 0x10a39c8de8e58965, limb3: 0x0 }, u384 { - limb0: 0xd1a51717f3b6c08675f9d5ec, - limb1: 0x993ad05bc80524229534791b, - limb2: 0x1e396ac2e06489c9, + limb0: 0xb7d12a5bbba29a7f43c9dbeb, + limb1: 0x3ad4cca6b1a1a9802488856e, + limb2: 0x60aaf52c3c7d27bb, limb3: 0x0 }, u384 { - limb0: 0x3044e10fca673529f100aa49, - limb1: 0xb4797f6d395d3e76a8ba4777, - limb2: 0x56e11378ac48c8b1, + limb0: 0x3d77a8bc8e2fd2335685a6ec, + limb1: 0x5710f4662c512cfa343fd4e0, + limb2: 0x56c0078e29edbe93, limb3: 0x0 }, u384 { - limb0: 0x4c01ef4a3dcec2da0312a3fa, - limb1: 0x6a13bcb18dd97f8744ee789a, - limb2: 0x528e4dee4176fe04, + limb0: 0xba7fa3a97aaa8d9ae352f81b, + limb1: 0xc75c9279d484453ef9cbdbb, + limb2: 0x715bfc329a48414e, limb3: 0x0 }, u384 { - limb0: 0x42e778437916fa2bf66a0ff9, - limb1: 0xffffffffffffffffc3321b67, + limb0: 0x7779fa28289816e415c3d159, + limb1: 0xffffffffffffffffc069fd99, limb2: 0x3fffffffffffffff, limb3: 0x0 } @@ -49815,45 +49777,45 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x26d35bcedcfd74177a237a51, - limb1: 0x6686be47f5e218f88abe140d, - limb2: 0x3e90d938d30809f8, + limb0: 0xde297440170eb34256ae89ff, + limb1: 0xe25a369e484c6ad2ade1d6f8, + limb2: 0x235bee7aec4f4c43, limb3: 0x0 }, u384 { - limb0: 0x4e12cda3232c4c42c225c56d, - limb1: 0xeb3d00b48613b762fe4031ec, - limb2: 0x72ebc165a848e27a, + limb0: 0x7de7bb52dba0dc9cd599c9d2, + limb1: 0x5e875d9b546db7364be82802, + limb2: 0x30de65624e1ddd0e, limb3: 0x0 }, u384 { - limb0: 0xcf12ac0c5aec2c9ad746fe90, - limb1: 0xacc97b6b40599f632392c861, - limb2: 0x7a6f79ec73c3bbe6, + limb0: 0x7b4054935ecb2487a03a6b8e, + limb1: 0xa7a7037fbaeeb02ad9fdeea4, + limb2: 0x7d6af361b3838dc2, limb3: 0x0 }, u384 { - limb0: 0xf8073641f7726b65f52833fd, - limb1: 0x2f6e6e092d09a3d0b20b7a4b, - limb2: 0x5d42bc889126e3c9, + limb0: 0xf9045fadb307a35999b59c4, + limb1: 0xb17ce10ea65a509dc17a22f0, + limb2: 0xd2c587820d4a1ae, limb3: 0x0 }, u384 { - limb0: 0x22bc56cfad8861063bf0fbe0, - limb1: 0x234c6a63d9ea88f2e30a7f02, - limb2: 0x376dbbef3373d197, + limb0: 0x7221acc3a7e83aba67d10d94, + limb1: 0x54e73daf870c33222ecdd3d6, + limb2: 0x63923d5fafcf0ac6, limb3: 0x0 }, u384 { - limb0: 0xe52dac912711ced3c064b9b4, - limb1: 0xdbcaf60c999c0bcf53830302, - limb2: 0x7efa3c1bfcb375b1, + limb0: 0x7ab4aeb94b26f493a8ecfce5, + limb1: 0x6a88041dff07430deabac7a9, + limb2: 0x2c3f41db64355563, limb3: 0x0 }, u384 { - limb0: 0x705e0f43281292358c9b18d6, - limb1: 0xaa132edff2e564a62987fded, - limb2: 0x3e895c7e05ea7f66, + limb0: 0x85dbced5a6540bdb20be9921, + limb1: 0x22921d422eed891d9d7ed8d8, + limb2: 0x56b1d14d65cc8f89, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -49861,114 +49823,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x6675f3592a85da77708b25a9, - limb1: 0xb6906a8387b66b9287f6bf51, - limb2: 0x6e33c02eb552d46c, + limb0: 0x1588f9e06c12c82f01e4cc05, + limb1: 0x57ca031a82780d9e1115c4ed, + limb2: 0x780b6a95082ecdd8, limb3: 0x0 }, u384 { - limb0: 0xd249c723b4600efaf637340a, - limb1: 0xa306fb4cac9a9acec243f29f, - limb2: 0x67803877688cda2, + limb0: 0xb81c1bdb8144e7f3ce351f83, + limb1: 0x26f2524baf9a21b78c4b46c2, + limb2: 0x707898c880463f16, limb3: 0x0 }, u384 { - limb0: 0x84b7e50df7f630d7d58ef980, - limb1: 0xa5940e6750e95b37f69521f7, - limb2: 0x5760295ee92f563a, + limb0: 0x47eecca7336ec1a8e3cfd39b, + limb1: 0x2359a6c3821e837017c47776, + limb2: 0x34c255cdd34e1f53, limb3: 0x0 }, u384 { - limb0: 0x1cae27d82af38b94a1b3f20a, - limb1: 0x86b643fdc7fdca3dd3fb3b23, - limb2: 0x3ab1f524fce74478, + limb0: 0x5092468019563b985992089a, + limb1: 0x22ce05f401468b9551772ba4, + limb2: 0x319216f9656378f8, limb3: 0x0 }, u384 { - limb0: 0x32f13fb1ccf3750e6c49e87f, - limb1: 0xb9eb1e6c1ae57b5fa47b2121, - limb2: 0x7b802ebf41eb5312, + limb0: 0x9255cdc0015ed7ab1bb3d50e, + limb1: 0x42a52d0b1df0b0855faa91f9, + limb2: 0x293e38f14558ec33, limb3: 0x0 }, u384 { - limb0: 0x3a3f39d5ba0f049981be4e90, - limb1: 0xa5bf979957a0d5a8c3bec703, - limb2: 0x54bfc307ada531fa, + limb0: 0x7348fc51b0aeb989577e4fa5, + limb1: 0x6a7bfcba101e4a25bd7f3cae, + limb2: 0x17bbe1fded574bca, limb3: 0x0 }, u384 { - limb0: 0xa750a651d8eb22bc6dccc284, - limb1: 0x128b816e9745a64b57f35067, - limb2: 0xcf5803e3ad4547d, + limb0: 0x20c9db6dd979035e0f837551, + limb1: 0xb0e3b74ea53bf4fd857e4520, + limb2: 0xf4fed60a31a255b, limb3: 0x0 }, u384 { - limb0: 0x2e951fe26354afd3ede5836b, - limb1: 0x35b64d289388d689feb58b05, - limb2: 0xccd61c5aca42277, + limb0: 0xc39ef6bb97785e62ae73c0ce, + limb1: 0x34708d79994d63f1c5649649, + limb2: 0x629c143988521d1c, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xcee18c8e0bd76ac2d72fbd04, - limb1: 0xc8c70e6456cc0b97a8aa9d9b, - limb2: 0x6c8e79dd20eca393, + limb0: 0xbd4a887645f7b8efec88eae5, + limb1: 0x2033b22f33acac681edb7c9d, + limb2: 0x22b50e56fdab634, limb3: 0x0 }, u384 { - limb0: 0x3b3d0eac5300a69b9c8c9ced, - limb1: 0x44be03f42f613aa8c01233ea, - limb2: 0x3c31d14eb40e96e4, + limb0: 0x78f73331a606f0e226c334d8, + limb1: 0x6efb4473afcab4b9e257c599, + limb2: 0x247aaeba76a154cf, limb3: 0x0 }, u384 { - limb0: 0xbc6b2a10e906fa41f7bdc6ac, - limb1: 0x9097d8044adfd867571735f5, - limb2: 0x2b3bf1fe357349f2, + limb0: 0x31b5c67ff87f29d25863ddfa, + limb1: 0xc393ebd91c2bedfef5b3b677, + limb2: 0x7e940ef37589f188, limb3: 0x0 }, u384 { - limb0: 0xf6245220ad027cc9e878e7b8, - limb1: 0xf77f62a3b1c35f509a819b15, - limb2: 0x1b90b6125b73fb23, + limb0: 0x8a103de5a094faa9cabce8d1, + limb1: 0x596e76c56f4e360b7904bc9, + limb2: 0x4bdfbf932371ee46, limb3: 0x0 }, u384 { - limb0: 0xb2889ad96147574a2e6a88e8, - limb1: 0x6bc3ff7942b1635b649f36e4, - limb2: 0x21c9b1b35d9a17df, + limb0: 0x70c4ad047c257d324b520637, + limb1: 0x3c21e0dd7eabbf121a136464, + limb2: 0x32649841e81c5df1, limb3: 0x0 }, u384 { - limb0: 0xb7c43e03ad5a40edc3ba2947, - limb1: 0x41ea094ade38bc3812597674, - limb2: 0x2c4358760eced735, + limb0: 0x49abb51c811b6abf25f0da95, + limb1: 0x1fbd6681767aff227cb968c7, + limb2: 0xf818e0610fca7f8, limb3: 0x0 }, u384 { - limb0: 0x526094ea33676c33ad2d6c0e, - limb1: 0x1bf4fdf2616e7a611d436ca4, - limb2: 0x36cc87e8ba327677, + limb0: 0x15b172f086c06e4e1b7bd8fa, + limb1: 0x6a38d3d1f5e89cbadaa4c1f, + limb2: 0x1fbd08b63976f503, limb3: 0x0 }, u384 { - limb0: 0x3033aed23953f4a4f7ff236, - limb1: 0x4c0d35eedfb60acdf02cce58, - limb2: 0x692efec63a5154e2, + limb0: 0xfc421e91564171a0f0f4bc71, + limb1: 0x7c01a8f453c6972b9a70408f, + limb2: 0x48e00600c0f57070, limb3: 0x0 }, u384 { - limb0: 0xf1d2d788d383b062b920d0f4, - limb1: 0xd62d719fb1749a5bf3bb95f, - limb2: 0x5c48e8efa26d3498, + limb0: 0x8759d9b0f798d622a1a91425, + limb1: 0x9c1fe52b608280e456737e06, + limb2: 0x98deeaf09ef1449, limb3: 0x0 }, u384 { - limb0: 0x705e0f43281292358c9b18d6, - limb1: 0xaa132edff2e564a62987fded, - limb2: 0x3e895c7e05ea7f66, + limb0: 0x85dbced5a6540bdb20be9921, + limb1: 0x22921d422eed891d9d7ed8d8, + limb2: 0x56b1d14d65cc8f89, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -49978,44 +49940,44 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xcdb267c3ee4d989a51f53154, - limb1: 0xf3a9af634401b4d89ec7c3da, - limb2: 0x756e06e86e2571f3, + limb0: 0x6b8d17604fad60ca77fc54e6, + limb1: 0xe0075b28dfa7d0346fae280a, + limb2: 0x22950441c82b7e9d, limb3: 0x0 }, u384 { - limb0: 0x4848ab912bdc845f25cec9a4, - limb1: 0x50007dcb6ab948820d2a63a6, - limb2: 0x2b1d5e5fe3080bc, + limb0: 0x83531336f60c6314a5e4c817, + limb1: 0x539008bc8342ceeafe7a9ed4, + limb2: 0x432639c06471006c, limb3: 0x0 }, u384 { - limb0: 0x33016db0e9014f96af53fbe1, - limb1: 0x3ec445500b63efa7095c0996, - limb2: 0x6cc7afffc83cf559, + limb0: 0xa2747cbd50ca163faf3d2bfd, + limb1: 0x389be259c0d411c40fe531bd, + limb2: 0x7f899797fbb16c5e, limb3: 0x0 }, u384 { - limb0: 0x4753f3d0e8d8146b35cd8bc3, - limb1: 0x94a977df4cd53bc76488d6d5, - limb2: 0x772f87284e6106d6, + limb0: 0x458b57dff2526d243f7c4f10, + limb1: 0x4f9058e64d477925a60edf11, + limb2: 0x5aea8d90753e313c, limb3: 0x0 }, u384 { - limb0: 0x3d90539047aeff3ae8907d7a, - limb1: 0x7229fbf4972d93c21fa55eb3, - limb2: 0x47199cb742bd594b, + limb0: 0x24bf8d66b4da5180d94bd1df, + limb1: 0xd1b852d1d5fcca79efa3d2ea, + limb2: 0x28b3aee4c51b535d, limb3: 0x0 }, u384 { - limb0: 0xa7c4f7e34b3662ee7976777b, - limb1: 0xb0404455c42d4a26f9872e2, - limb2: 0xd9ac6821a2ffb72, + limb0: 0x12dc568bef0fca35c713f0e1, + limb1: 0xd7c410293adc2720a9384add, + limb2: 0x49f0bf7504d9ec4e, limb3: 0x0 }, u384 { - limb0: 0xbdd432ec7e88b256eb564f94, - limb1: 0x112f0d20, + limb0: 0xbb2b18b79e3a603904d353a1, + limb1: 0xfc65a65, limb2: 0x4000000000000000, limb3: 0x0 } @@ -50023,45 +49985,45 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x2f97492d175191179d9b2807, - limb1: 0xc3ad6ea23bbeea1ecacc0d29, - limb2: 0x3bb73b63d34bd3ec, + limb0: 0xdb2d01cef3b0bce3fa595a08, + limb1: 0xf904910cc7e2ec0feca991fe, + limb2: 0x38eb74edf5024d01, limb3: 0x0 }, u384 { - limb0: 0x1d26a0240466056aee6abc15, - limb1: 0x7723662e3dbd667e8d27dca5, - limb2: 0x5bb60c9776c3de, + limb0: 0x91b85aef581e26ee8751b71a, + limb1: 0xd2d502d8213aded4db41b9f3, + limb2: 0x1011189599e02da1, limb3: 0x0 }, u384 { - limb0: 0x9babc1c6adf12da1cfa17b1d, - limb1: 0xe6fbe3871bea93b608bdea7, - limb2: 0x444e4baa34666260, + limb0: 0x6de40b307316234eb43f9a2b, + limb1: 0x89ba4e6dd78844bc605ca123, + limb2: 0x38be807a64ee12f, limb3: 0x0 }, u384 { - limb0: 0x361b04bc5775cc51c14f2770, - limb1: 0xc116d50b2c02cd25fee73c6d, - limb2: 0x182df81f9f1d97e3, + limb0: 0x74b3e1bbbbe4c31991e3d284, + limb1: 0x6b254be77c8396f99ebee519, + limb2: 0x2dfe341a66614e5c, limb3: 0x0 }, u384 { - limb0: 0x919f5a2da5d8d01b4bb03ae4, - limb1: 0xfcb801709c327b79b5af3530, - limb2: 0x9bf44d60e150879, + limb0: 0xf1c8e0bd5dfee323117fd033, + limb1: 0xcaefaa8c5742cd918869720b, + limb2: 0x7982b69bbfc3a6f, limb3: 0x0 }, u384 { - limb0: 0xb827e2ea0f5c22588185f2fe, - limb1: 0x24a863712acf5ec395411e57, - limb2: 0xc19f2c333225438, + limb0: 0x1a7ea1badbcf6caa450baa84, + limb1: 0x3cd65b401f4363ffe987e648, + limb2: 0x2e39ff96fc1bcb31, limb3: 0x0 }, u384 { - limb0: 0x9132cb84a0d97bc96053950, - limb1: 0x81ccf1ad2063737ce81680f9, - limb2: 0x370996008b0bd2d9, + limb0: 0x3bc04e366edafd31b56e4446, + limb1: 0xc9dea5a1f89d0b13ae849000, + limb2: 0x555c23ea980ece4d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -50069,114 +50031,114 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xb4ae85d5452ce8cb62a04058, - limb1: 0x62bc9a99fae505ae32e07824, - limb2: 0x269548c41f173fe0, + limb0: 0x396c0ec79dc8ec1bab318551, + limb1: 0x847be815dc14e3b0da71eaea, + limb2: 0x34fc22cabce34a7a, limb3: 0x0 }, u384 { - limb0: 0x7816ea8ef55aa53cddcdc3b, - limb1: 0xea57a90507b6794dc166fc8b, - limb2: 0x6c57451ad43bf9d9, + limb0: 0xf18ef252e0b6b3c1ca28a7ba, + limb1: 0xa1172b234ac707ac7010af59, + limb2: 0x79dc5868a029cd13, limb3: 0x0 }, u384 { - limb0: 0x31349e7edb3ff5123d675c73, - limb1: 0xec613b38aebb0b360eb4f4af, - limb2: 0x52ff1f8e883fe08d, + limb0: 0xff6530a1917102f42fb5133f, + limb1: 0xe6863ccbeb4ef38ad08ade29, + limb2: 0x4c0aad32dda7ee4e, limb3: 0x0 }, u384 { - limb0: 0xc7a0ac126829a404c2436314, - limb1: 0x99a050f5631b9b83b1bdd995, - limb2: 0x39e3932bca6b9659, + limb0: 0x15a1048950b2ac344e3e769a, + limb1: 0x8105ef3070795d7ab162fdc5, + limb2: 0x61caf99af4167118, limb3: 0x0 }, u384 { - limb0: 0x9c3aad764108e70569953030, - limb1: 0xffcac32f2f232b79eb98b3d2, - limb2: 0x6a54916adb2df723, + limb0: 0xac9ddf9ef75881b2f640138, + limb1: 0x89612b9844158096e07b8ff3, + limb2: 0x1f88e4f1c4f9672f, limb3: 0x0 }, u384 { - limb0: 0x3445d73078781904cc94e464, - limb1: 0xec39fe021b30a998e25b965f, - limb2: 0xecdf96ec130abd1, + limb0: 0x5f013419b09385f6e3bc5c79, + limb1: 0x3941ef1b3205378b3307c9f5, + limb2: 0x33924d1d807bf71e, limb3: 0x0 }, u384 { - limb0: 0x4be2dd052f0331edafd154d8, - limb1: 0xa8dffc05b536fe909c759083, - limb2: 0x1829f007dccc2ad9, + limb0: 0x4dc8280d304cc750b03a21f1, + limb1: 0xc382f6e7e59f0f873f0f4b3e, + limb2: 0x2c9f830973ca1349, limb3: 0x0 }, u384 { - limb0: 0x71a75ae186ed28a9c747b828, - limb1: 0x5830da2b52deb7547615352, - limb2: 0x52745a44c4a09c86, + limb0: 0x21cbd65b31d20f019d365019, + limb1: 0xa1ec2d2d525725a8212a07e6, + limb2: 0x7fffd83380c0236d, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x4b5a4e1278710fca815fd042, - limb1: 0xba0e38a364e951132bc7bbb5, - limb2: 0x6d9919ce587ba7eb, + limb0: 0x44c8fdc63528c0a338e59256, + limb1: 0xbc845be3addbb9e67d418b35, + limb2: 0x1dbb46efb1185635, limb3: 0x0 }, u384 { - limb0: 0x8c80186ee104ebe51436faea, - limb1: 0xcec9b00fc5dc5b95214e07c8, - limb2: 0xc9e2c5ffb8d7ce4, + limb0: 0xa2241302d6b59ffe62b8cc11, + limb1: 0x99c719a14e255662491d6805, + limb2: 0x59697033bde28a48, limb3: 0x0 }, u384 { - limb0: 0xd56c5dc7b0619537d3bafad2, - limb1: 0x4c9dddf4aa4a0e4774520fc6, - limb2: 0x21e8d1cb96cf79ee, + limb0: 0x7a024fae879ab3de1d901dc7, + limb1: 0xb368694097bd64370bcb2d40, + limb2: 0x602e29f63515bc0e, limb3: 0x0 }, u384 { - limb0: 0xe4ccb614212f1acbbee1cda6, - limb1: 0x618828052b20262bfb0ac2f7, - limb2: 0x410287659250513d, + limb0: 0x3766e3b68f77ec36b8eb319, + limb1: 0x213fecc09a4b87876585d4d3, + limb2: 0xe390d0d3369a69f, limb3: 0x0 }, u384 { - limb0: 0xfb9a9d14c2e0f109362f663, - limb1: 0xd3d552163a2c8e2a4bc4db0b, - limb2: 0x7fb16ef0626a2c2d, + limb0: 0x95861785cdca855fbb502658, + limb1: 0xa0095c3c68f7337b6e44c00a, + limb2: 0x6cb1378235cb0054, limb3: 0x0 }, u384 { - limb0: 0x454a6716b3ef5ee094c6bdd3, - limb1: 0x9d011e74f76aa630d32ace57, - limb2: 0x430fcaa080296c22, + limb0: 0x44f1b22b56ff898aff43fb11, + limb1: 0xa52886f1af9151118160992a, + limb2: 0x7e638a179b31312f, limb3: 0x0 }, u384 { - limb0: 0x17fc99449795d4fcb30ee32f, - limb1: 0x67ba64db7fee742f24ca9d4a, - limb2: 0x438b7dc32871806, + limb0: 0xf3f1f95da5449e1ebf90a53a, + limb1: 0xbad92e2d7ebf550eccebd391, + limb2: 0x391603feb976cfba, limb3: 0x0 }, u384 { - limb0: 0x2e22c9590cfc1ead040b5859, - limb1: 0x85b5c62db3ce5228c0c66373, - limb2: 0x2dbf99f37a9cb8d2, + limb0: 0x4e3f43a0680070983a5d1276, + limb1: 0x1ad7078016abb8eb88792b7, + limb2: 0x4d06bb7bca82073, limb3: 0x0 }, u384 { - limb0: 0xc4cd0de1bbce03e77a420a2b, - limb1: 0x5640447e8c4a9c9a00f9d4b4, - limb2: 0x69689f96d8dc131e, + limb0: 0x2723ccb288414e393dc7c1c4, + limb1: 0x6e6e3c4d80bea1d655409ca5, + limb2: 0xb88ac6aa1d58a17, limb3: 0x0 }, u384 { - limb0: 0x9132cb84a0d97bc96053950, - limb1: 0x81ccf1ad2063737ce81680f9, - limb2: 0x370996008b0bd2d9, + limb0: 0x3bc04e366edafd31b56e4446, + limb1: 0xc9dea5a1f89d0b13ae849000, + limb2: 0x555c23ea980ece4d, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -50186,9 +50148,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0x76974acd6c7c3c8d779e1c8f, - limb1: 0xbc3e05c441b724de13cdb184, - limb2: 0x300c206fecabce91, + limb0: 0x3a1971313211995d7a398ee0, + limb1: 0xdd114753ba8bcca21dd5c783, + limb2: 0x67ef895e8b23da8c, limb3: 0x0 }, u384 { @@ -50201,15 +50163,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x2878ed77236768b14fb75713, - limb1: 0xa45ccea42fd8d41b36e39e41, - limb2: 0x3e254c80ef883a38, + limb0: 0xac4c6ae925d635079f1d24a2, + limb1: 0x131a5f2125bf517d5b87a70f, + limb2: 0x6edbf75f1b4e1c07, limb3: 0x0 }, u384 { - limb0: 0xfe8c21126640f40a3dea2567, - limb1: 0xf7c59b1196392c50c8075246, - limb2: 0x2d3afad4dc400ac0, + limb0: 0x6cfb4d05fba977b402bebe46, + limb1: 0x5d9482dd027f186c5b56f466, + limb2: 0x2ef6fbb9aaebd11f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -50217,54 +50179,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x38e9c65e6c0b5145f3a04efe, - limb1: 0x6d89b0bea31b81b746feac64, - limb2: 0x198179ee0b8b1a97, + limb0: 0x4647b757d8d156034354c7a7, + limb1: 0xfeb981c0c4a3b7cee97d625d, + limb2: 0x7d61d97103b7da4d, limb3: 0x0 }, u384 { - limb0: 0xd99892685df175d53ad48064, - limb1: 0xdcf76a78c490d75ad0e3ba7c, - limb2: 0x5007d39ff6fcc881, + limb0: 0xe91005c029dcf4c5d2519951, + limb1: 0xfe7fffc5890afcdd4592f6f1, + limb2: 0x1a6c0fdd1446d36d, limb3: 0x0 }, u384 { - limb0: 0x29ce5619e18ecc24fef1d961, - limb1: 0x13c182a9c5732db9fb3ea0e7, - limb2: 0x632083f69651f934, + limb0: 0xa37215d49c9b0b6bf35cf4a8, + limb1: 0x35989e383ff6a5d583b1da9a, + limb2: 0x3b17de6e145567d5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x7c3eccd4dcbb8ed18622e599, - limb1: 0x1c3f74910a55d965aea6e1cf, - limb2: 0x5efc9ac39be70317, + limb0: 0xa41ca4d30ef5ec741d56bca1, + limb1: 0xf07c578a7975d5e440b045dc, + limb2: 0x43ddcdebc137a91f, limb3: 0x0 }, u384 { - limb0: 0x5f37bd0ecc7827c0053ead84, - limb1: 0xd8241cb31aabf3c56f3719df, - limb2: 0x588e34e8111cc125, + limb0: 0x38f9d1012b10fd69c0f19d22, + limb1: 0xcaf5b9549e5ab02057017024, + limb2: 0x65394d18b8a547eb, limb3: 0x0 }, u384 { - limb0: 0xd4ff3ff321a0fe8af8d3f12a, - limb1: 0x5686fb5f6871d3624aaeec8, - limb2: 0x5d566a2453a4b9c7, + limb0: 0x749570279dd5e993838f30ac, + limb1: 0x7193bdf959f425b60022c2fd, + limb2: 0x43ab8165caf78c4b, limb3: 0x0 }, u384 { - limb0: 0x351e186ecfd94a4048736e53, - limb1: 0xd5f4afb1915411f1a29c549e, - limb2: 0x1b73f9549541f91e, + limb0: 0xb8f195e0d248169697d93be2, + limb1: 0x44b2402e873a8f53c7405d6c, + limb2: 0x4c2aa432c107daed, limb3: 0x0 }, u384 { - limb0: 0xfe8c21126640f40a3dea2567, - limb1: 0xf7c59b1196392c50c8075246, - limb2: 0x2d3afad4dc400ac0, + limb0: 0x6cfb4d05fba977b402bebe46, + limb1: 0x5d9482dd027f186c5b56f466, + limb2: 0x2ef6fbb9aaebd11f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -50274,9 +50236,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x605c3551df72136d8d24e1a5, - limb1: 0xf29b56b6c43a230ab25fa8c8, - limb2: 0xb81ce7217416884, + limb0: 0xf78cd987e0436fe03fcfed3, + limb1: 0x78aafe7a25472e36af70ebef, + limb2: 0x2c8a688d9cf487b4, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -50287,15 +50249,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x95e9e398e4540f03756f106f, - limb1: 0xcc544acd2b4793048d8db934, - limb2: 0x1182cfc6ebf5fbbb, + limb0: 0x4b167c4c18b03d3cda5459a0, + limb1: 0xcba9d871319b7338d591552, + limb2: 0x228f66355cb48ea4, limb3: 0x0 }, y: u384 { - limb0: 0x3b548a953f7fe4d0170a2942, - limb1: 0x48e19a385555cb62ff075a31, - limb2: 0x22ee762d78c0b168, + limb0: 0xd4ff7a7e41adc2fe401f86d5, + limb1: 0x32ec18cb033610e0056ef128, + limb2: 0x60a8954c3304c919, limb3: 0x0 } } @@ -50308,99 +50270,99 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0x4b7bb84b23c963030f791847, - limb1: 0x7f7bfd076a819dab852498e3, - limb2: 0x701bdf8bb2c1ab9b, + limb0: 0xd42899d09c1b6781ca85f34f, + limb1: 0xfd84b29e27338faf4f79503f, + limb2: 0x7ab3289f77c0ad9c, limb3: 0x0 }, y: u384 { - limb0: 0xa643f00ee8b6f2c9348c38bc, - limb1: 0x470274c61ef0292228aa3e86, - limb2: 0x6f659ee3c9d672ec, + limb0: 0x7ea98fc97f37351810f6863, + limb1: 0x6179ad101872c0d1d72d499f, + limb2: 0x12260130d0830871, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xe9d52aa3e8e0cdf74d02b43d, - limb1: 0xdbab69dcc19a5c636d6e08c0, - limb2: 0x4b12a0b30306078c, + limb0: 0x43c0ca1b70ee603b78adf9a9, + limb1: 0xccaf3ca3b980e5566815aea4, + limb2: 0x6d3f86ae67eb5b40, limb3: 0x0 }, y: u384 { - limb0: 0x33981c9df04acc0cf68551, - limb1: 0x2b0028ee1c3428ead8512f46, - limb2: 0x25f9ffc913554ec8, + limb0: 0xbebd89c38d8bcc4e57353fdd, + limb1: 0xcf4b37833e62a6482cf40c71, + limb2: 0x5e6783afc2eabece, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xca799db0ed4e2f9e170b4cad, - limb1: 0xa48cd1f4080bd3806d06a7b8, - limb2: 0x5aacc63a0014f3a, + limb0: 0x5cd8a03cdc5d721242e9f8b9, + limb1: 0x5854c766dc3259fd611ad32d, + limb2: 0x2d69f70800fee659, limb3: 0x0 }, y: u384 { - limb0: 0x5f8f94ef7dda4cc67bd1da, - limb1: 0xefa7daf5b7dc1f1d5334bcd0, - limb2: 0x72c52f9bf49fae7f, + limb0: 0xee03382eb0b3b513e38da0bd, + limb1: 0xd80de9f3d4d347f790d3af73, + limb2: 0x7fa051dc7e40e146, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xfc40cf16dbba907e1ad1f54, - limb1: 0x8068ff87a40d9c3abca3a08c, - limb2: 0x2966b82c840ab38, + limb0: 0xda5447d4b7184deceff6d1b2, + limb1: 0xa38827ce1445b931aa9e9561, + limb2: 0x42b43ba140f64bc3, limb3: 0x0 }, y: u384 { - limb0: 0x8c1bcf0af1c437091e6e9bd0, - limb1: 0x71a73c481e3e24dc09fa0f33, - limb2: 0x24f62a24e9edff2b, + limb0: 0x70d196f5413d668318cc9a59, + limb1: 0xaa05a5a9da7fa5877302371e, + limb2: 0x37ff0ad97de7d8c, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xde459da9c0233c739b36d137, - limb1: 0xa3b5a447a46ea7ecc280ffa8, - limb2: 0x647a3f041a9f82e6, + limb0: 0x86cdd2219e4ac646426248a4, + limb1: 0x83c7826bd7b004bb555dc11d, + limb2: 0x7692b7974f2b1c51, limb3: 0x0 }, y: u384 { - limb0: 0x7cb6bf26897da31f16bba3f2, - limb1: 0xf73b3b272d19859702474fb3, - limb2: 0x27e024a99631712d, + limb0: 0x225b0aa3185b8bfd1b3f5fb8, + limb1: 0x18718cabfacfb462cc72a47f, + limb2: 0xd5e5aa7e9ba6aa9, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xad923a63debe7b1916136866, - limb1: 0x50b8238848f262a894b425a4, - limb2: 0x35cefc7281f0dc07, + limb0: 0xb962773f0d6eda85ad7da892, + limb1: 0xf11974e7942e4ea2070ed2ff, + limb2: 0x56736c7a1a85215c, limb3: 0x0 }, y: u384 { - limb0: 0x2d3cfd28e3da19439a94d2db, - limb1: 0x571733c3e3c4e29a25d6b7, - limb2: 0x1ee157184d470e1c, + limb0: 0x69c51143b905564944650fa0, + limb1: 0x2f7cb950047e2ed8343e156b, + limb2: 0x5d369d57509df69a, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6593c40d3579eaceb2d2ed9e, - limb1: 0x6f192f8e7e29b9dc11a51229, - limb2: 0x47b6b78cc310ad4c, + limb0: 0x5c0aad631b9df05968c41c91, + limb1: 0x8bab2bb4cf34be77f14847bb, + limb2: 0x5be15c49a4ec5cd1, limb3: 0x0 }, y: u384 { - limb0: 0x2836e4d1402f251dcec0af95, - limb1: 0x9b0efa746a34ca33725f5fab, - limb2: 0x4e4d84c8767fd483, + limb0: 0x4f9df544c145a2f0e55aa8da, + limb1: 0x80a9a2e6a0c540f4dff47111, + limb2: 0x10ae6b549a7912c9, limb3: 0x0 } }, @@ -50408,25 +50370,25 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xb57a5c03cb85eda6db0198ffde21c855, high: 0xebf8362b8d1353905628912bdf2b5a1 + low: 0xe4402952a3244debde1ba40d72f891f5, high: 0x81256d13e1c98b706ca1804b5a37327 }, u256 { - low: 0x33251c76d8efb5c9e7a2d2d0ca3c4050, high: 0xc3148ec2af595a3697b85380ff73f25 + low: 0x92d0177ee03373bcb4d12dd0077a3e0c, high: 0xb470ba3582a21397cfcbb07977e4c2d }, u256 { - low: 0x6282c33d3665b6a5634da412816a5ea8, high: 0x34c11e17e4132ad86b0915a8880f9fd + low: 0x51438bea3c80756b63c44c166b6bc89e, high: 0xecb27512b17abfb7914ca886dbdc41f }, u256 { - low: 0xbf33551df629253502b33be214ed05bd, high: 0xcaaf1d2bee5f64d3e37355efbdc678a + low: 0x4860d84a14ef3b6c0051ad96c8aaa259, high: 0xd0097aedf992e4f8a08d75fa2aa0e8f }, u256 { - low: 0xdba620f135bbcdb0bda314883e1fa8ac, high: 0x1b795a4daace3a3c2f89ef40b9bcb7e + low: 0xedf15be2907d563fae8e195dd8bb9fe5, high: 0x4e43d1dfaaf2b109ddceba9ed4278cf }, u256 { - low: 0x992e7dea037432634a0609aa827acd0d, high: 0xb749154aab6941b59e8484c25d203e3 + low: 0x106aa4512a03b4197dbfec255426e23d, high: 0x538652db7cfee9afaf26ab7796a4bb3 }, u256 { - low: 0x4c1f59dff6b4160bd466c7725df5672b, high: 0x81cbd1fb0335368a443a7378072b635 + low: 0x39068fc83239f0de7800f6478671f80, high: 0x61dc352954879ba26f407e4f311adf4 }, ] .span(); @@ -50434,186 +50396,159 @@ mod msm_tests { array![ ( array![ - 0x0, - -0x1, - 0x0, - 0x0, - -0x1, - -0x1, - -0x1, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, 0x1, 0x1, + -0x1, 0x1, -0x1, 0x0, -0x1, - -0x1, - 0x1, 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x1, -0x1, - 0x1, - 0x0, - 0x0, - 0x1, - 0x1, - 0x1, - 0x0, -0x1, -0x1, - 0x0, - 0x0, + 0x1, 0x0, -0x1, + 0x0, -0x1, 0x0, 0x1, 0x0, 0x1, 0x1, - 0x1, + 0x0, -0x1, 0x1, -0x1, - 0x0, + 0x1, -0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, -0x1, - 0x1, + -0x1, 0x1, -0x1, -0x1, 0x0, - 0x0, + -0x1, + 0x1, 0x0, 0x1, + 0x0, 0x1, -0x1, + 0x0, + -0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, 0x1, - -0x1, - -0x1, - 0x0, 0x1, + -0x1, 0x0, - 0x1, -0x1, -0x1, - ] - .span(), - array![ - 0x0, - 0x1, + -0x1, -0x1, 0x1, 0x0, -0x1, - -0x1, + 0x1, 0x1, 0x0, + 0x1, + 0x1, -0x1, 0x0, 0x0, -0x1, - -0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, - 0x1, - 0x0, -0x1, 0x0, 0x0, -0x1, -0x1, + ] + .span(), + array![ 0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, - 0x1, - 0x1, + -0x1, -0x1, 0x0, 0x1, 0x1, + -0x1, 0x0, 0x0, - -0x1, 0x1, 0x1, 0x1, 0x1, - -0x1, 0x1, - -0x1, - 0x0, - 0x0, - 0x0, 0x1, 0x0, -0x1, -0x1, + 0x1, -0x1, + 0x1, -0x1, 0x1, 0x1, 0x1, - 0x0, - -0x1, + 0x1, 0x0, -0x1, -0x1, + 0x1, 0x0, -0x1, 0x1, - -0x1, + 0x1, + 0x0, -0x1, 0x0, + 0x0, + 0x0, + 0x1, + 0x1, + -0x1, -0x1, 0x1, -0x1, -0x1, 0x0, + 0x0, + -0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, - -0x1, 0x1, - ] - .span() - ), - ( - array![ + 0x0, + 0x0, + -0x1, + 0x0, -0x1, - 0x1, -0x1, 0x0, - 0x1, + -0x1, 0x0, -0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, @@ -50625,29 +50560,42 @@ mod msm_tests { 0x0, 0x1, 0x1, - 0x0, + ] + .span() + ), + ( + array![ 0x0, -0x1, -0x1, 0x0, -0x1, + -0x1, + -0x1, + 0x1, 0x1, -0x1, - 0x0, - 0x0, 0x1, 0x0, + -0x1, 0x1, 0x1, + -0x1, 0x0, + -0x1, + 0x0, + -0x1, 0x0, - 0x1, 0x1, -0x1, -0x1, 0x0, 0x0, 0x1, + 0x0, + -0x1, + 0x0, + -0x1, -0x1, 0x0, 0x1, @@ -50655,115 +50603,130 @@ mod msm_tests { 0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x0, 0x1, - -0x1, + 0x0, 0x1, 0x1, - -0x1, 0x0, - -0x1, + 0x1, 0x0, 0x1, -0x1, 0x0, 0x0, 0x0, - 0x1, - 0x0, -0x1, + 0x0, -0x1, -0x1, - 0x1, 0x0, - 0x1, -0x1, - ] - .span(), - array![ + -0x1, 0x1, 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x0, 0x1, 0x0, + -0x1, 0x1, -0x1, + -0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, + -0x1, 0x1, + ] + .span(), + array![ 0x1, - -0x1, + 0x1, + 0x1, + 0x0, 0x1, -0x1, + 0x1, + 0x1, -0x1, - -0x1, - -0x1, + 0x1, -0x1, 0x0, -0x1, + 0x0, + 0x1, -0x1, 0x0, 0x0, - -0x1, - -0x1, 0x0, + 0x0, + -0x1, 0x1, - 0x1, + 0x0, + -0x1, 0x1, 0x0, + -0x1, 0x0, 0x0, 0x1, 0x0, - 0x0, + -0x1, + -0x1, + 0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, 0x1, 0x0, + -0x1, + 0x0, + 0x0, + 0x1, + 0x1, + 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x0, -0x1, 0x0, 0x0, + 0x1, + 0x1, -0x1, -0x1, 0x1, 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, - -0x1, 0x1, -0x1, + -0x1, 0x0, -0x1, -0x1, - 0x0, -0x1, 0x0, - 0x0, - 0x0, 0x1, ] .span() @@ -50771,333 +50734,333 @@ mod msm_tests { ( array![ -0x1, + 0x0, + 0x1, + -0x1, + 0x0, + -0x1, + -0x1, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, -0x1, + 0x1, 0x0, - -0x1, 0x0, 0x0, 0x0, 0x0, - -0x1, 0x1, - 0x0, 0x1, - -0x1, - -0x1, - -0x1, - 0x0, + 0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x1, 0x1, 0x0, 0x0, + 0x0, -0x1, - -0x1, - 0x1, + 0x0, -0x1, -0x1, 0x0, -0x1, - -0x1, + 0x1, 0x0, 0x0, - 0x1, - 0x1, -0x1, - 0x1, -0x1, -0x1, -0x1, -0x1, 0x1, + 0x0, 0x1, - -0x1, 0x0, -0x1, 0x1, - 0x1, - -0x1, -0x1, 0x0, 0x1, - 0x0, 0x1, - -0x1, + 0x1, + 0x0, + 0x0, + 0x0, 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, - 0x0, -0x1, - 0x0, - 0x1, 0x1, 0x0, 0x1, - 0x0, -0x1, - 0x0, + -0x1, -0x1, 0x1, 0x1, 0x1, 0x1, - 0x0, - 0x0, + 0x1, + 0x1, -0x1, - 0x0, + -0x1, + -0x1, + 0x1, + 0x1, + 0x1, 0x1, ] .span(), array![ - 0x0, -0x1, 0x0, - -0x1, 0x1, - 0x1, - -0x1, -0x1, 0x0, + -0x1, 0x0, 0x1, - 0x1, - 0x1, 0x0, 0x1, - 0x1, -0x1, 0x1, 0x1, - 0x0, - 0x0, -0x1, - -0x1, - 0x1, 0x0, 0x1, 0x1, 0x0, 0x0, - -0x1, + 0x0, -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, 0x1, 0x1, - -0x1, - -0x1, 0x1, + 0x0, + 0x0, 0x1, 0x0, - -0x1, 0x0, - -0x1, - -0x1, 0x0, 0x0, - -0x1, - -0x1, 0x1, -0x1, 0x1, 0x0, - -0x1, - 0x0, 0x1, 0x0, 0x0, + 0x0, + 0x0, -0x1, 0x1, 0x1, + 0x0, 0x1, 0x0, 0x0, -0x1, + 0x0, -0x1, 0x0, + -0x1, + 0x1, 0x1, -0x1, - 0x0, + 0x1, + -0x1, + 0x1, + -0x1, + -0x1, + -0x1, -0x1, + -0x1, + 0x0, 0x1, + -0x1, + 0x0, + 0x0, 0x0, 0x1, 0x1, -0x1, -0x1, - -0x1, + 0x1, ] .span() ), ( array![ - 0x0, - 0x1, - 0x1, - 0x1, 0x1, 0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x0, 0x1, - 0x1, - 0x0, -0x1, 0x0, -0x1, -0x1, - -0x1, - 0x0, - 0x0, - -0x1, 0x1, - 0x0, + -0x1, 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x1, -0x1, + 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, + 0x0, + 0x1, -0x1, - -0x1, + 0x0, + 0x0, 0x1, + 0x0, -0x1, 0x0, -0x1, 0x1, + 0x0, 0x1, 0x1, 0x1, -0x1, - 0x1, -0x1, 0x0, - 0x0, 0x1, 0x1, - 0x0, + -0x1, + -0x1, 0x1, 0x1, - -0x1, 0x0, 0x0, -0x1, -0x1, + -0x1, + -0x1, + -0x1, + 0x0, 0x1, 0x1, - 0x0, -0x1, 0x1, -0x1, + 0x1, + 0x0, + 0x0, + 0x1, -0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, - -0x1, + 0x1, -0x1, 0x1, -0x1, 0x0, 0x1, -0x1, - -0x1, + 0x0, + 0x0, + 0x1, + 0x1, ] .span(), array![ -0x1, - 0x1, 0x0, - 0x1, 0x0, - -0x1, - 0x1, - 0x1, - 0x1, 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x1, -0x1, - 0x1, -0x1, + 0x0, + 0x0, 0x1, 0x1, 0x0, 0x0, - 0x0, 0x1, -0x1, + 0x1, 0x0, -0x1, -0x1, - -0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, 0x1, 0x1, 0x0, - -0x1, 0x1, 0x1, 0x0, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x0, 0x0, -0x1, -0x1, + 0x0, 0x1, -0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x0, - 0x1, -0x1, + 0x1, -0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, 0x0, -0x1, + 0x1, + 0x1, + -0x1, + 0x0, 0x0, 0x1, -0x1, -0x1, + 0x1, -0x1, 0x1, -0x1, - 0x0, 0x1, -0x1, - 0x0, - 0x0, -0x1, -0x1, + -0x1, + 0x1, + -0x1, 0x0, 0x0, 0x1, @@ -51106,93 +51069,93 @@ mod msm_tests { ), ( array![ - 0x0, - -0x1, - -0x1, - -0x1, - 0x0, - 0x1, - -0x1, -0x1, 0x0, 0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, + -0x1, 0x0, - 0x1, 0x0, 0x1, - 0x0, - 0x0, + -0x1, 0x1, -0x1, -0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, - -0x1, - -0x1, - -0x1, - -0x1, + 0x0, + 0x0, 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x1, 0x1, + 0x1, + 0x0, + -0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, 0x1, 0x1, - -0x1, + 0x0, 0x1, 0x0, + -0x1, + -0x1, + 0x0, 0x1, 0x1, 0x0, + -0x1, + -0x1, 0x1, 0x1, 0x0, - 0x0, + -0x1, 0x1, -0x1, 0x0, - 0x0, - 0x1, -0x1, 0x1, 0x1, - -0x1, + 0x0, 0x1, - -0x1, 0x1, -0x1, - -0x1, 0x0, 0x1, - -0x1, - -0x1, 0x1, + -0x1, 0x1, 0x0, + 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x0, - 0x0, - 0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x0, -0x1, -0x1, ] .span(), array![ 0x0, - 0x0, + 0x1, 0x1, 0x1, -0x1, @@ -51200,410 +51163,404 @@ mod msm_tests { 0x0, 0x0, 0x0, - -0x1, - 0x1, - -0x1, - 0x1, - -0x1, 0x1, + 0x0, + 0x0, -0x1, 0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x0, + 0x1, 0x0, 0x0, - -0x1, + 0x1, 0x0, 0x0, + 0x1, -0x1, 0x1, + 0x1, + -0x1, 0x0, 0x1, 0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x1, -0x1, + 0x1, + 0x0, 0x0, 0x1, -0x1, + 0x1, -0x1, + 0x1, + 0x0, + 0x0, + 0x0, -0x1, + 0x0, -0x1, 0x1, 0x1, - -0x1, - -0x1, + 0x0, + 0x0, + 0x1, 0x1, 0x1, -0x1, 0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, - -0x1, 0x0, 0x1, -0x1, - 0x0, 0x1, + 0x0, 0x1, - -0x1, - -0x1, - -0x1, 0x1, + 0x0, -0x1, 0x1, 0x1, - 0x0, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x1, ] .span() ), ( array![ - 0x1, 0x1, -0x1, - 0x0, - 0x0, + -0x1, + -0x1, + 0x1, + 0x1, 0x0, 0x1, - -0x1, 0x0, 0x0, + 0x0, + 0x1, + 0x1, -0x1, 0x1, 0x0, 0x1, - -0x1, - -0x1, + 0x1, + 0x0, 0x0, - -0x1, - -0x1, 0x0, 0x1, - -0x1, 0x0, -0x1, - -0x1, - -0x1, - 0x0, 0x1, - -0x1, + 0x1, 0x1, 0x0, 0x1, + 0x0, + 0x0, 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x0, 0x1, -0x1, -0x1, - 0x1, - 0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x0, - 0x1, + -0x1, 0x1, 0x1, 0x0, 0x1, - 0x1, - 0x0, -0x1, - 0x0, 0x1, - 0x0, + -0x1, -0x1, -0x1, 0x0, 0x0, 0x1, 0x1, - 0x0, 0x1, 0x1, + -0x1, 0x0, -0x1, -0x1, + 0x0, + -0x1, + 0x0, -0x1, 0x1, + 0x0, + 0x1, + 0x0, 0x1, - -0x1, + 0x0, + 0x0, 0x0, -0x1, 0x1, ] .span(), array![ + 0x1, -0x1, + 0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, + -0x1, 0x1, - 0x0, - 0x1, - 0x0, 0x1, 0x1, - 0x0, - 0x0, -0x1, 0x1, -0x1, - 0x0, + -0x1, -0x1, -0x1, 0x1, + -0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, - 0x0, + -0x1, + 0x1, 0x1, - 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x0, -0x1, -0x1, -0x1, -0x1, - 0x1, - 0x0, -0x1, -0x1, 0x0, 0x1, - 0x0, - 0x1, -0x1, 0x1, - -0x1, + 0x1, + 0x1, 0x1, -0x1, - -0x1, - -0x1, + 0x1, 0x0, -0x1, 0x0, - 0x0, - 0x0, 0x1, - 0x0, - 0x0, 0x1, 0x0, - -0x1, 0x0, -0x1, 0x1, -0x1, -0x1, -0x1, + 0x0, -0x1, 0x0, + 0x1, 0x0, -0x1, + -0x1, + -0x1, 0x0, 0x1, + 0x1, + 0x1, + 0x0, 0x0, 0x0, -0x1, -0x1, - 0x0, 0x1, + 0x1, + 0x1, + -0x1, ] .span() ), ( array![ - 0x0, - 0x1, - -0x1, - 0x1, - 0x1, - 0x0, - 0x1, -0x1, -0x1, - 0x0, -0x1, 0x1, 0x1, 0x0, - 0x0, - 0x0, 0x1, - 0x0, -0x1, 0x1, 0x1, + 0x1, -0x1, -0x1, 0x0, - 0x0, + 0x1, + 0x1, + 0x1, -0x1, + 0x0, -0x1, + 0x0, -0x1, -0x1, -0x1, 0x0, 0x1, 0x0, - 0x1, - 0x1, 0x0, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x1, 0x0, - 0x1, - 0x1, -0x1, -0x1, -0x1, - 0x0, - 0x0, -0x1, + 0x0, + 0x1, -0x1, + 0x1, -0x1, + 0x1, -0x1, 0x0, 0x0, - 0x0, - 0x0, - 0x0, 0x1, 0x1, + 0x0, 0x1, 0x0, - -0x1, 0x1, -0x1, - -0x1, 0x1, 0x0, 0x1, 0x1, - -0x1, + 0x1, 0x0, 0x0, - 0x1, -0x1, 0x1, + -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, 0x1, - ] - .span(), - array![ + 0x0, 0x1, 0x0, + -0x1, 0x0, + -0x1, + -0x1, + 0x1, 0x0, + -0x1, + ] + .span(), + array![ 0x0, 0x0, - 0x1, -0x1, -0x1, + 0x1, + 0x0, + -0x1, 0x0, 0x1, 0x1, + 0x1, -0x1, 0x0, 0x0, - 0x0, - 0x0, 0x1, 0x0, -0x1, 0x1, - 0x0, -0x1, -0x1, + 0x1, 0x0, - 0x0, - 0x0, + 0x1, + 0x1, + -0x1, 0x0, 0x0, -0x1, - 0x1, -0x1, 0x1, - 0x1, - 0x0, - 0x0, -0x1, 0x1, 0x0, + 0x1, 0x0, -0x1, -0x1, 0x0, - 0x0, - 0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, + -0x1, 0x1, 0x0, 0x1, + 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x1, + 0x0, 0x1, - -0x1, - -0x1, 0x1, -0x1, 0x0, + -0x1, 0x0, -0x1, 0x0, + 0x1, -0x1, -0x1, + -0x1, + 0x1, 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x0, - 0x1, - -0x1, -0x1, + 0x0, -0x1, 0x0, + 0x1, 0x0, 0x1, + -0x1, 0x1, + -0x1, ] .span() ), @@ -51613,93 +51570,93 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0x40b0d303d938b0c5d3eea09a, - limb1: 0xa1e597c4a3a02292ec6c7049, - limb2: 0x765468ebe7d4fc30, + limb0: 0x30c16fe20b3c7a5e9a74e5ed, + limb1: 0xd6c87b3858080e8788c50cb, + limb2: 0x726978520532ce2, limb3: 0x0 }, y: u384 { - limb0: 0xbd8f10b9b1a6fcf02e6741d9, - limb1: 0xaf5e7f9e07a4223caa261f58, - limb2: 0x611ea4651bdc07c8, + limb0: 0x59f89fb3e3f8059c99629e4e, + limb1: 0xb935b046f7240cb5212f5048, + limb2: 0x10ae671de618a18f, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0x81796ed9d04c276bff0da9bb, - limb1: 0x101ab59fb92417f29e0d4b1c, - limb2: 0xa2a9f4cfcb5a5c, + limb0: 0x2db6936f5badba0f36c33ce0, + limb1: 0xd975a701f84c6dfbcf6f5284, + limb2: 0x2fa59b75aa997e22, limb3: 0x0 }, y: u384 { - limb0: 0xf7b09d5e315f9781158b9efa, - limb1: 0xe0f04664d69165cbb725c57, - limb2: 0x15337b9a03d6dcf4, + limb0: 0x8ddff165e6c355a27d720b79, + limb1: 0xc7a29e76d92abc488295e298, + limb2: 0x26141de86f6dc7c9, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x549ae541e3e3a3ed9106c868, - limb1: 0x91474904ea7e674123885de9, - limb2: 0x50108d235f12b368, + limb0: 0x52e9d0e29349b615179671c5, + limb1: 0x4ac5a3ee9efd522b8e8be61e, + limb2: 0x2c72dfd8b81a2408, limb3: 0x0 }, y: u384 { - limb0: 0xf2785cac05685eacd5690757, - limb1: 0xd2ae26595364498894c43caf, - limb2: 0x5cdbc2b6db7b24c7, + limb0: 0x85a8e009df373de0e9439ed1, + limb1: 0xa7abf60500afb601f4c1ed87, + limb2: 0x1c78b3926cf055b3, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0x57c60cb7c099fc5d6f582fa6, - limb1: 0xdbf0fb0acba42957bd9802ac, - limb2: 0x568f7fc23bef714a, + limb0: 0x3e784c16852a2d94a5ca975, + limb1: 0x35736d6b323934f4869f1d5d, + limb2: 0x45f7a3a56c332c2b, limb3: 0x0 }, u384 { - limb0: 0x772bcb7608ca79cf3cf915f, - limb1: 0xbda37fe9a42fca9da4dcfd4f, - limb2: 0x4bbd02bea49cfae1, + limb0: 0x15ed3042676e0ed59e2bf8bd, + limb1: 0x85d1ff78948a1e0b141ace30, + limb2: 0x5322bef697c6e731, limb3: 0x0 }, u384 { - limb0: 0xd5c887f9432cf31f0f6d0194, - limb1: 0x101c0bbdebfe8dce82d428af, - limb2: 0x23338624a755579b, + limb0: 0x5e2a51df873e9c9d3a59bd2d, + limb1: 0x6f6c5f6540eb496c91271e50, + limb2: 0xaa5160813fd6df2, limb3: 0x0 }, u384 { - limb0: 0x3128cfdb12dec4b3b7500c62, - limb1: 0xbc08d50713734eac819cc2cf, - limb2: 0xf8efab3285d0509, + limb0: 0x473819309b36ffec3407312d, + limb1: 0x6a4e743b54577c0acdc15f56, + limb2: 0x22f9f9dd9bec393d, limb3: 0x0 }, u384 { - limb0: 0x226bcaea63100b6829b0c38c, - limb1: 0xf93eaf9627fe1d4c4d8a0f85, - limb2: 0x1af604822bcbadb1, + limb0: 0xcfc0f4801327c153bbcedd73, + limb1: 0xc4ad78d50c694ce79e17db14, + limb2: 0x218e37a96b974a6e, limb3: 0x0 }, u384 { - limb0: 0xaff99b0a8a8a68abd9af6a7, - limb1: 0xb04863307975f2ce74467d0d, - limb2: 0x679b591e10003773, + limb0: 0x4180df647e19752dc1dbb0be, + limb1: 0x68cc972d6939dcc33665d90c, + limb2: 0x15b8451ab8df5af6, limb3: 0x0 }, u384 { - limb0: 0x7c614df220d2006e2643358e, - limb1: 0x51e722d121567a6d2bdceb62, - limb2: 0x291574ade9535d9d, + limb0: 0x4c33778afa0a709a1f1eda77, + limb1: 0xc7b1a4dc22903f0c87e043d0, + limb2: 0x631ba2a6d782e8f3, limb3: 0x0 }, u384 { - limb0: 0xca340c8083ee0474ad8fd73d, - limb1: 0xffffffffffffffff0310143b, + limb0: 0xf5da4abcbe944f6b5b780184, + limb1: 0xffffffffffffffff9b7e6eea, limb2: 0x3fffffffffffffff, limb3: 0x0 } @@ -51707,51 +51664,51 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0xf87da46032911a6202f14cef, - limb1: 0x5ee8b7680602000e582de94c, - limb2: 0x26a16f7f9a7dff62, + limb0: 0x401d61321152b11da99f3b03, + limb1: 0x5f7a0dd3a39dc81c36a59014, + limb2: 0x181ec52ee804c69d, limb3: 0x0 }, u384 { - limb0: 0x1359c794b03b0ec97e26665a, - limb1: 0x35cebdaeaabd48b63a6237cf, - limb2: 0x422a2379946af258, + limb0: 0xce62f93e7be559ef41fa05f3, + limb1: 0xaf54835fbc134010b7a518da, + limb2: 0x18357ebc422d7ce1, limb3: 0x0 }, u384 { - limb0: 0x64e8b1489e20b548203308c6, - limb1: 0x1536efd8f00c58134bd03252, - limb2: 0x19378d332216db8d, + limb0: 0xf1ecabe120ed6b130c60f835, + limb1: 0xe0fa55ca77c0288caec49b99, + limb2: 0xf8a76aab854587c, limb3: 0x0 }, u384 { - limb0: 0x8ca150d48a8b4985df8d3f15, - limb1: 0x9b63b30599635621233c94a8, - limb2: 0x2318ac9e5fd7e3f5, + limb0: 0xb1162f668d83d8b11a0f15b2, + limb1: 0xc08325c47d34b5d9b8395c, + limb2: 0x18303182d8d8b5ff, limb3: 0x0 }, u384 { - limb0: 0x78cd0281bb86249606d61338, - limb1: 0xc65346ab25eab1016a3dd972, - limb2: 0x15c5af63e0400672, + limb0: 0x46328afd9cd1f64555b7c94a, + limb1: 0xcd534f3799a1f8f4ccb12482, + limb2: 0x644479404aa3700, limb3: 0x0 }, u384 { - limb0: 0xbc197d5a5cc935ca388a044d, - limb1: 0xfa410dd4277d146d416b6cf3, - limb2: 0x7b20892acd3154e4, + limb0: 0x9091536587941d1702561287, + limb1: 0x92f802e9a8a4b9f5fa420e3d, + limb2: 0x570a8f24056bbbc7, limb3: 0x0 }, u384 { - limb0: 0x82abfb262217aabf31f91c06, - limb1: 0x7a8c69ed9bb9a1f93293697, - limb2: 0x4ccd5e05f561cd7f, + limb0: 0x5a6ae8fdb6fe964da140681, + limb1: 0xe5acb2b362c30316b33a0110, + limb2: 0x67016109c6607b51, limb3: 0x0 }, u384 { - limb0: 0xbe55034feab7a33e72bfff47, - limb1: 0x7a76387d189faf318e7c6e56, - limb2: 0x643bebeb9a8049f9, + limb0: 0xe3ed4d5c8cec6cbf96d25477, + limb1: 0x2bf676cd6e3fe50d76766be8, + limb2: 0x77e10628af6efda3, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -51759,126 +51716,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xca5e72b6bd68261e80ef329c, - limb1: 0xe2dd2f0f0788f4b4c0731a17, - limb2: 0x47ca5de2b717637, + limb0: 0x3fc091594e2391fd39b304e, + limb1: 0xf5d8393f9238a38e4a6e4260, + limb2: 0xf70d05e927097ee, limb3: 0x0 }, u384 { - limb0: 0x274049d5bf254373110d3217, - limb1: 0xf677c8f1e82bbb84900fbe44, - limb2: 0x5c24a0d4f0c26dc6, + limb0: 0xb94ef67908a5dbff5a19ff1e, + limb1: 0xefbaba0bdbc9ec7f49b4e6a3, + limb2: 0x2b814a3d3427ca03, limb3: 0x0 }, u384 { - limb0: 0xbc57da5603a2dda27a88fc22, - limb1: 0xa8d65aa30c16e41744a6bdfb, - limb2: 0x2fb094b244310c28, + limb0: 0x35dead03bbd337fb6e4569d9, + limb1: 0x3e2b65bff6fca35a320a805f, + limb2: 0x272428e19e742535, limb3: 0x0 }, u384 { - limb0: 0xb56af4d878e96b0f28c22ec2, - limb1: 0x8ba9e065b696ab6ef3533def, - limb2: 0x7c342ccdec4f208d, + limb0: 0x6290f46e83daa76a62eccbf2, + limb1: 0x13dbd377bb3e03bb910357d8, + limb2: 0x5a4cb7e9e1c1c2b, limb3: 0x0 }, u384 { - limb0: 0x61385741a0699f6734c9fd07, - limb1: 0x8fb0b9d266e54e549b2e37d4, - limb2: 0x365c39c887e7450c, + limb0: 0x460dc7bc67b1a8b906852406, + limb1: 0x5f04b7cb91a8302ac097a734, + limb2: 0x614b8bfe6bd9db6e, limb3: 0x0 }, u384 { - limb0: 0x702bb7a5beec992cf77c3c6d, - limb1: 0x26030d88b5d9282649408132, - limb2: 0x6b2142b810b1d8cc, + limb0: 0xbd00e8c5afd9d69a806c5707, + limb1: 0xf70c36f8af97ecc9694467c4, + limb2: 0x49aeda5481891d22, limb3: 0x0 }, u384 { - limb0: 0xb4568561670cf7781e424450, - limb1: 0x771cd46ed982132104973022, - limb2: 0x502bbcb371df41f8, + limb0: 0x78b14d9a2bf05f12489f7c44, + limb1: 0xd39c2487b0ce0a4ff1d6bc1b, + limb2: 0x73d3f30a86f62c70, limb3: 0x0 }, u384 { - limb0: 0x676ebf099f713ca725603cad, - limb1: 0xdf2458346d71a91ba8574a0e, - limb2: 0x1fcffb6d2594fe9d, + limb0: 0xa1ac90ff74416b62e0b4bbc1, + limb1: 0x825c293c414cff559543a598, + limb2: 0x4496de047503c0ee, limb3: 0x0 }, u384 { - limb0: 0xeaf270939213510d37685121, - limb1: 0xc3dc16e78a9a66881ac47efe, - limb2: 0x6182c064196277bc, + limb0: 0x73dcf09bb8155585ddd1847a, + limb1: 0xaf18df72d4f5f2ae61b39457, + limb2: 0x68c22b0c1c20059, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xae79b40aa09e0d3f0e1e5d58, - limb1: 0x728df17bb09f2e5ea03c269a, - limb2: 0x6f04b59f459c6a1d, + limb0: 0xe0382e8c1d0c7e01bdbc0a9c, + limb1: 0x872127fa0cbf656c9f4ba72c, + limb2: 0x44e063cb9e4651fd, limb3: 0x0 }, u384 { - limb0: 0xf42388b50ee4da062752ab8f, - limb1: 0x4020a52c41a4b42509e90be0, - limb2: 0x75675519a8a892ce, + limb0: 0xa5085ee3352a63a658daec7e, + limb1: 0xe38afb1626ad8c3f869e52a3, + limb2: 0x512ad901be707ecb, limb3: 0x0 }, u384 { - limb0: 0x8411c945b210e057fb4c492c, - limb1: 0x78c355f64554ac27f46ce671, - limb2: 0x1df21f665e6c1975, + limb0: 0x1a09d2ba00094f39bf89f853, + limb1: 0x7d0419075c471b7e42c6736f, + limb2: 0x5b9ce91a82bd6a07, limb3: 0x0 }, u384 { - limb0: 0xcfcdf50a49122bb7860b39f1, - limb1: 0x535098ce80ca37de71cfaeff, - limb2: 0x4102241161a1b400, + limb0: 0xf1dde16a4ba34df27e0fa461, + limb1: 0x187f94f9ba7cb6b1b3ea8c53, + limb2: 0x615b2906d37a72e4, limb3: 0x0 }, u384 { - limb0: 0xce7d4981bb28ca0f288794ae, - limb1: 0xe29e875cfd938e609c7e0a4, - limb2: 0x2fc4741f829a4029, + limb0: 0x8ceefb1eddf8bcd75e3f2766, + limb1: 0x63f0e0470d31603051bf9d25, + limb2: 0x2f48c878dac3c930, limb3: 0x0 }, u384 { - limb0: 0xf25c8e2d7d436e10542ad00b, - limb1: 0xa9394de8d0bb52f5874cf939, - limb2: 0x126686966a4960c7, + limb0: 0xa53cf9ce78ccbb6316b3471f, + limb1: 0xe896389cf49d3a4936171dcc, + limb2: 0x69b3aab9933bca01, limb3: 0x0 }, u384 { - limb0: 0xa2cca8715319ad1af7fdb297, - limb1: 0x3a9aefad6491c9f437325fda, - limb2: 0x74f5eaa998943aa6, + limb0: 0x8150f4e656b52390c20e0ef2, + limb1: 0x93a56fd864c49d60127df9f9, + limb2: 0x5675742db22ace94, limb3: 0x0 }, u384 { - limb0: 0x86fc8e1b7fbacbd26c453730, - limb1: 0xc28045c39159cdf7b04c3c8b, - limb2: 0x6015e8276d91c115, + limb0: 0x994b95b008e079486ec55770, + limb1: 0x73fda1f70d8c654b8f882241, + limb2: 0x160e4b2c13e3881e, limb3: 0x0 }, u384 { - limb0: 0x1a18f8219dc67dc69b3c53cf, - limb1: 0xcfbe65234102b091e968bc28, - limb2: 0x7c5834c48c9c7e56, + limb0: 0x309d519d26f085fa32ea794d, + limb1: 0x4ef021df149a4a48d961f293, + limb2: 0x794b6eac6468a3cb, limb3: 0x0 }, u384 { - limb0: 0x8f51261dce898c4e2ab53346, - limb1: 0x3940a7ac3b36d7f5fee1ecf4, - limb2: 0x2a1c0ad99b1b8c65, + limb0: 0x124bd98787e1caf3d2d01dc1, + limb1: 0x174493c0c43e40ed1ef2b76d, + limb2: 0x44500ddd6c1a3a38, limb3: 0x0 }, u384 { - limb0: 0xbe55034feab7a33e72bfff47, - limb1: 0x7a76387d189faf318e7c6e56, - limb2: 0x643bebeb9a8049f9, + limb0: 0xe3ed4d5c8cec6cbf96d25477, + limb1: 0x2bf676cd6e3fe50d76766be8, + limb2: 0x77e10628af6efda3, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -51888,99 +51845,102 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0x4d5287822015c52a39e890f8, - limb1: 0x9443edcf7bcdd01495de2080, - limb2: 0x44adba44c05906d0, + limb0: 0x6bb777b91593836c0d63c5c8, + limb1: 0xd03792ba0cd151706e4c1a6b, + limb2: 0x5bde3fc8ab36a2b0, limb3: 0x0 }, u384 { - limb0: 0x60ff4f2805d47ee1a5e00ad3, - limb1: 0xe5a022c404da987e346d129b, - limb2: 0x5018613e7a076c2d, + limb0: 0xca65ac49da8aa60d16badf8d, + limb1: 0x82b788960d98c3188838407e, + limb2: 0x40b3984ce1c95b10, limb3: 0x0 }, u384 { - limb0: 0xbf7a83ae78690351c2e073f4, - limb1: 0x269be5289bbe1973bb31d370, - limb2: 0x7f8f6e6db54b49b3, + limb0: 0x733b7c83221914d8936b8cc2, + limb1: 0xc2c38f4db97b838596246e9e, + limb2: 0x60ad3f2fbd16276f, limb3: 0x0 }, u384 { - limb0: 0x47e5d8db152d9376b663427e, - limb1: 0xa7529dd2aec35083ce7f0a22, - limb2: 0x5fc2178f64dc0c10, + limb0: 0xd0b41ca4abe59a5b83dbda0e, + limb1: 0xa88ed8ce63e6e9d9a646bace, + limb2: 0x259e06f891c5fc0e, limb3: 0x0 }, u384 { - limb0: 0x3bd989a0ed18adee16ba9646, - limb1: 0x8fdba0c1cea956de2e3bc3b0, - limb2: 0x585a3eb68814729e, + limb0: 0x337259c300a00ef317677849, + limb1: 0x9f02e1411efa77404c516806, + limb2: 0x402d637182ed5fb1, limb3: 0x0 }, u384 { - limb0: 0xb45c32d7caaf379ef9b4d3ea, - limb1: 0x7d211869801c891814303ef2, - limb2: 0x591a9f0769781e03, + limb0: 0x15d0e5b1b42c4ded3329e88, + limb1: 0xfb092fbfc025739aaa10c2c0, + limb2: 0xff61ab9329b41a5, limb3: 0x0 }, u384 { - limb0: 0x92d208eda8450af69b1e2db1, - limb1: 0x75f130138d18656b7dedcdd7, - limb2: 0x4fc013da2ede1a21, + limb0: 0x7812477e8711a6b3149fd2f9, + limb1: 0x76349aef720e13017b73c78a, + limb2: 0x2f50612cfbbbcabc, limb3: 0x0 }, u384 { - limb0: 0x5005149724ee65c3db86e006, limb1: 0x1ab039e2, limb2: 0x0, limb3: 0x0 + limb0: 0xa93463fddfab2a982fcc7971, + limb1: 0x1100085e, + limb2: 0x4000000000000000, + limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x269b36e397fffb2f5d7033e6, - limb1: 0x1981e0b6740e3294603aec31, - limb2: 0x70dac3bce6bef905, + limb0: 0x5cbfd685c437c761fd0fe692, + limb1: 0x50ec01144bb9d61ebaaa186f, + limb2: 0x7a31f248bdb8a5f0, limb3: 0x0 }, u384 { - limb0: 0x90a0fbcb631f4e83207bb682, - limb1: 0x35b6ca67d828a67576149b9f, - limb2: 0x24cd887e0290cf96, + limb0: 0x7f583c60a7df48cdcf86f5a, + limb1: 0xb86de5f6e7ada72e1ab61a6e, + limb2: 0x7f0fc28777b79c25, limb3: 0x0 }, u384 { - limb0: 0x834511f79df0eac56f84fd43, - limb1: 0x479ba7b913d11d7179adf9ad, - limb2: 0x489516d72228329e, + limb0: 0x77da476273952974c5497cc4, + limb1: 0x457e0516477e544acd93ca95, + limb2: 0x7245a605dc15b4fb, limb3: 0x0 }, u384 { - limb0: 0x10d7c49a3a8f23efc4799b51, - limb1: 0x3861c3008432f94d9d1e188e, - limb2: 0x781037f315005f32, + limb0: 0x7c9481c97d9e698fbf724fad, + limb1: 0x8910974a81b412cae0f9f35d, + limb2: 0x3ce58a53fcd30ac7, limb3: 0x0 }, u384 { - limb0: 0x96a683ca987d04d96397ca86, - limb1: 0x58349e19e3818b1b14b3ea9a, - limb2: 0x41452f5b60f9d37e, + limb0: 0x9232d73bd4e54a2faa116a06, + limb1: 0xb18da4f21bc25cf1fac93433, + limb2: 0x784ea8a9a5c85dfd, limb3: 0x0 }, u384 { - limb0: 0xeea9d2f58ab07bcbda4d48c2, - limb1: 0xcba49198cb8faf6d31e6dbbb, - limb2: 0x3c00ab3b8d5b40ee, + limb0: 0x3815f36b2dfb2435d9a9ef2e, + limb1: 0x5d1181107a235fc143337b8d, + limb2: 0x38052dffc931f296, limb3: 0x0 }, u384 { - limb0: 0xc2230b8ea74e3763e4ca5cdd, - limb1: 0x1884d74024b864425ced405c, - limb2: 0xcc394ecd02213e3, + limb0: 0x9eeda8704fe887da6136f534, + limb1: 0x1a03ffdeae5cc180e46472c3, + limb2: 0x1786180e990cfbf, limb3: 0x0 }, u384 { - limb0: 0x7d8c6779f3a42c9847a0f639, - limb1: 0xc411aa2031bb9d1dcdb9383, - limb2: 0x59edaae2b289ebce, + limb0: 0xe6f829cf3c7b2d0efa83fd84, + limb1: 0x5fed577efb73f7fa1f936a2f, + limb2: 0x4f6202382528ac62, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -51988,126 +51948,126 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xde22c378d9a576899a7dd18a, - limb1: 0xda0a829cecf173327c826066, - limb2: 0x25aa14327013e16c, + limb0: 0xc4b5598dcd5bf46994510679, + limb1: 0x463bd679bfa351944d0b4fc7, + limb2: 0x249e9a2f8560b6a0, limb3: 0x0 }, u384 { - limb0: 0xc5351d173f4835abf90453fa, - limb1: 0x3e4c97639143726bedf8eefd, - limb2: 0x4b05f50d54a0ec87, + limb0: 0x49ab351eb781634e5db2f6f1, + limb1: 0x179b32d78e71692deb965163, + limb2: 0x19c28b6dd7ac38be, limb3: 0x0 }, u384 { - limb0: 0xc62b39b75c7a4e3a8d711b1, - limb1: 0xca9d46a05bb7b3752747094e, - limb2: 0x45bd79f4a69a40db, + limb0: 0xdfe9a6d13a93decbdf41bd1a, + limb1: 0xbf806d580606b090d684f627, + limb2: 0x6f72aab9b398df58, limb3: 0x0 }, u384 { - limb0: 0x58c998768432856c63a21bb0, - limb1: 0x4385ee658e137fc2130437c, - limb2: 0x767738bd1d5fe525, + limb0: 0x337a67f0ed45d3e47b3aea62, + limb1: 0x5f9fa657d56999138416cb6a, + limb2: 0x4c31acc78a358bc9, limb3: 0x0 }, u384 { - limb0: 0x1b23088e9693906f75ce92a8, - limb1: 0x24adc518ded28cd79a5a15f, - limb2: 0x6d17de8635688075, + limb0: 0x8a7cb7b4259f471ba51810a1, + limb1: 0x78de676444a40f3e16e1b849, + limb2: 0x354ed619c93fe2bf, limb3: 0x0 }, u384 { - limb0: 0x53e9ee4e0a6277e0f79aa0a8, - limb1: 0x469566d96b8854e7012055e6, - limb2: 0x7b3d58504cb4eef1, + limb0: 0x44db0a681aee57bc97c3729c, + limb1: 0xca833f7094b0a30f9c7731df, + limb2: 0x68ad264aff5b6b25, limb3: 0x0 }, u384 { - limb0: 0x3a871fc060e527c264e1eea3, - limb1: 0x6583de26e710e066df861ec7, - limb2: 0x26d1a87b922ac520, + limb0: 0x89f5ccd9170bce32f6a9718f, + limb1: 0x13fd77c9941ca1e4a3b72c06, + limb2: 0x3dbabe91323ac2db, limb3: 0x0 }, u384 { - limb0: 0xb487d161765e16bf394a0af8, - limb1: 0xcd72abebd2dc3a6e1a524677, - limb2: 0x677b55c23efbf111, + limb0: 0x1a3a819987b7f1b49d712756, + limb1: 0xda2dc81dd217dd0dd5e4afd, + limb2: 0x32c8ef0ebfee809a, limb3: 0x0 }, u384 { - limb0: 0x1f8fdb502d085731cab00dee, - limb1: 0xe53c9dba03164b08d097b00a, - limb2: 0x51c906fc095c9429, + limb0: 0xc13c62c40cf1d15c27c588af, + limb1: 0x515e914a83d0a663c4308761, + limb2: 0x467ebabbad88807b, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x823addee491957a8e4a8fcc0, - limb1: 0xdede58ffe8af5b2b3e1d7c11, - limb2: 0x10ed4c74bd732963, + limb0: 0x58004a22f103ebc816bb3c4e, + limb1: 0x51c7502e3a57d64e488aac58, + limb2: 0x7881393dc89535ef, limb3: 0x0 }, u384 { - limb0: 0xd881cda97cf8bebd51fb810b, - limb1: 0x310f96497e0a30099002e028, - limb2: 0x7dadfc6650c733b, + limb0: 0x6af83ca0c8678e8d85f34f95, + limb1: 0x5bdec6cf3b660f669748495, + limb2: 0xfbeaebd949515b3, limb3: 0x0 }, u384 { - limb0: 0xe7aaa0e10f824408e60be318, - limb1: 0xc60d47729084d64349bd51a7, - limb2: 0x446c7bb85c8c920e, + limb0: 0xfa8f2cecd64fbad5e1a2001c, + limb1: 0xbf4774bac9af16ac1cbc5360, + limb2: 0x6537298999464976, limb3: 0x0 }, u384 { - limb0: 0x91eeafa2b217344d6b662974, - limb1: 0xa7620d4ac4852e03876345a7, - limb2: 0x3a07899a85500abd, + limb0: 0xaf89aa615b49e3a116baa509, + limb1: 0x4360fd7a95979f92fe57f3a9, + limb2: 0x4c3854f9a0240579, limb3: 0x0 }, u384 { - limb0: 0x26127f7e0e395cbbd992a7f8, - limb1: 0x5bc0c16e0f1d019aebeef623, - limb2: 0x7443f87657f2bb68, + limb0: 0xc6b26e12936734fd5e09216a, + limb1: 0x8fad079118da3071eea95d53, + limb2: 0x29972798fbae710d, limb3: 0x0 }, u384 { - limb0: 0x115fe5fb12c65ac7603176ac, - limb1: 0x8e4c294da2897fb2d5fb759a, - limb2: 0x60ff5d6c0aced45e, + limb0: 0x23a0b58a0ec89906194eb40d, + limb1: 0xe21d7d239714a79c65f20260, + limb2: 0x6459d6ca1c457ebe, limb3: 0x0 }, u384 { - limb0: 0xfc6697350b864970b9ec62ac, - limb1: 0x20075b47f44dbc6a765bb54, - limb2: 0x9aac4ed918458d6, + limb0: 0x5c21128fe921399032af74b3, + limb1: 0x1b944b516620773546818f9, + limb2: 0x2624548068f14ef6, limb3: 0x0 }, u384 { - limb0: 0x3644aafd60ca94f24918feb6, - limb1: 0x742af6bd3dd4aeb9b51215e0, - limb2: 0x2442b9f405e27df8, + limb0: 0xb55f119d4a07991d843cacdf, + limb1: 0x63e8c54cd351a981b39d538c, + limb2: 0x718fd664ccae4341, limb3: 0x0 }, u384 { - limb0: 0x37ee2822ce03c26d4b11b6db, - limb1: 0x9a11b4e7cd7e31351c4a4f7c, - limb2: 0x77910e40274fa559, + limb0: 0xfd14dcd07ada36b9a9b0bad9, + limb1: 0x862801302da9b514afff39a, + limb2: 0xe82f3dd1e7a4079, limb3: 0x0 }, u384 { - limb0: 0xcec8368653c018f2dd86740a, - limb1: 0x4a1cb84d8633a218c8a5f6b9, - limb2: 0x6a1241c075dbd2c9, + limb0: 0xab92d367fc5a696959f30c61, + limb1: 0x4b9be0ec0fd7ff57501d2920, + limb2: 0x5ec70e548f4a8ea5, limb3: 0x0 }, u384 { - limb0: 0x7d8c6779f3a42c9847a0f639, - limb1: 0xc411aa2031bb9d1dcdb9383, - limb2: 0x59edaae2b289ebce, + limb0: 0xe6f829cf3c7b2d0efa83fd84, + limb1: 0x5fed577efb73f7fa1f936a2f, + limb2: 0x4f6202382528ac62, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -52117,9 +52077,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xfba953c680ae17e17aec666a, - limb1: 0x412f56b332474181de987fba, - limb2: 0x363f3bd00fccf5be, + limb0: 0xcbb25ea588743124346e4361, + limb1: 0x2c4eb95e1a2e3881d5479002, + limb2: 0x6e61430062610d73, limb3: 0x0 }, u384 { @@ -52132,15 +52092,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x9ed922f6a55aaad434cefca2, - limb1: 0x54f588763cead1e1357c4a4a, - limb2: 0x3657748884b707cd, + limb0: 0xf2233ff3431e5453e6fa6304, + limb1: 0x734ea8fbb0a8fddcc8281d1c, + limb2: 0x26013cb4fcaf8edf, limb3: 0x0 }, u384 { - limb0: 0x29ebabe44bd034a66feb8dca, - limb1: 0x5e9e015b5c5d80cc3e6a56fa, - limb2: 0x2f4cc8e7d121f23b, + limb0: 0x7f5f9bae11088fdbb1a65148, + limb1: 0xdbc4b50f68b63fd8a204c75d, + limb2: 0x23e784b19d4c5dd4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -52148,54 +52108,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x9722b914c5c66948bdce6ccc, - limb1: 0x4509225df881f7d0c3a55a79, - limb2: 0x3a29007a722657be, + limb0: 0xc178561ae174c6bcc70893ca, + limb1: 0xa30f5e58dde986211d7f177c, + limb2: 0x7946fe85bbe4296c, limb3: 0x0 }, u384 { - limb0: 0xcc52aa21a10c3d6736ba4cf6, - limb1: 0x33d748832f71245b919770, - limb2: 0x4660514d7af22107, + limb0: 0xe7ce4058265b44f8256c50de, + limb1: 0x9f26e5ce636eedc9b0bbec9f, + limb2: 0x22ebab148af584b3, limb3: 0x0 }, u384 { - limb0: 0x6975c8b34166c55b9014d11b, - limb1: 0x842b408eaacb85a48939655b, - limb2: 0xa4dc8aec4a04e4, + limb0: 0x9291028a5337f00695b33eab, + limb1: 0xa1513ed1bfabe515555b9927, + limb2: 0x36898b7121a6a26, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0xb1ccd9f5a872c6e8d278dc3c, - limb1: 0x813956880d52bf6a17814ca6, - limb2: 0xd2c46cae353dbca, + limb0: 0xc9c394175dd1ee1015c8fec2, + limb1: 0x82149044ec6ca39e579d9cb5, + limb2: 0x92c96bce9674c91, limb3: 0x0 }, u384 { - limb0: 0xebaee68bd1cc26d1fe2c5ba1, - limb1: 0x34700bf879b2b640efd13395, - limb2: 0x13fe78243669cfd0, + limb0: 0x2a473a6cd701076a1c6d76be, + limb1: 0xb55cd54f7baefcc8240569b7, + limb2: 0x59df4de218244b6a, limb3: 0x0 }, u384 { - limb0: 0x928289165c421c684fa3fb44, - limb1: 0x3526e64c0694521c5b164391, - limb2: 0x7ccf7ca18547676c, + limb0: 0x6d73baebbba535ff0560fb8a, + limb1: 0x9ae5116dd4679a41a43c3c97, + limb2: 0x4037370f4b2384, limb3: 0x0 }, u384 { - limb0: 0xab7e4dee51cc8c632d8b13e2, - limb1: 0x868d69839e660fb7a13500a7, - limb2: 0x13a6215c2a70c6b3, + limb0: 0xfec86aeaef9035e2dfb67a44, + limb1: 0xa4e68a0912243bb333e0d379, + limb2: 0x34fe988a2694dc5, limb3: 0x0 }, u384 { - limb0: 0x29ebabe44bd034a66feb8dca, - limb1: 0x5e9e015b5c5d80cc3e6a56fa, - limb2: 0x2f4cc8e7d121f23b, + limb0: 0x7f5f9bae11088fdbb1a65148, + limb1: 0xdbc4b50f68b63fd8a204c75d, + limb2: 0x23e784b19d4c5dd4, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -52205,16 +52165,28 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0x9f8623e76dc5a9a616f74fbe, - limb1: 0x6625d4bcaf0be499e3489e88, - limb2: 0x92c588565b019b4, + limb0: 0x1722e476b724f7ead64481ef, + limb1: 0xa48b4fce1b33dd3c8dfc5a8d, + limb2: 0x38bdac48f89a2d98, limb3: 0x0 }, g_rhs_sqrt: array![ u384 { - limb0: 0x9326b52a655d6b2a8aa6c14f, - limb1: 0xa45d94e6882a1af09b89711e, - limb2: 0x287bd6d1934cd7c8, + limb0: 0x9c49ea93c7d120f75ce31cd1, + limb1: 0xc30eb106c1f4497d51ea1eff, + limb2: 0x1e372d9e3052ecd4, + limb3: 0x0 + }, + u384 { + limb0: 0xf70ed147e06479f342041a1f, + limb1: 0x6d4179efbc1c21de1f10569a, + limb2: 0x206c1da1b15e0d75, + limb3: 0x0 + }, + u384 { + limb0: 0xefe29b6b8287463a823b4580, + limb1: 0x1a92823ccc8d6442db7c6d70, + limb2: 0x1ed3ace31a26063e, limb3: 0x0 } ], @@ -52225,15 +52197,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x57d9b56d29026049cd17613d, - limb1: 0x1c4bd02fc51875c2cbefd773, - limb2: 0x72c2f16c82d1b4a3, + limb0: 0xa9fa153f1b43aaf91b1e9bd4, + limb1: 0xf348d3cf3f029469a94c96e9, + limb2: 0x3be44c5809e41d72, limb3: 0x0 }, y: u384 { - limb0: 0x7b05571e4d3c27cbf49c378a, - limb1: 0x1a176446d3c3b7cd4e8e3a6e, - limb2: 0x1dd97743c8b2246, + limb0: 0x2350f491228b0ab06248fc5a, + limb1: 0x28df5b5e4093d2235c5bf3ff, + limb2: 0x48bc6a6327302d4f, limb3: 0x0 } } @@ -52246,113 +52218,113 @@ mod msm_tests { let points = array![ G1Point { x: u384 { - limb0: 0xb7d58183fa80726086a5eb61, - limb1: 0x7b043bc5f7403be80ff6bed0, - limb2: 0x41040bfe3fadc201, + limb0: 0xdb4facdf2fa39e687873beb0, + limb1: 0x477c57168452473c91f874e9, + limb2: 0x3b27209271c3a1d3, limb3: 0x0 }, y: u384 { - limb0: 0xb4ee88c4cb8ed1799da05014, - limb1: 0x5ff4bb0a9d699ebebc9123b1, - limb2: 0x20ae4f2daf8b5d9c, + limb0: 0x954a9c2b8372ddf1ff67f854, + limb1: 0x454fdb9e026657146bc8d60d, + limb2: 0x6b5575b00877e3f4, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x22fcfb7fed093c74f24e20a0, - limb1: 0xcd674baa23aa37fabce8d9ec, - limb2: 0xa1da13bba930013, + limb0: 0xf11acd16e9db5eb2433d9c1d, + limb1: 0x14fc0ce7e1f0f697887a3615, + limb2: 0x44d0477e921abf10, limb3: 0x0 }, y: u384 { - limb0: 0x2c4c2f8102b8b6c56fb94440, - limb1: 0x2931c4c12c25e6074164e31a, - limb2: 0xfb63587d86b9cef, + limb0: 0x7bae11314a0744e6079f3f06, + limb1: 0x59a19bea5444af6c63370487, + limb2: 0x5491dd695c96a483, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x42ea53c860b03522b58f80e7, - limb1: 0x30977de4fa9ca79e7e74965b, - limb2: 0x73beb4c7c8839df2, + limb0: 0xe4acaa020ee6541be3542ac2, + limb1: 0xf51a335d81b740c199b241c, + limb2: 0x5f4bbfe606867d22, limb3: 0x0 }, y: u384 { - limb0: 0xa101ee69ffba78d5bffe4288, - limb1: 0x92c9dab9207a5996adec828d, - limb2: 0x6cee719a59b3a260, + limb0: 0x602eeeca30a4bf338d571f78, + limb1: 0x30bb78d6a4221f43c147d48e, + limb2: 0x5821fbc633013210, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd0363eeb33c20f7af3c6f280, - limb1: 0x55ba13ba356ffaf857cb50d5, - limb2: 0x7d56335136ccb8af, + limb0: 0xfce758e0d5dfe850f7f8d7d, + limb1: 0x8ad3635587086a2be43bab96, + limb2: 0x2f64e53521da8e2f, limb3: 0x0 }, y: u384 { - limb0: 0x7237bcb5b488b10e789b2a8a, - limb1: 0x34b0a6db687056ff10a7b9d4, - limb2: 0x45aa5c73270f0e00, + limb0: 0x2bf4785408f75402a16168c9, + limb1: 0xdaf8ed41417be7bf41f9902b, + limb2: 0x68f087087c6304c7, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x5994a8216215e3dc16ca6da2, - limb1: 0x3fafee653ca63288e22b2552, - limb2: 0x7e4284e604d38852, + limb0: 0xfcc7cea938780081211f912, + limb1: 0x445e8ab215f1b999aa93b1b3, + limb2: 0x1e4e3d0f48aca54d, limb3: 0x0 }, y: u384 { - limb0: 0x98a0680c06546f4b9d00d97, - limb1: 0x3a0560cd7ef2f5ef151a3939, - limb2: 0x428baf60969b19a, + limb0: 0x94cb2dee0be4436643e9fed6, + limb1: 0xd01d2fd902d9505f71643030, + limb2: 0x7d7168bb2a5bec5e, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0x6b54309ef49a19d9d9ef68eb, - limb1: 0x9512a8986894d085ab2ba11f, - limb2: 0x4c70791652940a40, + limb0: 0xb521868f3a3c84ec6e17e64b, + limb1: 0x2222a801238c8a8a4ea8b78, + limb2: 0x340e6d8bb3e346a1, limb3: 0x0 }, y: u384 { - limb0: 0xb25261f5e6b4fd0dfa4d2e8, - limb1: 0x7d63cab6825d1eae4595cdac, - limb2: 0x63cb84c662028b2f, + limb0: 0xf2f8bc450857c18bf6ad202f, + limb1: 0xd8815263822e18b795fa067a, + limb2: 0xcc925bfa74c7a0d, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xd7a8fa72f0f49fa8fb9ef27, - limb1: 0x4578827b55a143a1ace3f9c4, - limb2: 0x7160bb9c99e1e90a, + limb0: 0xb840f816d8acc319dc391b73, + limb1: 0xeb607924935474b063b16bec, + limb2: 0x276bb9da3ee10c80, limb3: 0x0 }, y: u384 { - limb0: 0xe74803a70250a2d586e9e43e, - limb1: 0xb8521b20ecc8c2a68f319541, - limb2: 0x1f060cb0eac922a0, + limb0: 0xc5fd445424d47060061c1efa, + limb1: 0xb15a6dd3f9025dadf1744646, + limb2: 0x2489bbb35f70c974, limb3: 0x0 } }, G1Point { x: u384 { - limb0: 0xbeab465285dc1442afe37953, - limb1: 0x122bbfee1f1bd90e22e1a957, - limb2: 0x63ef8a20e8164be6, + limb0: 0x95aceaa8a41f6f29e8b88b7f, + limb1: 0xbb6d832854392226421ad1c9, + limb2: 0x180cb4adb5ccbcf, limb3: 0x0 }, y: u384 { - limb0: 0x1d5936a84d6d7cd03aeba4fb, - limb1: 0xa1ae26e6fa6ed17b4371de7a, - limb2: 0x195b66701216dbea, + limb0: 0xd3c53d3d09ad6c86e2896c87, + limb1: 0x4de7c06a1a9db659ceb2ad16, + limb2: 0xbdef9b7a3dc27e3, limb3: 0x0 } }, @@ -52360,28 +52332,28 @@ mod msm_tests { .span(); let scalars = array![ u256 { - low: 0xd38b8f29ed0c5245a0536c6cea8713d2, high: 0x1f78063b6e4d16e30668cc99e7f0271 + low: 0xd00955521730df1cf2a5bde28b7b8e8e, high: 0x54043634667cce2c8a83109250637ea }, u256 { - low: 0x7b33241efa2225d77c6d8ae1463e4336, high: 0x8a05aff54a1396ce9abfb0d9be57401 + low: 0xb2c8153c6655ef5ed3b583f3281be885, high: 0x1bff45b6f6f0f8343e0b1de8a6edba8 }, u256 { - low: 0x8f15c995424a2898832e9e1e1b908d6d, high: 0xe544ec39ba66e98679140e0b6fece9a + low: 0x57dbed63970d2b667d68e32ff2a1f11b, high: 0x177783765e9c189691452b507ed0fbd }, u256 { - low: 0x9b83a43728b7405babc2ded76bd8e65f, high: 0x40b7f3cc42b43fa6b4de9deec7b009c + low: 0x7d3524e2560704c58ad3524f261aa61d, high: 0xa756d587aebc9ffc518645e4a68824f }, u256 { - low: 0x2f9f5bf9d6b6b5d01c87284dc5fa8ac9, high: 0x96a23db7b768615f6b1465dbf2b6442 + low: 0x904875b8d60ba226f49412c94f2484a2, high: 0x3da0b83f3b59a631beb3dcd273fce84 }, u256 { - low: 0xaf405e52199a1949ba9d82b8afbae6c3, high: 0x8d602c643215bf46cff30a0c3ac232c + low: 0x2002eb697891ba9d70549bf67589ad20, high: 0xf32e7a2dea717bd9b57b1fdc1d67b49 }, u256 { - low: 0x68795e631f742e70e36b3a5f23746ddd, high: 0xf671411fa4abdecc8a86e3a62937980 + low: 0x722c18bd4d14f4f28308693f00241b9c, high: 0xd801f596993c637d4fce6011e88a944 }, u256 { - low: 0xbfdf8a9e9446d493a4d6ce54645cc176, high: 0x6b2145c0c780f2f39a11816fc7aad95 + low: 0x6f5e3759bac326e682e8eb8520861e70, high: 0xd880196eabf861090ec978283c58e62 }, ] .span(); @@ -52389,83 +52361,83 @@ mod msm_tests { array![ ( array![ - -0x1, + 0x1, + 0x0, -0x1, 0x1, + 0x1, -0x1, 0x0, - 0x1, + 0x0, 0x1, 0x1, 0x0, 0x1, - 0x1, 0x0, -0x1, + 0x1, -0x1, -0x1, -0x1, - 0x1, -0x1, + 0x0, -0x1, 0x0, + -0x1, + -0x1, 0x1, + 0x0, 0x1, 0x1, - -0x1, - 0x0, 0x0, -0x1, 0x1, - 0x0, 0x1, - 0x0, -0x1, + 0x0, + 0x0, -0x1, 0x0, + 0x0, -0x1, 0x0, 0x1, 0x1, - 0x0, -0x1, - -0x1, - 0x1, + 0x0, 0x1, 0x0, -0x1, + 0x0, + 0x0, -0x1, + 0x0, -0x1, - -0x1, - 0x1, 0x0, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x0, 0x0, - 0x1, + 0x0, -0x1, 0x0, 0x0, - 0x1, - 0x1, 0x0, 0x0, 0x1, -0x1, - 0x1, - 0x0, - -0x1, - 0x0, 0x0, 0x1, - -0x1, 0x0, 0x1, + -0x1, 0x0, + -0x1, 0x1, + -0x1, 0x0, -0x1, 0x0, @@ -52474,267 +52446,272 @@ mod msm_tests { ] .span(), array![ + 0x0, 0x1, + 0x0, + -0x1, + 0x0, + -0x1, -0x1, -0x1, - 0x1, 0x1, -0x1, -0x1, 0x0, 0x1, + -0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - -0x1, - 0x0, 0x1, 0x0, -0x1, -0x1, + 0x0, 0x1, 0x0, -0x1, -0x1, - -0x1, 0x0, - 0x1, + 0x0, 0x0, 0x1, 0x1, + 0x0, + 0x1, + 0x0, + 0x0, 0x1, 0x1, -0x1, -0x1, 0x0, 0x0, - 0x1, 0x0, + -0x1, + 0x1, 0x1, - 0x0, 0x0, 0x0, 0x1, - 0x0, + -0x1, 0x0, 0x0, 0x0, 0x1, - 0x1, - 0x1, -0x1, + 0x0, 0x1, + -0x1, 0x0, -0x1, - 0x1, - 0x1, + 0x0, + -0x1, + -0x1, 0x1, 0x0, 0x0, -0x1, 0x0, + 0x0, 0x1, - -0x1, 0x1, -0x1, - 0x0, 0x1, 0x1, - -0x1, - 0x0, - 0x0, - -0x1, - 0x0, 0x1, -0x1, 0x1, + 0x1, + 0x1, + -0x1, ] .span() ), ( array![ + -0x1, -0x1, 0x0, 0x1, -0x1, -0x1, + 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x0, - -0x1, -0x1, - 0x0, 0x1, 0x1, - -0x1, 0x0, 0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x1, -0x1, - -0x1, - 0x1, - 0x0, - 0x0, - 0x0, - 0x1, 0x1, -0x1, 0x1, 0x0, 0x1, - 0x1, - -0x1, - -0x1, - 0x0, -0x1, 0x1, - 0x0, 0x1, -0x1, 0x1, - 0x0, 0x1, 0x0, - 0x1, - -0x1, - 0x0, - 0x0, 0x0, -0x1, 0x1, - 0x1, - -0x1, -0x1, -0x1, 0x1, + -0x1, + 0x0, 0x1, 0x0, 0x1, 0x0, + 0x0, + -0x1, + -0x1, + 0x1, -0x1, -0x1, 0x0, 0x0, 0x1, 0x1, - 0x0, - 0x0, + -0x1, 0x1, + 0x0, + -0x1, 0x1, + 0x0, + -0x1, 0x1, 0x0, 0x0, + 0x0, + -0x1, 0x1, + -0x1, 0x0, 0x1, - ] - .span(), - array![ 0x1, -0x1, 0x1, 0x1, - 0x1, + 0x0, + -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, - 0x1, - 0x0, + -0x1, + -0x1, + ] + .span(), + array![ 0x0, -0x1, 0x0, + -0x1, + 0x1, + -0x1, + -0x1, 0x0, -0x1, -0x1, - 0x1, + -0x1, 0x0, + -0x1, 0x0, + 0x1, 0x0, -0x1, - -0x1, - 0x0, 0x1, -0x1, 0x0, 0x0, -0x1, + 0x0, -0x1, -0x1, - -0x1, - 0x1, 0x0, 0x0, - 0x1, -0x1, + 0x0, + 0x1, 0x1, - -0x1, + 0x0, 0x0, 0x1, -0x1, 0x1, 0x1, 0x1, + -0x1, 0x0, 0x1, -0x1, 0x1, - 0x1, - 0x1, -0x1, - 0x0, -0x1, 0x0, -0x1, + 0x1, + 0x0, -0x1, 0x0, -0x1, 0x0, + 0x0, -0x1, + 0x1, -0x1, + 0x0, + 0x1, + 0x1, 0x1, 0x1, - 0x0, + -0x1, -0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, - 0x0, - 0x0, -0x1, - 0x1, - 0x0, -0x1, - 0x0, + -0x1, + -0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x1, ] .span() ), ( array![ - 0x0, + 0x1, -0x1, 0x0, -0x1, - 0x1, 0x0, - 0x1, 0x0, 0x0, 0x0, + -0x1, + 0x1, + 0x1, + 0x1, + -0x1, 0x0, + -0x1, + 0x1, 0x1, 0x1, -0x1, @@ -52744,9 +52721,8 @@ mod msm_tests { -0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, + 0x1, + -0x1, -0x1, 0x0, 0x0, @@ -52754,136 +52730,130 @@ mod msm_tests { 0x0, 0x1, -0x1, - -0x1, - -0x1, + 0x0, -0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, - 0x1, - -0x1, - -0x1, + 0x0, 0x0, -0x1, + 0x0, + 0x0, + 0x0, 0x1, + 0x0, -0x1, -0x1, + 0x0, 0x1, 0x1, - -0x1, - -0x1, 0x1, 0x1, - 0x0, -0x1, - 0x1, - 0x1, 0x0, -0x1, -0x1, + 0x0, + -0x1, + 0x0, 0x1, 0x0, 0x1, 0x1, -0x1, - -0x1, - -0x1, - 0x0, 0x1, - -0x1, - -0x1, 0x0, - -0x1, 0x0, 0x0, -0x1, - -0x1, - -0x1, - 0x1, 0x0, - -0x1, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, - ] - .span(), - array![ 0x0, 0x1, 0x1, 0x1, + ] + .span(), + array![ 0x1, + 0x0, + -0x1, + -0x1, 0x1, + -0x1, + -0x1, 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + 0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, - 0x0, 0x1, 0x1, - 0x0, - 0x0, + -0x1, + -0x1, -0x1, 0x1, + -0x1, + -0x1, 0x1, -0x1, + 0x1, + -0x1, + -0x1, -0x1, -0x1, -0x1, - 0x0, - 0x1, -0x1, - 0x0, - 0x0, -0x1, - 0x0, - 0x0, - 0x1, 0x1, + -0x1, + -0x1, + -0x1, 0x0, 0x1, + -0x1, 0x1, 0x0, - 0x0, - 0x0, - 0x1, -0x1, 0x1, - 0x1, - -0x1, - 0x0, 0x0, 0x0, 0x0, 0x0, -0x1, 0x1, - 0x1, - 0x1, -0x1, 0x0, + 0x1, 0x0, -0x1, 0x0, - 0x1, - 0x1, + 0x0, 0x1, -0x1, + -0x1, 0x0, 0x0, - 0x0, - -0x1, 0x1, - -0x1, + 0x1, -0x1, 0x1, -0x1, + 0x0, -0x1, + 0x1, 0x0, 0x1, - -0x1, 0x1, 0x0, 0x1, @@ -52892,65 +52862,49 @@ mod msm_tests { ), ( array![ - -0x1, 0x0, - 0x1, - -0x1, 0x0, 0x1, + 0x1, -0x1, 0x1, - 0x0, - 0x0, -0x1, 0x0, 0x0, 0x1, 0x0, - 0x0, - 0x0, - 0x1, - 0x1, 0x1, 0x0, - -0x1, + 0x1, 0x1, 0x0, 0x0, - 0x1, -0x1, 0x0, 0x1, 0x0, - 0x1, - -0x1, 0x0, 0x1, + 0x1, 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x0, + -0x1, 0x0, 0x1, 0x1, - 0x1, - 0x0, 0x0, -0x1, - -0x1, 0x0, -0x1, -0x1, - 0x0, + 0x1, + -0x1, 0x0, 0x1, 0x1, 0x1, - -0x1, 0x0, - -0x1, 0x1, 0x1, -0x1, @@ -52959,54 +52913,59 @@ mod msm_tests { 0x1, 0x0, 0x1, + -0x1, + -0x1, + 0x1, + 0x1, + 0x1, + 0x1, 0x1, + 0x1, + -0x1, + 0x1, + 0x0, 0x0, + 0x0, + -0x1, -0x1, 0x0, 0x1, -0x1, + 0x0, + -0x1, 0x1, + -0x1, 0x0, -0x1, -0x1, 0x1, + 0x0, 0x1, - -0x1, + 0x0, 0x1, ] .span(), array![ 0x1, 0x1, - -0x1, 0x0, -0x1, -0x1, - 0x0, 0x1, - -0x1, - 0x0, 0x0, 0x1, - -0x1, 0x0, - 0x1, -0x1, 0x1, - 0x1, - 0x1, - -0x1, 0x0, -0x1, 0x1, - 0x1, - 0x1, - 0x0, + -0x1, + -0x1, 0x0, -0x1, 0x1, 0x1, - -0x1, 0x0, 0x1, 0x1, @@ -53015,45 +52974,57 @@ mod msm_tests { -0x1, 0x1, -0x1, - 0x0, - 0x1, 0x1, 0x0, + 0x0, + 0x0, + -0x1, + 0x1, -0x1, -0x1, - 0x0, 0x1, -0x1, -0x1, - 0x0, - 0x0, - 0x0, -0x1, - 0x0, -0x1, -0x1, -0x1, -0x1, 0x1, - -0x1, 0x1, + -0x1, 0x0, 0x1, - -0x1, 0x1, -0x1, - 0x0, + -0x1, -0x1, -0x1, 0x0, + -0x1, + 0x1, 0x0, 0x1, -0x1, + -0x1, + 0x0, + -0x1, + 0x0, + -0x1, + 0x0, 0x1, 0x0, + 0x1, + 0x1, + 0x1, 0x0, + -0x1, + 0x1, 0x0, + 0x1, -0x1, + 0x0, + 0x1, ] .span() ), @@ -53062,185 +53033,183 @@ mod msm_tests { 0x0, 0x0, 0x1, + -0x1, + -0x1, 0x1, -0x1, + 0x0, 0x1, 0x1, 0x0, - -0x1, + 0x0, + 0x1, 0x1, - -0x1, 0x0, - -0x1, 0x0, -0x1, - -0x1, 0x1, 0x0, - 0x1, - -0x1, - -0x1, - 0x1, 0x0, -0x1, + 0x0, + 0x1, 0x1, 0x0, + 0x1, + -0x1, 0x0, -0x1, 0x1, -0x1, - -0x1, 0x1, - 0x0, 0x1, 0x0, 0x1, + 0x0, -0x1, 0x0, -0x1, -0x1, 0x0, - 0x1, -0x1, 0x0, - -0x1, - 0x1, 0x0, 0x0, + 0x1, + -0x1, + -0x1, 0x0, 0x0, - -0x1, 0x1, -0x1, -0x1, 0x1, 0x1, + -0x1, 0x0, - 0x1, -0x1, -0x1, -0x1, - 0x0, + -0x1, + 0x1, + 0x1, 0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, -0x1, 0x0, - -0x1, - 0x1, - -0x1, 0x0, -0x1, - -0x1, 0x0, 0x1, - -0x1, + 0x0, 0x0, 0x1, + 0x0, -0x1, + 0x1, ] .span(), array![ - -0x1, + 0x1, 0x0, -0x1, -0x1, - -0x1, 0x0, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, 0x0, - -0x1, - 0x1, - -0x1, - -0x1, - -0x1, 0x0, - -0x1, - 0x1, 0x1, - 0x0, -0x1, 0x1, -0x1, + 0x1, 0x0, 0x1, 0x1, -0x1, - 0x1, - 0x1, + -0x1, + -0x1, 0x1, 0x0, - 0x1, - 0x1, -0x1, - 0x1, - 0x1, - 0x1, - 0x1, 0x0, - 0x1, -0x1, + 0x0, + 0x0, + 0x0, + 0x0, -0x1, 0x0, 0x0, 0x1, - 0x1, 0x0, 0x1, 0x0, - 0x0, + 0x1, 0x0, 0x0, 0x1, + 0x0, + -0x1, -0x1, -0x1, - 0x1, - 0x0, 0x1, 0x1, -0x1, 0x0, - 0x1, + -0x1, 0x1, 0x1, -0x1, + 0x0, + 0x0, -0x1, 0x0, + 0x0, -0x1, - 0x1, -0x1, 0x0, - 0x1, + 0x0, + 0x0, -0x1, + 0x1, + 0x1, 0x0, 0x1, + -0x1, + -0x1, + 0x0, + -0x1, + -0x1, + -0x1, + -0x1, + -0x1, 0x1, 0x1, + 0x0, + -0x1, ] .span() ), ( array![ - -0x1, 0x1, 0x1, -0x1, - 0x0, 0x1, + -0x1, 0x0, 0x0, -0x1, - 0x0, -0x1, 0x1, 0x1, - -0x1, 0x0, + 0x1, 0x0, 0x0, 0x0, @@ -53250,24 +53219,30 @@ mod msm_tests { -0x1, -0x1, 0x0, - -0x1, - 0x1, 0x0, + 0x1, + -0x1, + -0x1, 0x0, + -0x1, 0x0, 0x0, - 0x1, 0x0, 0x0, - -0x1, 0x0, -0x1, -0x1, 0x0, + 0x1, + 0x1, + 0x0, + 0x0, + 0x0, + 0x1, + 0x0, + 0x1, 0x0, - -0x1, 0x1, - -0x1, 0x1, 0x0, -0x1, @@ -53276,95 +53251,79 @@ mod msm_tests { 0x1, 0x0, 0x0, - 0x1, - 0x0, 0x0, + 0x1, + 0x1, 0x0, 0x1, 0x0, -0x1, - -0x1, - -0x1, + 0x0, 0x1, -0x1, - -0x1, 0x1, - -0x1, - -0x1, - 0x0, - 0x0, 0x1, -0x1, - -0x1, - -0x1, - -0x1, + 0x1, + 0x1, + 0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, - 0x1, - -0x1, -0x1, -0x1, 0x1, - -0x1, + 0x0, -0x1, ] .span(), array![ - -0x1, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, 0x0, -0x1, + 0x1, + 0x1, -0x1, 0x0, 0x0, 0x0, - 0x1, - 0x0, - -0x1, - 0x1, -0x1, 0x0, 0x1, - 0x1, - 0x1, -0x1, 0x0, 0x1, - 0x1, 0x0, 0x1, -0x1, + -0x1, 0x1, 0x1, + -0x1, + 0x1, 0x1, -0x1, 0x0, 0x0, - 0x1, -0x1, + 0x0, + 0x1, -0x1, 0x1, - 0x0, 0x1, 0x1, 0x0, 0x0, 0x1, 0x1, - -0x1, + 0x1, 0x1, -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - -0x1, - 0x0, - 0x0, - 0x0, + 0x1, 0x1, 0x1, -0x1, @@ -53372,360 +53331,369 @@ mod msm_tests { -0x1, 0x1, 0x1, + 0x0, 0x1, - -0x1, 0x0, + 0x1, + 0x1, + 0x1, + -0x1, + -0x1, + 0x1, 0x0, + 0x1, -0x1, 0x1, 0x1, + -0x1, 0x1, 0x0, - 0x0, - -0x1, -0x1, 0x0, 0x1, - -0x1, + 0x1, 0x0, 0x1, 0x1, + 0x0, + -0x1, + -0x1, + 0x1, ] .span() ), ( array![ - -0x1, 0x1, - 0x0, - 0x0, - -0x1, - -0x1, 0x1, 0x1, 0x1, - 0x0, 0x1, - 0x0, 0x1, 0x1, 0x0, - 0x1, -0x1, -0x1, 0x0, - 0x1, - 0x0, - -0x1, - 0x1, - -0x1, -0x1, 0x1, -0x1, 0x0, + 0x0, 0x1, 0x0, 0x1, -0x1, 0x1, 0x1, - 0x0, + -0x1, + 0x1, -0x1, -0x1, 0x0, + -0x1, + -0x1, 0x0, -0x1, 0x1, 0x1, 0x0, - 0x1, - -0x1, -0x1, 0x0, - -0x1, - -0x1, + 0x0, 0x1, -0x1, 0x0, + 0x1, -0x1, + 0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, 0x1, -0x1, + 0x1, -0x1, 0x0, - 0x1, + -0x1, 0x0, -0x1, -0x1, + -0x1, 0x1, + 0x0, + -0x1, + 0x0, 0x1, -0x1, + 0x0, + 0x1, -0x1, 0x0, + 0x1, -0x1, + 0x0, + 0x1, -0x1, + 0x1, -0x1, - 0x0, 0x1, 0x0, - 0x1, -0x1, -0x1, 0x0, + 0x0, 0x1, ] .span(), array![ - -0x1, 0x1, - 0x0, - 0x0, - 0x0, - 0x0, 0x1, - 0x0, + -0x1, -0x1, 0x1, 0x1, - -0x1, - 0x0, 0x0, 0x1, - 0x0, 0x1, 0x0, + 0x0, -0x1, -0x1, - 0x0, - 0x1, - 0x1, - 0x1, -0x1, -0x1, 0x1, - 0x0, + -0x1, 0x1, + -0x1, 0x1, + -0x1, 0x1, 0x1, 0x0, - 0x1, -0x1, 0x0, + -0x1, 0x0, - 0x0, - 0x1, -0x1, - 0x1, + 0x0, -0x1, 0x0, - 0x1, + 0x0, + 0x0, 0x0, 0x1, + -0x1, 0x1, -0x1, 0x1, + 0x0, + -0x1, 0x1, 0x1, - -0x1, - -0x1, 0x0, 0x1, 0x1, - 0x1, + -0x1, 0x1, -0x1, - 0x0, 0x1, 0x0, -0x1, - 0x1, + 0x0, + 0x0, -0x1, - 0x1, -0x1, -0x1, 0x1, + -0x1, + 0x0, 0x0, 0x1, 0x1, 0x0, 0x0, + 0x0, -0x1, + 0x0, + 0x0, -0x1, + 0x1, -0x1, + 0x1, -0x1, + 0x0, + 0x1, + 0x0, 0x1, ] .span() ), ( array![ - 0x1, -0x1, - 0x0, -0x1, - 0x0, - 0x0, 0x1, 0x0, - 0x1, + -0x1, + -0x1, 0x0, 0x0, + 0x0, + -0x1, -0x1, 0x1, 0x1, 0x1, 0x0, - 0x0, - 0x1, - -0x1, 0x1, 0x0, - -0x1, - 0x0, 0x1, -0x1, -0x1, - -0x1, 0x0, 0x0, - 0x0, - -0x1, - -0x1, - -0x1, -0x1, - 0x0, 0x1, 0x0, - 0x0, - 0x0, + 0x1, + -0x1, 0x1, 0x1, 0x0, -0x1, 0x1, - 0x0, - 0x0, + 0x1, 0x0, 0x0, 0x1, 0x0, 0x1, -0x1, + 0x1, -0x1, 0x0, 0x1, + -0x1, 0x0, 0x1, 0x0, 0x0, + 0x0, + 0x0, -0x1, -0x1, + 0x1, + 0x1, 0x0, 0x0, 0x1, + -0x1, 0x1, 0x0, - -0x1, - -0x1, + 0x1, 0x0, 0x1, 0x0, 0x0, -0x1, - 0x0, 0x1, 0x1, - -0x1, 0x1, 0x1, + 0x0, + 0x0, + 0x1, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, 0x1, - -0x1, - -0x1, ] .span(), array![ + 0x1, 0x1, 0x0, - -0x1, - 0x0, + 0x1, 0x0, + 0x1, + 0x1, -0x1, - 0x0, -0x1, 0x1, -0x1, 0x0, -0x1, - 0x1, - -0x1, -0x1, 0x0, + -0x1, + -0x1, + -0x1, 0x1, 0x0, 0x0, - 0x1, + 0x0, 0x1, -0x1, + 0x1, + 0x0, + 0x0, -0x1, -0x1, 0x1, 0x0, 0x0, 0x0, - -0x1, - -0x1, 0x0, - 0x1, - -0x1, + 0x0, 0x0, 0x0, 0x1, 0x0, + 0x1, + 0x0, 0x0, - -0x1, 0x1, + 0x0, + -0x1, + -0x1, -0x1, 0x0, + -0x1, 0x1, - 0x1, + -0x1, 0x1, 0x0, 0x1, 0x0, - 0x1, -0x1, -0x1, - 0x1, - 0x1, 0x0, 0x0, 0x1, - 0x0, - 0x0, -0x1, - 0x1, + 0x0, 0x0, -0x1, -0x1, - -0x1, - 0x1, - 0x1, - 0x0, 0x1, -0x1, 0x1, 0x1, - 0x0, -0x1, 0x0, -0x1, 0x0, + 0x1, -0x1, + 0x0, 0x1, + 0x0, 0x1, ] .span() @@ -53736,157 +53704,154 @@ mod msm_tests { let msm_hint = MSMHint { Q_low: G1Point { x: u384 { - limb0: 0xb851d54d65b1fa44cd9e771f, - limb1: 0xd09c0f4700f9bcb4ac7f4d2f, - limb2: 0x41a3206d9946bf75, + limb0: 0x6d7e43975f2f42b3b6fe01c4, + limb1: 0xcfd4e6d58233be2ab330104f, + limb2: 0x52a87b6de8748e91, limb3: 0x0 }, y: u384 { - limb0: 0x44a4f8f66454e39e211aa3dc, - limb1: 0xa8440187c230613d8af44cf8, - limb2: 0x5b05f71b24802e8a, + limb0: 0x596526ab06e520b61a018fcd, + limb1: 0x94f5d0722448dba7c394bc03, + limb2: 0x36f3284ae2871d62, limb3: 0x0 } }, Q_high: G1Point { x: u384 { - limb0: 0xbcd0a83213084f8b1d73f389, - limb1: 0x3439856385bd28d883f42fd4, - limb2: 0x5ea1a1ee9d3ef597, + limb0: 0x6bcd44e8f3f5d3fecb205ab6, + limb1: 0x842edea367593a89bfc2ca98, + limb2: 0x1be705b43652b3ec, limb3: 0x0 }, y: u384 { - limb0: 0x6a07abbfc1cd11ebd249ba0, - limb1: 0x6d4e9cb564fe9f45d68044fb, - limb2: 0x59213ebc956504d3, + limb0: 0xcd6470b2a093549f359009a5, + limb1: 0x265947c40c2238e7796fc80, + limb2: 0x65390ffaf3835c2f, limb3: 0x0 } }, Q_high_shifted: G1Point { x: u384 { - limb0: 0x24ada009311bcf00892fed32, - limb1: 0xd00455579774dcd0cef88d87, - limb2: 0x4b0d99a281950c3e, + limb0: 0x12242ef17addebddf3098d98, + limb1: 0xa1ccb15e5f7abe84a5e9b530, + limb2: 0x69943b20120ca589, limb3: 0x0 }, y: u384 { - limb0: 0xef3aa9e04890b361e5badd24, - limb1: 0x1e514ce4c91d79a6d61c1dbe, - limb2: 0xb2036cd7c4fb655, + limb0: 0x9db295953f261fd62c083118, + limb1: 0x34f32b732a091dade274b46, + limb2: 0x74e52e9a635b9543, limb3: 0x0 } }, SumDlogDivLow: FunctionFelt { a_num: array![ u384 { - limb0: 0xc9cb2471c00986b9258d81d4, - limb1: 0xb2973cbe3cf024c27e6c596b, - limb2: 0x280535392ea7bf51, + limb0: 0x9ce57d412d14b1295bce5ad, + limb1: 0xe4354fc49f3fbf56396bdd53, + limb2: 0x6d9d9301cae459bf, limb3: 0x0 }, u384 { - limb0: 0xd75b8098d22fbd3d6257f07b, - limb1: 0xcda66ff5e9e3c064463fd122, - limb2: 0x1b84ca8b4730b958, + limb0: 0xa4df3b25e4cbcd7a443deaac, + limb1: 0x6d617ab31038eca9a6297abe, + limb2: 0x723d1d3fb15c5520, limb3: 0x0 }, u384 { - limb0: 0x7ed3f069530b2939141118f, - limb1: 0x3dda6d9b42f919fe8812ed40, - limb2: 0x7fa73bf80754842e, + limb0: 0x85cb1d3039e01746aa48ddd2, + limb1: 0x1f0f1569ef6b0206bff2bb05, + limb2: 0x50e8f7f66bc7a06f, limb3: 0x0 }, u384 { - limb0: 0xe6c14a9d54b7dd5759211a2b, - limb1: 0x66b38c8336d9fb98e58578d4, - limb2: 0x1af7911325e85e2b, + limb0: 0x2834ab80df403282db196b00, + limb1: 0x61a66d15d53865472b1d1826, + limb2: 0x4aadb43b39b8d5a3, limb3: 0x0 }, u384 { - limb0: 0x77bc8e6278cc4fe1083add6d, - limb1: 0xe61e34c0f3e1bce55ccbce7, - limb2: 0x1dcc7c761f8a5bf, + limb0: 0xd671cc148031a17a1b99044d, + limb1: 0x39ff16979ba681d81bdff2dc, + limb2: 0x4b01c66fdc51a9d2, limb3: 0x0 }, u384 { - limb0: 0xc388967bf7d758b4c339dac3, - limb1: 0x4ea6c9fe66fdaf6357630922, - limb2: 0x44a85e04d49b0146, + limb0: 0xf73cfae6d98a14d6a4331b45, + limb1: 0x49b2653c7552a846e112c845, + limb2: 0x21051b69b4c7d873, limb3: 0x0 }, u384 { - limb0: 0x9ab886988de446f003a53f6a, - limb1: 0x127cfdd20396755305a8b9e1, - limb2: 0x5ff0f55039afe40, + limb0: 0xa0535eef9ca943233d97be09, + limb1: 0x623d0d277cd7b98dec93d25f, + limb2: 0x31a2f81b69c18b08, limb3: 0x0 }, u384 { - limb0: 0x64c9b60615d3154226887a25, - limb1: 0x52ad9c05569ed0eee6155b1c, - limb2: 0x7aade346e3dbea66, + limb0: 0x1b9256dea869bee87fdee497, + limb1: 0xfc6510a5eaa1dd0792b6bab2, + limb2: 0x6c9b266b7e3aa1b1, limb3: 0x0 }, u384 { - limb0: 0xecc69f4715e0e2181ade67ec, - limb1: 0xffffffffffffffff58dbf256, - limb2: 0x7fffffffffffffff, - limb3: 0x0 + limb0: 0x4632ae8a4a34916113739b8f, limb1: 0x19ffc71, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0xc8f767b6110b2139342b3923, - limb1: 0x4fc493d3783517cf9fb2ba90, - limb2: 0x2d01b5d534229e64, + limb0: 0x49f34321a1d3d680985db633, + limb1: 0x9659b89205fad8242c618f16, + limb2: 0x2a1f318fba7a2c9, limb3: 0x0 }, u384 { - limb0: 0x47470cf24d87aab2033ee89, - limb1: 0x708569094afed10c60825dd8, - limb2: 0x7cdf7b6f494500cd, + limb0: 0x103d5efa77b17c92ff5dd4e8, + limb1: 0x84ea7c83b19deb2ad25743c8, + limb2: 0x5e38163dc35053ce, limb3: 0x0 }, u384 { - limb0: 0x3fc29903b6e7aa4a69336ad2, - limb1: 0xe0561b112cb9c5b3f9bf66e8, - limb2: 0x6c441fb85d182063, + limb0: 0x13b0b416517e9f8510de8aa9, + limb1: 0x4de8d2328829a194ed2f801c, + limb2: 0xd01b345f7381750, limb3: 0x0 }, u384 { - limb0: 0xeada5962996337e6a3d0cd21, - limb1: 0x3cace6e47ebc4b7ffc106fc, - limb2: 0x4d6c7e00dae6c75c, + limb0: 0x7e70474e57e14a874ba57ab4, + limb1: 0x7a377e412c21e69be719d8dd, + limb2: 0x5cc509794bf84731, limb3: 0x0 }, u384 { - limb0: 0xdd1cf239a39e4561af772ecb, - limb1: 0xca6e0783c67a2f4aa4b4a6c1, - limb2: 0x5dec2b478f957048, + limb0: 0xd929cf2dd9cb62875e85347f, + limb1: 0xd4b4f77e9df53e2cebcaa627, + limb2: 0x5dbfaef2bbe22389, limb3: 0x0 }, u384 { - limb0: 0xdec133417392499bb44011b, - limb1: 0x4715a86a5694bff216d2ce73, - limb2: 0x2aa96ac8850bcb4a, + limb0: 0xa58463c42028203501ca1e33, + limb1: 0x6f9e2f12577b994ea479404e, + limb2: 0x3ad215c46b684709, limb3: 0x0 }, u384 { - limb0: 0xe1913b121e215a776e34b91a, - limb1: 0x92e527aeaa9e7c4e45e20a3a, - limb2: 0x5bdd2a34dc2eaa1, + limb0: 0xe668e516fa4b53d5a9b7d926, + limb1: 0xa78374f3a9e88d4f62f9612b, + limb2: 0x35d6426b2218ce0a, limb3: 0x0 }, u384 { - limb0: 0x1461482a91596aaf3de4f725, - limb1: 0xee1bfe7322d16a8a65733004, - limb2: 0x4af4cb26b60f9245, + limb0: 0x925c6e6ba2a15c34c9ee8353, + limb1: 0xaf5082770743c956d1b1581, + limb2: 0x423bcc41d59694a2, limb3: 0x0 }, u384 { - limb0: 0xc8ac6c4112b6b654dfbfc9ed, - limb1: 0x343ffe429a170d135344c954, - limb2: 0x6223068593c86050, + limb0: 0xbec03ca9207d365855616495, + limb1: 0x4c3efd21a8ad0cb03f3bfa1b, + limb2: 0x236647a5d47e40fa, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -53894,138 +53859,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x897ed1553bbc3c29ac0739d, - limb1: 0x842d261c9dba541301728fab, - limb2: 0x4ff3c396bb9392c9, + limb0: 0xadc1d35ff78f8701adfe8eb, + limb1: 0xd84bdf4846c32236cae6256e, + limb2: 0x2ceedaec3315ff42, limb3: 0x0 }, u384 { - limb0: 0xb7ec702ed8a8c42bdc23ad7, - limb1: 0x58587139c6e82dd212d85abb, - limb2: 0xc2f05bfe235bd66, + limb0: 0xe0a38b830a8b2582c4351fff, + limb1: 0xa7c6b4522f21ff91d8370743, + limb2: 0x41758e7ea78729f0, limb3: 0x0 }, u384 { - limb0: 0x441908771b27cd728fd9e7b, - limb1: 0x634fd9dd6b2dd4e6f9292afd, - limb2: 0x6973e8adf66a84d, + limb0: 0x6031e1ca419b373203e36a65, + limb1: 0xba18a1e6e8a2dfbe18e9d3c4, + limb2: 0x11f1cf0184675e93, limb3: 0x0 }, u384 { - limb0: 0xa519848e6ce889016f6efbcc, - limb1: 0xa1a2d7069b663481625bbe97, - limb2: 0x551da3eb70add57b, + limb0: 0xd5b84e9bd7253184b2262511, + limb1: 0x5bc3f8ef0275cfbcf6327bdd, + limb2: 0x571e52d429c07cdf, limb3: 0x0 }, u384 { - limb0: 0xff335df22f313880cf0479b6, - limb1: 0x54d363f1751225c76cfee7ae, - limb2: 0xf85ee66cc0ee4cd, + limb0: 0xfc426f5045452020d8216ec5, + limb1: 0xf24f4ba14c94137747da50d4, + limb2: 0x1ee3d037989508e0, limb3: 0x0 }, u384 { - limb0: 0xf62418b8a30c5572fa9cb53, - limb1: 0xa9ec0b32e117e7fd820e0866, - limb2: 0x70d513fcf36b724f, + limb0: 0xf60eaaa96f9337c447d8d46b, + limb1: 0x23b2d44e6f1cb9ae6d536c9a, + limb2: 0x2cacc6a9a2730ed9, limb3: 0x0 }, u384 { - limb0: 0x20995db7a6a6920a97b20e97, - limb1: 0x53c7f268c49180eda7a189c8, - limb2: 0x4b7af43116aa9da3, + limb0: 0x388312e14d2b4b080146a014, + limb1: 0x515d7d3e2961f187afe051e2, + limb2: 0x53aeab13c9bae480, limb3: 0x0 }, u384 { - limb0: 0x74dcc58be15f5eacef4ad1f2, - limb1: 0xc9ea80b40a253bf0e4f8241f, - limb2: 0x4cafbb2b0d86d465, + limb0: 0xa013393830f2e0c823b084b8, + limb1: 0x8eb7ceb340c3b72d9577728a, + limb2: 0x1432533da04d2397, limb3: 0x0 }, u384 { - limb0: 0xe68aaf5732cc08d9bc0eff77, - limb1: 0x6ff285fec1a90143a242ebfd, - limb2: 0x458b48630ac61173, + limb0: 0x5d27c70b6246f5962c0fa4db, + limb1: 0x90b9a725dfd3063ece643414, + limb2: 0x7c98d8034dcfafbc, limb3: 0x0 }, u384 { - limb0: 0x25a564c98d0c086cfa2136ef, - limb1: 0xf77d0b5a40bf1e1fef38a84, - limb2: 0x34481522416d0311, + limb0: 0x5fdd4a35ebc4dfe593eaa186, + limb1: 0x13e49e9862f51f7f18f42042, + limb2: 0x16179b29e7a869e5, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x85463306e370b09dcdc1d4cd, - limb1: 0x34d29b23f7fa6452621e9ff3, - limb2: 0x631c19685c07929f, + limb0: 0xf908d6450d2f52da59fc46a9, + limb1: 0xe9970db811922da1e31424dc, + limb2: 0x56dead624e259e5c, limb3: 0x0 }, u384 { - limb0: 0x83af603bf9a3763079af3bc2, - limb1: 0x1d087bcd155a6f3fc08bef70, - limb2: 0x3ef224257cf79033, + limb0: 0x9e671beefbd0ed7c95bcfd20, + limb1: 0x640758c19a9767ce337478fe, + limb2: 0x5e9faf68c3c60a0, limb3: 0x0 }, u384 { - limb0: 0x70d5b92dde35bf77f9ffbd9a, - limb1: 0xf280b0568bda6121bbea016e, - limb2: 0x7d4f3039dafacc95, + limb0: 0x19c73913900760d0efcd6976, + limb1: 0xd54eca74d2ca90e5f0e5cc82, + limb2: 0x77f3f64d76a34432, limb3: 0x0 }, u384 { - limb0: 0x95ccc0c4b5e9df3cb1172992, - limb1: 0x3111232c79d34c8892e19089, - limb2: 0x1c42163e7781927e, + limb0: 0x4a1ba6131a99fec6376b9e49, + limb1: 0x45af064ebfa3250635fee536, + limb2: 0x4f2a12275a795306, limb3: 0x0 }, u384 { - limb0: 0x8f676c55f5a463693ff8e86b, - limb1: 0x82d1c6936b59d356700f1ef, - limb2: 0x40ee6fc7b1300ec, + limb0: 0xc6abda3713d0b12f7bc70042, + limb1: 0x6145c33cc1283ffb2b16146e, + limb2: 0x46dc25fc55597ed3, limb3: 0x0 }, u384 { - limb0: 0x9b9076edde267d2b354eebb8, - limb1: 0x84bc2234b414080c459b0477, - limb2: 0x7187731bf82bd1b2, + limb0: 0xc4fff727c66c072f19dcd226, + limb1: 0xd8690a189f77a8497092f914, + limb2: 0x7be8b656118fdfa2, limb3: 0x0 }, u384 { - limb0: 0x8d7cd9e922ac561df386c3b2, - limb1: 0x23c3ebe9979888d43d9965b3, - limb2: 0x49f65372f5c9f713, + limb0: 0x34cda31fcd0581cd650ba962, + limb1: 0x21870c08fea1376a6239d8b, + limb2: 0x506e9dd5fbc0a683, limb3: 0x0 }, u384 { - limb0: 0xdc0366b32993574678fa2ff0, - limb1: 0x74f0cfec83ce74680c519f5b, - limb2: 0x28fcabb1c385dd06, + limb0: 0xec08ba0f708931d08c2910b5, + limb1: 0x1bac14c73fcc7374eebd542b, + limb2: 0x70ec00f979741c75, limb3: 0x0 }, u384 { - limb0: 0x1b6993005fb0f2accfe1b12a, - limb1: 0xb795828fa6b570596d9574bf, - limb2: 0x23288253e5a407f, + limb0: 0xd0128066d31c00237b783806, + limb1: 0x571b7c79fd779627847cd142, + limb2: 0x28628a6b4da74285, limb3: 0x0 }, u384 { - limb0: 0x8c1a07ebaddd6e42e96cf89e, - limb1: 0x55f7745a1b2be3b848678c56, - limb2: 0x7569574e8c0a26cf, + limb0: 0xa9fb229ac1350a9d9f024b70, + limb1: 0xcfa920f4b8d9f9f509ab4638, + limb2: 0x5b5714227e247285, limb3: 0x0 }, u384 { - limb0: 0x210673223dcb4c3e36a10e65, - limb1: 0x1fb3df80844ca860d12be661, - limb2: 0x284377fa5bc9512c, + limb0: 0x9f0199634f133dc3c2aa9a93, + limb1: 0x3c8ce934d1ef7a6bd8d3cbde, + limb2: 0x1f8a79157b505388, limb3: 0x0 }, u384 { - limb0: 0xc8ac6c4112b6b654dfbfc9ed, - limb1: 0x343ffe429a170d135344c954, - limb2: 0x6223068593c86050, + limb0: 0xbec03ca9207d365855616495, + limb1: 0x4c3efd21a8ad0cb03f3bfa1b, + limb2: 0x236647a5d47e40fa, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -54035,111 +54000,111 @@ mod msm_tests { SumDlogDivHigh: FunctionFelt { a_num: array![ u384 { - limb0: 0xfb04f98d3f3ce4b451956646, - limb1: 0xf579e08766929fe677bacd30, - limb2: 0x34b4f449eba9d581, + limb0: 0xb6b300fd618de0c32881f62c, + limb1: 0x7271b7e96658d7fd41919700, + limb2: 0x5e2fed978bd6b8f6, limb3: 0x0 }, u384 { - limb0: 0x30d941ef0dd1f46cab7e6842, - limb1: 0x279f3c78a920b4e2c7500ad7, - limb2: 0x6715ee8e3cf27f19, + limb0: 0xba31569a9b58d3b92de91988, + limb1: 0x188fb5611ee629bad84c4dd2, + limb2: 0x1e33460452b29cb9, limb3: 0x0 }, u384 { - limb0: 0xcc94aee95ab53c6186f00e46, - limb1: 0x7b55a9dd95b57ec3f63b63bd, - limb2: 0x6425986509b35c89, + limb0: 0xd25faa36ba995dddfd307a54, + limb1: 0xfa81322bcdb524191deb0104, + limb2: 0x14f81fb0f08f5c6b, limb3: 0x0 }, u384 { - limb0: 0xd8e09028a4aec6feb668f56e, - limb1: 0xb8e328762f576d7ae1771031, - limb2: 0x147953f374c5b49c, + limb0: 0x5af586d9bd06a3b987512bbc, + limb1: 0x72ce7b35080946706cadb35b, + limb2: 0x505287f4efcda47f, limb3: 0x0 }, u384 { - limb0: 0x68dbfa6c3ccd76a0a93c77b7, - limb1: 0x381e01705972a33bbdcf320b, - limb2: 0x308dcbfb50fe7824, + limb0: 0x6cd76e6ab2a1d5e7c03e28bf, + limb1: 0xa0af94c1bb18770a60e09015, + limb2: 0x27f28b934d535415, limb3: 0x0 }, u384 { - limb0: 0x456610f49d04c4cbf395d68b, - limb1: 0x7f902a06dd85d48ec32447e9, - limb2: 0x78f2cf2ea0fdbb78, + limb0: 0x5a364b022602f0236538739e, + limb1: 0xd8b0ba9d6ece7126456076bb, + limb2: 0x7a6bed0e58ac3d20, limb3: 0x0 }, u384 { - limb0: 0xe6aeb778fcb520f146e11c12, - limb1: 0x6291b1003c3b372bdefc8b6a, - limb2: 0x2b564205942ff8e0, + limb0: 0xe82ba4127a42f6c57d607531, + limb1: 0x940a9ad4ed326f86a2a03e6b, + limb2: 0x6ee5dacdc949e232, limb3: 0x0 }, u384 { - limb0: 0x577dd703107694599629cd33, - limb1: 0xe0dd81e34bce298aaa239d95, - limb2: 0x7a9fbb6f92d59ce, + limb0: 0x627d9c6a2f8522c0cbb41222, + limb1: 0x8255443bbd82a9fb0f9ab68b, + limb2: 0x13ba1640d161598f, limb3: 0x0 }, u384 { - limb0: 0xf906f01754676f5087853755, limb1: 0x1b6b72cc, limb2: 0x0, limb3: 0x0 + limb0: 0x853a109ecec6a0e229dfee8e, limb1: 0x16c80c19, limb2: 0x0, limb3: 0x0 } ] .span(), a_den: array![ u384 { - limb0: 0x78a367c2cc312eba6af0eaae, - limb1: 0xedc098d6f27d13f62db294f8, - limb2: 0x445262f598e8fb4c, + limb0: 0x85a872d3b331b1d518cb19f, + limb1: 0x15d2adbd378f1ef30f706fcc, + limb2: 0x313dd865ade45869, limb3: 0x0 }, u384 { - limb0: 0xaedb3163c75657fa77c0ec94, - limb1: 0x561f6e906a3a81918fc36c56, - limb2: 0x439207152c26b660, + limb0: 0x340ea195fb5ce078d55cf4da, + limb1: 0x89fc733dfba3dd486ed76ce0, + limb2: 0x160d1e31b67d3eac, limb3: 0x0 }, u384 { - limb0: 0xfc012215abecc9d4093bd759, - limb1: 0x29a224b41e01dcd1c4716932, - limb2: 0x6a2baa495481fc1c, + limb0: 0xf319420c7a4ef540dfefd9ad, + limb1: 0xf3fab25385937bc7cfb867bc, + limb2: 0x4d94a23781eb2e21, limb3: 0x0 }, u384 { - limb0: 0x4cfd4bd261b826a0e002f017, - limb1: 0xa5c5c265f57a4a871fc550d3, - limb2: 0x74e279fb51eb16c8, + limb0: 0x4edb4c268683db382bc59eb3, + limb1: 0x58cfcdd010d37b18089a8611, + limb2: 0x6b3caeed6c07714, limb3: 0x0 }, u384 { - limb0: 0xddcdc3d02be892b5328aac2d, - limb1: 0x2e0492daea9a945ad869a729, - limb2: 0x57a71fb569681895, + limb0: 0x4d252472777cb22f0724e0a3, + limb1: 0x917c4d26c190ee6f56d2567a, + limb2: 0x5521f0429ecfeb66, limb3: 0x0 }, u384 { - limb0: 0x93220a327bd613ace5fa9299, - limb1: 0xe4dee43d2902f557acb3eece, - limb2: 0x8a1162f53e97369, + limb0: 0xc3195321f0627b161c244da0, + limb1: 0x7b75a3476ec0aa85abe40134, + limb2: 0x4565eedb937a610c, limb3: 0x0 }, u384 { - limb0: 0x78f9f722c05a6f646c4846fb, - limb1: 0x5a3b5090fc19f51c67e3971c, - limb2: 0x5801c4277310c431, + limb0: 0x5fa01426b68e078d18c280f8, + limb1: 0x5e1382214b60aff841c956cc, + limb2: 0x734daf64b1ac0230, limb3: 0x0 }, u384 { - limb0: 0x23fdd428691eaa19ed93562a, - limb1: 0x11243c2b9e0af97a32ced747, - limb2: 0x2d4a0094b7d89b9e, + limb0: 0x9dd160fcac09a5a6f076878d, + limb1: 0xc6481eaac5816c0156a8a21f, + limb2: 0x5bf28b193ba321e8, limb3: 0x0 }, u384 { - limb0: 0xc42d995c6560610e8fea4d83, - limb1: 0xd0a288261553a0ef7bcfe6af, - limb2: 0x452485048fd02a2e, + limb0: 0xc0713b578bb6a50d413f0ba3, + limb1: 0x97e50553c387905132a93fd2, + limb2: 0x5a27bd5f86a01b9f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -54147,138 +54112,138 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0xf945a33eb92a25fd6b7394d6, - limb1: 0x715697f3f238a98339ba3a96, - limb2: 0x7e9df0c831019d09, + limb0: 0xf9b27422329a8df7153d78, + limb1: 0x4a5c9b73f0b2a9a319da7274, + limb2: 0x46b137018fd3cb38, limb3: 0x0 }, u384 { - limb0: 0x78bed3bb1a498803ac2cdffe, - limb1: 0x39119eef7d2548409dd1b, - limb2: 0x1082bf4188e1acc3, + limb0: 0xd64f2594c909ec687415297, + limb1: 0x2abc6ddd5068d373ae35eef6, + limb2: 0x1e2349fa71b6d16d, limb3: 0x0 }, u384 { - limb0: 0x3f281c294099a1ba9cbef7ac, - limb1: 0x26cd4e4def046d50746571a6, - limb2: 0x67ee4a0faed1bd2, + limb0: 0x382318a91c2651928b1ab6a2, + limb1: 0x4e40e8c73302c19a3bf1cae9, + limb2: 0x2265c268b7581601, limb3: 0x0 }, u384 { - limb0: 0x5f5ab038ef07a47fbe9d9c80, - limb1: 0x96846734a9255b46dd733d9, - limb2: 0x6a49de40eb1e010a, + limb0: 0x8115259d89e47b54c8076476, + limb1: 0xa4c8de90d4d952d17d5d5af3, + limb2: 0x639f3b4d901d03e8, limb3: 0x0 }, u384 { - limb0: 0x4ce6b145a2507e88be0ba062, - limb1: 0xd97cdfa8a21228dc233412e4, - limb2: 0x4ca1671c436d868a, + limb0: 0x589850f9d67c8abe2ebd207b, + limb1: 0xef5213dd94f87959e114f5aa, + limb2: 0x19502afdf09c3fa6, limb3: 0x0 }, u384 { - limb0: 0xd1f7c142d0b7c6143553ae32, - limb1: 0xd5b92bb13be645ab4b088904, - limb2: 0x24854b6e90e103fe, + limb0: 0x9ce9079b8c0ad263a8c2a22a, + limb1: 0x6145adccdc3407560108def0, + limb2: 0x5f036392454540f0, limb3: 0x0 }, u384 { - limb0: 0xae8aed96fa26b60175b25503, - limb1: 0x471f806108ab8836d3629dbc, - limb2: 0x35bf4cd9cae41b00, + limb0: 0xc229a6da01e6d96262e3828f, + limb1: 0x966e17bf5f428ee0cb0ae6b8, + limb2: 0x13e616fb0b7877ce, limb3: 0x0 }, u384 { - limb0: 0x29859769a63604e0869f42e0, - limb1: 0x5f4b85fc1d9b052bfa0e50f1, - limb2: 0x5904c38421714ebe, + limb0: 0xb5ab4edebbc4616dec6bb471, + limb1: 0x89ba22d5e6a471ca965f2203, + limb2: 0x5a4eb7bf6314a361, limb3: 0x0 }, u384 { - limb0: 0x1bffa461ebf5e8c58db689f3, - limb1: 0xaa63506889259a5037c09574, - limb2: 0x478ae717b36abed, + limb0: 0x3f04e72ed8fd8b701078fa2a, + limb1: 0x1e35ac27e55d5cf785d24c53, + limb2: 0x5d770878d22fc063, limb3: 0x0 }, u384 { - limb0: 0xaa5e95a9d869c28186dc52c3, - limb1: 0xa5b440bccbb7fe17d59abb32, - limb2: 0x5fe1b797ffeb6afc, + limb0: 0xf8c7e9df2d0419bff9be7923, + limb1: 0x3dbbdc63f6e1cd5deba6d279, + limb2: 0x53b8797948ea435f, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x62844be472654eea0939397b, - limb1: 0x4156f567c91a695962ed242d, - limb2: 0x39ab798c53146a2, + limb0: 0xcc58e2809dd9fe46a588c691, + limb1: 0x56a53472aacfc647e2097de1, + limb2: 0x333c36641455d84b, limb3: 0x0 }, u384 { - limb0: 0x3fa710646a1116100acf8996, - limb1: 0x93df0f0e76226844cfbeae8e, - limb2: 0x2e873267c0dc59c, + limb0: 0x538782c33d0bd0b0c952eb95, + limb1: 0x8c13813efdc4308b887bf49f, + limb2: 0x725d87f07c1f36c9, limb3: 0x0 }, u384 { - limb0: 0x51cadf64cff43214ab589609, - limb1: 0x43ef2c8e18293db4d3abeda5, - limb2: 0x5609ea37a36390a, + limb0: 0xa3260fb53064b32b1be2c5e3, + limb1: 0x1f46a4e25630489bb1d5ad1d, + limb2: 0x7fd3af6cc2879752, limb3: 0x0 }, u384 { - limb0: 0x1b34f91cc90c8723733df976, - limb1: 0x5bdcf31382a25c6b7e706323, - limb2: 0x4db42af04dc05aab, + limb0: 0x4f1c587a0dded8b8c264b134, + limb1: 0x215444a4186be0c022596b58, + limb2: 0x3124c3be8392d579, limb3: 0x0 }, u384 { - limb0: 0x5cee27036b5ee2cac65d9332, - limb1: 0xf7c901ad4f7bd82bb66e8624, - limb2: 0x1c5c936045017145, + limb0: 0x60108251c1edb5e8f1141679, + limb1: 0x41142f090119e0ba45227b0e, + limb2: 0x344a81a9dbdafa11, limb3: 0x0 }, u384 { - limb0: 0xedf423e76993b4bc29a29030, - limb1: 0xa0311879894eeeab9ac0f1c3, - limb2: 0x2f3aad63c132e442, + limb0: 0x98b3c9c7efe971382680a518, + limb1: 0x880813108c06be5446ecc1b8, + limb2: 0x3eb2f03d48a29849, limb3: 0x0 }, u384 { - limb0: 0x95f7f599ce6667ac60e20d95, - limb1: 0xc4563ebaa75d1b8c727a548f, - limb2: 0x15f9235e2219e5ef, + limb0: 0xa687ec0683a6af0e635ba346, + limb1: 0xd11b9b5d485c7c5837dcfa13, + limb2: 0x4db33035bf283a0f, limb3: 0x0 }, u384 { - limb0: 0xf63be42659577032b0257d09, - limb1: 0x74b3890f40e53c439187ea3, - limb2: 0x2d7e0ead2d008af3, + limb0: 0x124c99a80b63db985c9d95fa, + limb1: 0x4b1f7be8fed296e636718638, + limb2: 0x762eb4072d08f0e4, limb3: 0x0 }, u384 { - limb0: 0xd3963bb18f89d75bfaeb773, - limb1: 0x857bfcf08c8a20649a16d2ae, - limb2: 0x4fb503ede4509fda, + limb0: 0xc279eef900476752470c2bf5, + limb1: 0x4d82ca8f9f080e2abdaa9388, + limb2: 0x67ef07db82aec71f, limb3: 0x0 }, u384 { - limb0: 0x5fdaddc2f6df058f3debae86, - limb1: 0xb91432389f10f787a864b427, - limb2: 0xe164946e7413f24, + limb0: 0xa1b25d6cd62391b02fd6dc04, + limb1: 0x3407dab0e432abab7e624210, + limb2: 0x656a0b3734df0575, limb3: 0x0 }, u384 { - limb0: 0x30a2ff2015908ba8e64f6d6a, - limb1: 0x42bc1d38ff8637509e878da4, - limb2: 0xa98ad685d925a84, + limb0: 0xaa768bf4587b8735e9329ecd, + limb1: 0xf7dfffb826fca9d7c261587c, + limb2: 0x394137ece15ce0ce, limb3: 0x0 }, u384 { - limb0: 0xc42d995c6560610e8fea4d83, - limb1: 0xd0a288261553a0ef7bcfe6af, - limb2: 0x452485048fd02a2e, + limb0: 0xc0713b578bb6a50d413f0ba3, + limb1: 0x97e50553c387905132a93fd2, + limb2: 0x5a27bd5f86a01b9f, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -54288,9 +54253,9 @@ mod msm_tests { SumDlogDivHighShifted: FunctionFelt { a_num: array![ u384 { - limb0: 0xabcb7d88064eb551ed6e5f15, - limb1: 0x11d26002f4490422080d7d4d, - limb2: 0x2cf8534e9a092342, + limb0: 0x935006195e8a0bbb9ca3c3b7, + limb1: 0x7bfa2a14af98e9153cd55d04, + limb2: 0x6f3e0e3a7be88656, limb3: 0x0 }, u384 { @@ -54303,15 +54268,15 @@ mod msm_tests { .span(), a_den: array![ u384 { - limb0: 0x16f24581f46ed871f2c5e35b, - limb1: 0xa318ad55fad0bc8ec13bd122, - limb2: 0x2992d33cfdbb3a37, + limb0: 0xb1e916e1df80bffae8f786d8, + limb1: 0x50f2db25f866e396e64a19be, + limb2: 0x18ce0f721cbd4468, limb3: 0x0 }, u384 { - limb0: 0x1e81b7c4bbdbe174595c1f1f, - limb1: 0xfbc22544e2cdfa56ad1342a4, - limb2: 0x5650c46ee12bfe29, + limb0: 0x820e8c25912c402341d6178c, + limb1: 0xda046ffe392c06f19a538037, + limb2: 0x7a84bf2bb7a0a689, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -54319,54 +54284,54 @@ mod msm_tests { .span(), b_num: array![ u384 { - limb0: 0x71f97bab6abe9749c0701b6a, - limb1: 0xa043b0c9536106b14c5b2bea, - limb2: 0x4384e5667c0e8834, + limb0: 0xf85a565c8ec1f410b7b81d26, + limb1: 0x27b42f81f2e636c9f63cf550, + limb2: 0x2ae29129fa59e8cd, limb3: 0x0 }, u384 { - limb0: 0x69a59970a1eda14b61296bac, - limb1: 0x5df379e07e7c46dba8084390, - limb2: 0x4692aae09c8ce1c6, + limb0: 0xf8e1baee022fd19681ff755f, + limb1: 0x4cd2a616dba41f4d54977171, + limb2: 0x2d7599ca520d1823, limb3: 0x0 }, u384 { - limb0: 0xeb53fb473b944cd83fe41c48, - limb1: 0x7c8b0d772a0ee9f780e50461, - limb2: 0xd1ff3c9aed00412, + limb0: 0x409ffc20342f02df6f0a18e9, + limb1: 0x13173b23de66abea023ed69b, + limb2: 0x7183145d1ee573a8, limb3: 0x0 } ] .span(), b_den: array![ u384 { - limb0: 0x3bfcf9fded383a873adf6aa6, - limb1: 0x77725a4bef6b75709aa6f90f, - limb2: 0xd41a267dca81973, + limb0: 0x4dc49969adf2274fba190cc3, + limb1: 0xbe9f9d901dac5af3088930ad, + limb2: 0x776ba4ea307e3680, limb3: 0x0 }, u384 { - limb0: 0xefd887fbb3556f4d54384255, - limb1: 0x825bd7ba737644c6b9861884, - limb2: 0x59356b218ca5b884, + limb0: 0x9dd005123dc14061b81bda8d, + limb1: 0x2808cf6b0bce463b8d7068bf, + limb2: 0x600e96f1e18c0002, limb3: 0x0 }, u384 { - limb0: 0x4b73b14d680613db0df511ad, - limb1: 0xdee7a77d984b39d1efb0470f, - limb2: 0x1baed12001dbd0a4, + limb0: 0x1a579e093dbd197c495a9ccf, + limb1: 0x500bdbccaf143117b8e87793, + limb2: 0x1ff30f217e71fa55, limb3: 0x0 }, u384 { - limb0: 0x23977079a0e0ba00eb81fa9b, - limb1: 0xd4b08e635c4bfa652cf4877f, - limb2: 0x6e18010a374f91d, + limb0: 0xbe8e41d98bf2a189e1b39e05, + limb1: 0x828abc3359e2216d5202d01b, + limb2: 0x761cbc45c277034e, limb3: 0x0 }, u384 { - limb0: 0x1e81b7c4bbdbe174595c1f1f, - limb1: 0xfbc22544e2cdfa56ad1342a4, - limb2: 0x5650c46ee12bfe29, + limb0: 0x820e8c25912c402341d6178c, + limb1: 0xda046ffe392c06f19a538037, + limb2: 0x7a84bf2bb7a0a689, limb3: 0x0 }, u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -54376,9 +54341,9 @@ mod msm_tests { }; let derive_point_from_x_hint = DerivePointFromXHint { y_last_attempt: u384 { - limb0: 0xa772b96745756f37ec5104cb, - limb1: 0xd6014117d0f87e5ea0989f8f, - limb2: 0x2ab1ad9725f3ee7, + limb0: 0x3c69168d1ba3bb8454ad06ef, + limb1: 0x49429f9b63c11bdcc21ff990, + limb2: 0x1f39dff02359d28e, limb3: 0x0 }, g_rhs_sqrt: array![], @@ -54389,15 +54354,15 @@ mod msm_tests { assert!( res == G1Point { x: u384 { - limb0: 0x26b0356fdbc9d6720a318a16, - limb1: 0x19341c3bc568416ced95a819, - limb2: 0x4339ec0d3ca44bf, + limb0: 0x3479851591f54a17b0240a2a, + limb1: 0x398ec866e868988744e33813, + limb2: 0x433d6d7bdef844f6, limb3: 0x0 }, y: u384 { - limb0: 0xa7d9998c8d03d6b85a872c3, - limb1: 0xdc86143ad6a9d2eed18ad4bb, - limb2: 0xaf7161c7c728eac, + limb0: 0xdb2e06c028ed2a4897607875, + limb1: 0x5834f06b16cdb2c1dff7a32b, + limb2: 0x4efdf06f9e56e99, limb3: 0x0 } } diff --git a/src/cairo/src/tests/pairing_tests.cairo b/src/cairo/src/tests/pairing_tests.cairo index 6930218a..2e760683 100644 --- a/src/cairo/src/tests/pairing_tests.cairo +++ b/src/cairo/src/tests/pairing_tests.cairo @@ -15,41 +15,41 @@ mod pairing_tests { let pair0: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0x5c724369afbc772d02aed58e, - limb1: 0x2cd3bc838c66439a3d6160b, - limb2: 0x72f26b55fb56be1, + limb0: 0xf0bb4dcf423852993ec57675, + limb1: 0x843e383df3913d9eea751b6f, + limb2: 0x2d7b03e35bcacad0, limb3: 0x0 }, y: u384 { - limb0: 0x772ca79c580e121ca148fe75, - limb1: 0xce2f55e418ca01b3d6d1014b, - limb2: 0x2884b1dc4e84e30f, + limb0: 0xb4ee61904050fae6335c3927, + limb1: 0x414c763686944083f81d8fbf, + limb2: 0x1f1e123e710e1fb0, limb3: 0x0 } }, q: G2Point { x0: u384 { - limb0: 0xa30b422f34656d6c94e40be, - limb1: 0x83069b5050fd7194c7e35d0c, - limb2: 0xf0e8184945e8d34, + limb0: 0x6a65413626ac06ba2b4c388e, + limb1: 0x93dab66dbb571e2fcedc82a0, + limb2: 0x2ae567b61f80926a, limb3: 0x0 }, x1: u384 { - limb0: 0xde9079ee8fa5e15901dfef27, - limb1: 0xdb602cf367841e5047ffab14, - limb2: 0x1752c7b6b35af45, + limb0: 0x6c6b037639bc1664a3acbede, + limb1: 0xe6d131af60c749b60e9b706d, + limb2: 0x2e08c9cd0ee89149, limb3: 0x0 }, y0: u384 { - limb0: 0x4dafbd7f615fd2aa9f5a0acc, - limb1: 0x35c8bbffe201ffd56deb5dea, - limb2: 0xa822a5ba029a283, + limb0: 0x5bfa8a3d2463f8587a8ea7f6, + limb1: 0x6a01ba41849bab62c2030c80, + limb2: 0x1123e74e17408f4f, limb3: 0x0 }, y1: u384 { - limb0: 0xec6d9e4fafec17b8404c0341, - limb1: 0x17fe961ad4b8ee3bf2ade626, - limb2: 0x1228147f83e3ea5, + limb0: 0x7ad792cc9e77749a30d54b4f, + limb1: 0x949bf803b86c0d7c044bedd, + limb2: 0x122d57f5b3840351, limb3: 0x0 } } @@ -57,41 +57,41 @@ mod pairing_tests { let pair1: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0x5c724369afbc772d02aed58e, - limb1: 0x2cd3bc838c66439a3d6160b, - limb2: 0x72f26b55fb56be1, + limb0: 0xf0bb4dcf423852993ec57675, + limb1: 0x843e383df3913d9eea751b6f, + limb2: 0x2d7b03e35bcacad0, limb3: 0x0 }, y: u384 { - limb0: 0xf14522f0e41279fa3733fed2, - limb1: 0xea20efd268b756a9c0b06945, - limb2: 0x7df9c9692acbd19, + limb0: 0xb38368fcfbcf9130a520c420, + limb1: 0x7703cf7ffaed17d99f63dad1, + limb2: 0x11463c3470238079, limb3: 0x0 } }, q: G2Point { x0: u384 { - limb0: 0xa30b422f34656d6c94e40be, - limb1: 0x83069b5050fd7194c7e35d0c, - limb2: 0xf0e8184945e8d34, + limb0: 0x6a65413626ac06ba2b4c388e, + limb1: 0x93dab66dbb571e2fcedc82a0, + limb2: 0x2ae567b61f80926a, limb3: 0x0 }, x1: u384 { - limb0: 0xde9079ee8fa5e15901dfef27, - limb1: 0xdb602cf367841e5047ffab14, - limb2: 0x1752c7b6b35af45, + limb0: 0x6c6b037639bc1664a3acbede, + limb1: 0xe6d131af60c749b60e9b706d, + limb2: 0x2e08c9cd0ee89149, limb3: 0x0 }, y0: u384 { - limb0: 0x4dafbd7f615fd2aa9f5a0acc, - limb1: 0x35c8bbffe201ffd56deb5dea, - limb2: 0xa822a5ba029a283, + limb0: 0x5bfa8a3d2463f8587a8ea7f6, + limb1: 0x6a01ba41849bab62c2030c80, + limb2: 0x1123e74e17408f4f, limb3: 0x0 }, y1: u384 { - limb0: 0xec6d9e4fafec17b8404c0341, - limb1: 0x17fe961ad4b8ee3bf2ade626, - limb2: 0x1228147f83e3ea5, + limb0: 0x7ad792cc9e77749a30d54b4f, + limb1: 0x949bf803b86c0d7c044bedd, + limb2: 0x122d57f5b3840351, limb3: 0x0 } } @@ -99,4577 +99,4577 @@ mod pairing_tests { let lines = array![ G2Line { r0a0: u384 { - limb0: 0x13fc2cd2d19c89caf55a13a8, - limb1: 0x6a3f58c82d87f618a84e2bf0, - limb2: 0x18b4a261a618f14c, + limb0: 0x772b1b743180af71d77ed375, + limb1: 0xb755f30e14f9358049de25af, + limb2: 0x13fb91a26b4e98f1, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa12d7217806e8da77076b27c, - limb1: 0x868641e2c5440aefc45ec097, - limb2: 0x21a23fb8ecb967b4, + limb0: 0x6a12def9e83d935f9e05ee42, + limb1: 0x66f5dea71bc32890c1918fa1, + limb2: 0x1d028aa44e145a69, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9c39813fffc4c7b20cc17a76, - limb1: 0xf4a2427d51f32abb183e2860, - limb2: 0x2687525f35660d8f, + limb0: 0x5d1b1fdb851c741ac4194c0, + limb1: 0x5be2546ac77d00a6d300144b, + limb2: 0x3fb4015297aa0eb, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc039aad6d5de6af4f5c6c0bb, - limb1: 0x3750d73ecbf7e1bca03d1cf2, - limb2: 0xecbbbebf08974c8, + limb0: 0xf4e6a2013238e1bf2a7879d, + limb1: 0xa0afceb11f0893b2ee09b3ff, + limb2: 0x2c6e8020df524724, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x13fc2cd2d19c89caf55a13a8, - limb1: 0x6a3f58c82d87f618a84e2bf0, - limb2: 0x18b4a261a618f14c, + limb0: 0x772b1b743180af71d77ed375, + limb1: 0xb755f30e14f9358049de25af, + limb2: 0x13fb91a26b4e98f1, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa12d7217806e8da77076b27c, - limb1: 0x868641e2c5440aefc45ec097, - limb2: 0x21a23fb8ecb967b4, + limb0: 0x6a12def9e83d935f9e05ee42, + limb1: 0x66f5dea71bc32890c1918fa1, + limb2: 0x1d028aa44e145a69, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9c39813fffc4c7b20cc17a76, - limb1: 0xf4a2427d51f32abb183e2860, - limb2: 0x2687525f35660d8f, + limb0: 0x5d1b1fdb851c741ac4194c0, + limb1: 0x5be2546ac77d00a6d300144b, + limb2: 0x3fb4015297aa0eb, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc039aad6d5de6af4f5c6c0bb, - limb1: 0x3750d73ecbf7e1bca03d1cf2, - limb2: 0xecbbbebf08974c8, + limb0: 0xf4e6a2013238e1bf2a7879d, + limb1: 0xa0afceb11f0893b2ee09b3ff, + limb2: 0x2c6e8020df524724, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x54759dba6a84024be322e99f, - limb1: 0x4e10ecee53f96244ef333ea1, - limb2: 0x17afac113b18aedd, + limb0: 0xf146af190a9fdca500fe29d2, + limb1: 0xfa52a86c8822dd4da344e1, + limb2: 0x1c68bcd075e30738, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc7445875bbb1fe6f68064acb, - limb1: 0x31ca03d3bc3d4d6dd322a9f9, - limb2: 0xec20eb9f4783875, + limb0: 0xfe5eeb9353e2f8b73a770f05, + limb1: 0x515a670f65be2fccd5efdaef, + limb2: 0x1361c3ce931d45c0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcc38494d3c5bc464cbbb82d1, - limb1: 0xc3ae03392f8e2da27f434230, - limb2: 0x9dcfc13abcb9299, + limb0: 0x62a0188f83cec4d52c3b6887, + limb1: 0x5c6df14bba0457b6c4815646, + limb2: 0x2c690e5db7b6ff3e, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa8381fb666422121e2b63c8c, - limb1: 0x80ff6e77b58976a0f7444d9e, - limb2: 0x21989286f0a82b61, + limb0: 0x5923606d28fcfdfae5d575aa, + limb1: 0x17a077056278c4aaa977b692, + limb2: 0x3f5ce5201df5905, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x52cd2431a88ef78ec482ce43, - limb1: 0xdb994b0266c17f5e8dded89e, - limb2: 0x107cd7f4d3a5c20f, + limb0: 0xa3525d2cae8b5182684a8fe2, + limb1: 0x2615d4b2e2b97947b08c1b54, + limb2: 0x423d4a4c88894b9, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb4e4c1a20d77277f1ecef6b, - limb1: 0x3fc13dd5746446d4e724e645, - limb2: 0x18ed3b584ac56dfe, + limb0: 0xe1e433e369e0ed2e4ce6761b, + limb1: 0x7d6ff95230bb591a6065202e, + limb2: 0x17c9b6c72be29379, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3a537f5b220d3afddbd3be9d, - limb1: 0xeddb087729b8776323c5b8ee, - limb2: 0x1f5e5f61ae8c59e6, + limb0: 0xedf58e136835f2b55f9729a0, + limb1: 0xd1638b4685f215ae902698a2, + limb2: 0x16ef73e56e8a6ffe, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4fe2c98dc347d3ceb841acdf, - limb1: 0xe6a7f4bdda3390e40c62a288, - limb2: 0x2a277c878fe85394, + limb0: 0xa9fe7ad3136c068912625a3c, + limb1: 0xa057f0aef8b55bc5d62c4589, + limb2: 0x1cac3a8bc428e2be, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x54759dba6a84024be322e99f, - limb1: 0x4e10ecee53f96244ef333ea1, - limb2: 0x17afac113b18aedd, + limb0: 0xf146af190a9fdca500fe29d2, + limb1: 0xfa52a86c8822dd4da344e1, + limb2: 0x1c68bcd075e30738, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc7445875bbb1fe6f68064acb, - limb1: 0x31ca03d3bc3d4d6dd322a9f9, - limb2: 0xec20eb9f4783875, + limb0: 0xfe5eeb9353e2f8b73a770f05, + limb1: 0x515a670f65be2fccd5efdaef, + limb2: 0x1361c3ce931d45c0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcc38494d3c5bc464cbbb82d1, - limb1: 0xc3ae03392f8e2da27f434230, - limb2: 0x9dcfc13abcb9299, + limb0: 0x62a0188f83cec4d52c3b6887, + limb1: 0x5c6df14bba0457b6c4815646, + limb2: 0x2c690e5db7b6ff3e, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa8381fb666422121e2b63c8c, - limb1: 0x80ff6e77b58976a0f7444d9e, - limb2: 0x21989286f0a82b61, + limb0: 0x5923606d28fcfdfae5d575aa, + limb1: 0x17a077056278c4aaa977b692, + limb2: 0x3f5ce5201df5905, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x52cd2431a88ef78ec482ce43, - limb1: 0xdb994b0266c17f5e8dded89e, - limb2: 0x107cd7f4d3a5c20f, + limb0: 0xa3525d2cae8b5182684a8fe2, + limb1: 0x2615d4b2e2b97947b08c1b54, + limb2: 0x423d4a4c88894b9, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb4e4c1a20d77277f1ecef6b, - limb1: 0x3fc13dd5746446d4e724e645, - limb2: 0x18ed3b584ac56dfe, + limb0: 0xe1e433e369e0ed2e4ce6761b, + limb1: 0x7d6ff95230bb591a6065202e, + limb2: 0x17c9b6c72be29379, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3a537f5b220d3afddbd3be9d, - limb1: 0xeddb087729b8776323c5b8ee, - limb2: 0x1f5e5f61ae8c59e6, + limb0: 0xedf58e136835f2b55f9729a0, + limb1: 0xd1638b4685f215ae902698a2, + limb2: 0x16ef73e56e8a6ffe, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4fe2c98dc347d3ceb841acdf, - limb1: 0xe6a7f4bdda3390e40c62a288, - limb2: 0x2a277c878fe85394, + limb0: 0xa9fe7ad3136c068912625a3c, + limb1: 0xa057f0aef8b55bc5d62c4589, + limb2: 0x1cac3a8bc428e2be, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x53e743cfae97f5f975cf49cd, - limb1: 0x4a80ced31104872cc46b3fa6, - limb2: 0x26af32e1e4b51233, + limb0: 0x854fcea153c14e138b22bb3f, + limb1: 0x3659d33f9eb648ac4f730fea, + limb2: 0xf377b2658ef6e40, limb3: 0x0 }, r0a1: u384 { - limb0: 0x20537276ce9b6d318ea2f567, - limb1: 0xf0d44c7024c00ead73f13f53, - limb2: 0x13e665e776128b92, + limb0: 0x3b5780478b698a71ba4df075, + limb1: 0xc2208c59b0886c6832893ec4, + limb2: 0x185318ac8b000e0c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xad9a173a5d331f5e8221dedc, - limb1: 0x11fc759697a8b7533cf8e7fd, - limb2: 0x281514af188294d6, + limb0: 0x66059b8b09ae13608ce8fe2e, + limb1: 0xde6179860e053454d89ba8e9, + limb2: 0x24fbfd31a94a6a7e, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcd59e5219230c0937878feff, - limb1: 0x85d1c954acb2bf4803a9e200, - limb2: 0x4229bcd8d07f251, + limb0: 0x92a6b0e23722dd43d0ce4037, + limb1: 0x656fe88d9bd2abf1dbe8220, + limb2: 0xf6467213a3518b4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x53e743cfae97f5f975cf49cd, - limb1: 0x4a80ced31104872cc46b3fa6, - limb2: 0x26af32e1e4b51233, + limb0: 0x854fcea153c14e138b22bb3f, + limb1: 0x3659d33f9eb648ac4f730fea, + limb2: 0xf377b2658ef6e40, limb3: 0x0 }, r0a1: u384 { - limb0: 0x20537276ce9b6d318ea2f567, - limb1: 0xf0d44c7024c00ead73f13f53, - limb2: 0x13e665e776128b92, + limb0: 0x3b5780478b698a71ba4df075, + limb1: 0xc2208c59b0886c6832893ec4, + limb2: 0x185318ac8b000e0c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xad9a173a5d331f5e8221dedc, - limb1: 0x11fc759697a8b7533cf8e7fd, - limb2: 0x281514af188294d6, + limb0: 0x66059b8b09ae13608ce8fe2e, + limb1: 0xde6179860e053454d89ba8e9, + limb2: 0x24fbfd31a94a6a7e, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcd59e5219230c0937878feff, - limb1: 0x85d1c954acb2bf4803a9e200, - limb2: 0x4229bcd8d07f251, + limb0: 0x92a6b0e23722dd43d0ce4037, + limb1: 0x656fe88d9bd2abf1dbe8220, + limb2: 0xf6467213a3518b4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa4e9586d1e24c4e20dafd647, - limb1: 0x7f88fb247cdc95b6010d9e1, - limb2: 0x2fc2b7b6b4abaf58, + limb0: 0x40b04023af1d75e57db0b593, + limb1: 0xb1b9cb5a283a59370a8e0eed, + limb2: 0x24f0f258d01ae56, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9bbcc4481ffe859db49e1d98, - limb1: 0x13be783da3c9bea06995338d, - limb2: 0x2041db55312bcc8b, + limb0: 0x3e63e179b4cc867d3e2fee51, + limb1: 0xac6961c80da79261a3a41c12, + limb2: 0x827fb6dcd78aa80, limb3: 0x0 }, r1a0: u384 { - limb0: 0x89721c899fdfd2776e1d4131, - limb1: 0x602e0c14a55d62b055ca8113, - limb2: 0x1fbed06b550ce696, + limb0: 0x86de52f8a886bfeb16b95a1c, + limb1: 0xad214db6512ff7cebd68377, + limb2: 0x1b686fa632f00da5, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfff5deaaf0a2cf3cca44de5c, - limb1: 0xd5efcfc87d7bc3cc0d3d9be1, - limb2: 0x18106453c47c63f5, + limb0: 0xb52366f9a4c6cf93362a2ba3, + limb1: 0x806402817001622ad7f7aa5c, + limb2: 0x2a1054effea00a74, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x33720aad04d475cab632ceb4, - limb1: 0xd7b4eef636fd40d7ad28aaf7, - limb2: 0x25e952c734deb4a7, + limb0: 0x4bbf360b7bf192ac7febb59, + limb1: 0x37224c1f0543094becf664e1, + limb2: 0x8773daf6641a269, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8c407e44689ce2ec6ea22bb3, - limb1: 0x10ab4ebbd57974771a9bfe37, - limb2: 0xc2d6b95efdcdb61, + limb0: 0x43a00488bb1a39f802fc6c6b, + limb1: 0x14f35e8eab4d2f97b3da07f2, + limb2: 0x2ce12ad67f864fbb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb03dd6a767461c482dcafa86, - limb1: 0xbbde25f51257025e9a28974, - limb2: 0x278e5fd00fb1b935, + limb0: 0xf254e6047efaaa7b0b381596, + limb1: 0x217cc1a7cba1394fd12a03f8, + limb2: 0x7026db433e962b0, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7bbd2c1bbf42867093a08f41, - limb1: 0xcc4d5b03ab2a82a219b80b43, - limb2: 0x2105554776d3cf89, + limb0: 0x2cbf54ded4575f78b4a3bc89, + limb1: 0x3ce61033a291e8e82fe492d1, + limb2: 0x2e346ae3c06307b4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa4e9586d1e24c4e20dafd647, - limb1: 0x7f88fb247cdc95b6010d9e1, - limb2: 0x2fc2b7b6b4abaf58, + limb0: 0x40b04023af1d75e57db0b593, + limb1: 0xb1b9cb5a283a59370a8e0eed, + limb2: 0x24f0f258d01ae56, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9bbcc4481ffe859db49e1d98, - limb1: 0x13be783da3c9bea06995338d, - limb2: 0x2041db55312bcc8b, + limb0: 0x3e63e179b4cc867d3e2fee51, + limb1: 0xac6961c80da79261a3a41c12, + limb2: 0x827fb6dcd78aa80, limb3: 0x0 }, r1a0: u384 { - limb0: 0x89721c899fdfd2776e1d4131, - limb1: 0x602e0c14a55d62b055ca8113, - limb2: 0x1fbed06b550ce696, + limb0: 0x86de52f8a886bfeb16b95a1c, + limb1: 0xad214db6512ff7cebd68377, + limb2: 0x1b686fa632f00da5, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfff5deaaf0a2cf3cca44de5c, - limb1: 0xd5efcfc87d7bc3cc0d3d9be1, - limb2: 0x18106453c47c63f5, + limb0: 0xb52366f9a4c6cf93362a2ba3, + limb1: 0x806402817001622ad7f7aa5c, + limb2: 0x2a1054effea00a74, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x33720aad04d475cab632ceb4, - limb1: 0xd7b4eef636fd40d7ad28aaf7, - limb2: 0x25e952c734deb4a7, + limb0: 0x4bbf360b7bf192ac7febb59, + limb1: 0x37224c1f0543094becf664e1, + limb2: 0x8773daf6641a269, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8c407e44689ce2ec6ea22bb3, - limb1: 0x10ab4ebbd57974771a9bfe37, - limb2: 0xc2d6b95efdcdb61, + limb0: 0x43a00488bb1a39f802fc6c6b, + limb1: 0x14f35e8eab4d2f97b3da07f2, + limb2: 0x2ce12ad67f864fbb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb03dd6a767461c482dcafa86, - limb1: 0xbbde25f51257025e9a28974, - limb2: 0x278e5fd00fb1b935, + limb0: 0xf254e6047efaaa7b0b381596, + limb1: 0x217cc1a7cba1394fd12a03f8, + limb2: 0x7026db433e962b0, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7bbd2c1bbf42867093a08f41, - limb1: 0xcc4d5b03ab2a82a219b80b43, - limb2: 0x2105554776d3cf89, + limb0: 0x2cbf54ded4575f78b4a3bc89, + limb1: 0x3ce61033a291e8e82fe492d1, + limb2: 0x2e346ae3c06307b4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x32e40fb4d2025cd0e82ced6f, - limb1: 0xbc0608261a5f898f868a08d8, - limb2: 0x282ba090b78fca30, + limb0: 0xb45b6f2035db512dad808602, + limb1: 0xbb3892b023ca441dd4844fe7, + limb2: 0xfc19d1dc195ae93, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdfe55dec41a63986c6aceff7, - limb1: 0x2555dd47b4f4cd057f63d51, - limb2: 0xf5a1242bc10ee1f, + limb0: 0x6872ca6c40c58c3b2242c7af, + limb1: 0x88f8cc280bfd0228b2a52048, + limb2: 0x18cc91ee4a2a15b5, limb3: 0x0 }, r1a0: u384 { - limb0: 0x590c3a14f70d93710ad8d62d, - limb1: 0x91b6b9b5a53eb9825ebe4230, - limb2: 0x2f3c78d5b1a40d44, + limb0: 0xe4df82f320b21f7cf2a3cc70, + limb1: 0xc7bbc977bb5e9dfac09a900b, + limb2: 0xf77c58a97a92778, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7fa2feee5a3d934393f3dcdb, - limb1: 0x216af82d8ef724bef3a0cff9, - limb2: 0x2a3b1b41079d39de, + limb0: 0xd7188014f9d969e8dd9ce7fc, + limb1: 0xc3911094c87955a655ec0560, + limb2: 0x13213af482241734, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x32e40fb4d2025cd0e82ced6f, - limb1: 0xbc0608261a5f898f868a08d8, - limb2: 0x282ba090b78fca30, + limb0: 0xb45b6f2035db512dad808602, + limb1: 0xbb3892b023ca441dd4844fe7, + limb2: 0xfc19d1dc195ae93, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdfe55dec41a63986c6aceff7, - limb1: 0x2555dd47b4f4cd057f63d51, - limb2: 0xf5a1242bc10ee1f, + limb0: 0x6872ca6c40c58c3b2242c7af, + limb1: 0x88f8cc280bfd0228b2a52048, + limb2: 0x18cc91ee4a2a15b5, limb3: 0x0 }, r1a0: u384 { - limb0: 0x590c3a14f70d93710ad8d62d, - limb1: 0x91b6b9b5a53eb9825ebe4230, - limb2: 0x2f3c78d5b1a40d44, + limb0: 0xe4df82f320b21f7cf2a3cc70, + limb1: 0xc7bbc977bb5e9dfac09a900b, + limb2: 0xf77c58a97a92778, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7fa2feee5a3d934393f3dcdb, - limb1: 0x216af82d8ef724bef3a0cff9, - limb2: 0x2a3b1b41079d39de, + limb0: 0xd7188014f9d969e8dd9ce7fc, + limb1: 0xc3911094c87955a655ec0560, + limb2: 0x13213af482241734, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x70f807c9bd9cc653569a88c0, - limb1: 0xd3bd9e80a4c0879b8c54502f, - limb2: 0x78f06a79ebcc122, + limb0: 0xe6ddf471ddf093324de80186, + limb1: 0x83a631a22bcec188a9962c09, + limb2: 0x4b541283220f4ca, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1f4b6ad4455ba03d167d7fb3, - limb1: 0xd11276f3c684ac26d1a62390, - limb2: 0x2e376293ba7c79b7, + limb0: 0x43d8744c1c05ebc91e4a7ad8, + limb1: 0x56a20ce7c0305e8d547f9e42, + limb2: 0x2f516ea7de08dbbd, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe7a2888c80e82ed69b2c357d, - limb1: 0xa5057b1db97b9c3edd232a43, - limb2: 0x1eed211bc2e66931, + limb0: 0x6ffbf84ced8bf018b268850b, + limb1: 0xa9ae412f000bfd6c979a9408, + limb2: 0xc4d4f0f275c852f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaca29d5ef46c59744a30d2e, - limb1: 0xfeb93f366d5295ce80bf592, - limb2: 0x697b2aa97f68681, + limb0: 0xb04aca000e3552128e31069, + limb1: 0x155dbb8a99238860f67f4fca, + limb2: 0x2b2081620aaffd0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x70f807c9bd9cc653569a88c0, - limb1: 0xd3bd9e80a4c0879b8c54502f, - limb2: 0x78f06a79ebcc122, + limb0: 0xe6ddf471ddf093324de80186, + limb1: 0x83a631a22bcec188a9962c09, + limb2: 0x4b541283220f4ca, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1f4b6ad4455ba03d167d7fb3, - limb1: 0xd11276f3c684ac26d1a62390, - limb2: 0x2e376293ba7c79b7, + limb0: 0x43d8744c1c05ebc91e4a7ad8, + limb1: 0x56a20ce7c0305e8d547f9e42, + limb2: 0x2f516ea7de08dbbd, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe7a2888c80e82ed69b2c357d, - limb1: 0xa5057b1db97b9c3edd232a43, - limb2: 0x1eed211bc2e66931, + limb0: 0x6ffbf84ced8bf018b268850b, + limb1: 0xa9ae412f000bfd6c979a9408, + limb2: 0xc4d4f0f275c852f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaca29d5ef46c59744a30d2e, - limb1: 0xfeb93f366d5295ce80bf592, - limb2: 0x697b2aa97f68681, + limb0: 0xb04aca000e3552128e31069, + limb1: 0x155dbb8a99238860f67f4fca, + limb2: 0x2b2081620aaffd0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x21c98846074d27fd948bf071, - limb1: 0x2677e986de7a6bb799458f9, - limb2: 0xbfae24b95db3021, + limb0: 0xccf2a9cc4298b5b48e90692d, + limb1: 0x5575f5743c7554c3db138ef7, + limb2: 0x212739b1673197dc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x241a18abd825d1d53b4b1cd1, - limb1: 0x1153ff7044093f39311453e, - limb2: 0x7ef5b22d955cb08, + limb0: 0x7d48c8417822a96508c74931, + limb1: 0x73876397d732303c050f2e48, + limb2: 0x1290cb14423e516e, limb3: 0x0 }, r1a0: u384 { - limb0: 0xfde2d3f182c7404c916ddaee, - limb1: 0x51059992e83a57e0357b63f3, - limb2: 0x5de94c1a6dce11c, + limb0: 0xe0b710f582971386513935dd, + limb1: 0xf2663a8158a085949de5d03c, + limb2: 0x2e2a8ecc830f6a03, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa897c205d1548b407d3c7597, - limb1: 0x3e8437329ebf4e2f1fe3b370, - limb2: 0x1e321d523b1a40f8, + limb0: 0x64b3e1293b5b3d72bd00087b, + limb1: 0xdbc000b6094527c68798056a, + limb2: 0x298b6ff500ca4615, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x21c98846074d27fd948bf071, - limb1: 0x2677e986de7a6bb799458f9, - limb2: 0xbfae24b95db3021, + limb0: 0xccf2a9cc4298b5b48e90692d, + limb1: 0x5575f5743c7554c3db138ef7, + limb2: 0x212739b1673197dc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x241a18abd825d1d53b4b1cd1, - limb1: 0x1153ff7044093f39311453e, - limb2: 0x7ef5b22d955cb08, + limb0: 0x7d48c8417822a96508c74931, + limb1: 0x73876397d732303c050f2e48, + limb2: 0x1290cb14423e516e, limb3: 0x0 }, r1a0: u384 { - limb0: 0xfde2d3f182c7404c916ddaee, - limb1: 0x51059992e83a57e0357b63f3, - limb2: 0x5de94c1a6dce11c, + limb0: 0xe0b710f582971386513935dd, + limb1: 0xf2663a8158a085949de5d03c, + limb2: 0x2e2a8ecc830f6a03, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa897c205d1548b407d3c7597, - limb1: 0x3e8437329ebf4e2f1fe3b370, - limb2: 0x1e321d523b1a40f8, + limb0: 0x64b3e1293b5b3d72bd00087b, + limb1: 0xdbc000b6094527c68798056a, + limb2: 0x298b6ff500ca4615, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3b7c7dfdc0377c6e77a69a78, - limb1: 0x56046802d2acc2048f6473b0, - limb2: 0x1e538130528f2037, + limb0: 0xaef84797bd11e92e5973f820, + limb1: 0x892c96db335a469e346d4a56, + limb2: 0x247e69ae4dc47f1c, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf8d9c38bafe394d496ec036b, - limb1: 0xa7178b19843c74a1c9ffdec9, - limb2: 0x754d38a41b241f5, + limb0: 0xae2ce4afe7d25e99afe86bdd, + limb1: 0x6140128ed69f3d6984bdcbfc, + limb2: 0x2ff4d0b73a033930, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5399cd6b03cd5dd0e202dc18, - limb1: 0x27132b0286f70ab0f9d3f154, - limb2: 0x209e0408c047ebf6, + limb0: 0x7f9d039a3f50f1d692d547ba, + limb1: 0x66835b102f621025dc25f2f6, + limb2: 0x447b1ceb1dc35a6, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa73bf15125290077d6d0d018, - limb1: 0xe07ebcc1ab67f9cf97be2e80, - limb2: 0x217014f56f93c3a2, + limb0: 0xce8e7265cdaa795380a25ebb, + limb1: 0x658659c1868caab16a208382, + limb2: 0x2dd647942bd1256a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb565c9168c2f34f5d1a48833, - limb1: 0x9f2143f7ae3a47cffb1e8fda, - limb2: 0xaebc823dc1fcd02, + limb0: 0x7904cd27b9bd410d075d1626, + limb1: 0x98ce6ada7157eb3ef2aa6223, + limb2: 0x2bdabb18f2272e13, limb3: 0x0 }, r0a1: u384 { - limb0: 0x59b0e8a0118c2f5ec29f117b, - limb1: 0xd1d302931406f12c6271f149, - limb2: 0x18a65ecc25e7a0e3, + limb0: 0x51455265ddc4492629a67284, + limb1: 0x5ef2b6498fff7438078e716e, + limb2: 0x110b62fd48219eba, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcf4c8bcea64951980f866870, - limb1: 0xd708dcd6450bd5f68bed09a3, - limb2: 0xb3c0fa83c8b5f48, + limb0: 0xe1f678a6e81728cf92cbfe83, + limb1: 0x8caa96a78c51b966caeac5dc, + limb2: 0x2de70eff7caecdde, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc45fac32b4b9fb37bdaea5f3, - limb1: 0xc46068320849da30be837df5, - limb2: 0x2c6ea62118c44345, + limb0: 0x9cd2347ed0b50f9c18eb2b1f, + limb1: 0x2a3c9a0902f2a1b9b7ff3092, + limb2: 0x81d5c790bad0bf9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3b7c7dfdc0377c6e77a69a78, - limb1: 0x56046802d2acc2048f6473b0, - limb2: 0x1e538130528f2037, + limb0: 0xaef84797bd11e92e5973f820, + limb1: 0x892c96db335a469e346d4a56, + limb2: 0x247e69ae4dc47f1c, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf8d9c38bafe394d496ec036b, - limb1: 0xa7178b19843c74a1c9ffdec9, - limb2: 0x754d38a41b241f5, + limb0: 0xae2ce4afe7d25e99afe86bdd, + limb1: 0x6140128ed69f3d6984bdcbfc, + limb2: 0x2ff4d0b73a033930, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5399cd6b03cd5dd0e202dc18, - limb1: 0x27132b0286f70ab0f9d3f154, - limb2: 0x209e0408c047ebf6, + limb0: 0x7f9d039a3f50f1d692d547ba, + limb1: 0x66835b102f621025dc25f2f6, + limb2: 0x447b1ceb1dc35a6, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa73bf15125290077d6d0d018, - limb1: 0xe07ebcc1ab67f9cf97be2e80, - limb2: 0x217014f56f93c3a2, + limb0: 0xce8e7265cdaa795380a25ebb, + limb1: 0x658659c1868caab16a208382, + limb2: 0x2dd647942bd1256a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb565c9168c2f34f5d1a48833, - limb1: 0x9f2143f7ae3a47cffb1e8fda, - limb2: 0xaebc823dc1fcd02, + limb0: 0x7904cd27b9bd410d075d1626, + limb1: 0x98ce6ada7157eb3ef2aa6223, + limb2: 0x2bdabb18f2272e13, limb3: 0x0 }, r0a1: u384 { - limb0: 0x59b0e8a0118c2f5ec29f117b, - limb1: 0xd1d302931406f12c6271f149, - limb2: 0x18a65ecc25e7a0e3, + limb0: 0x51455265ddc4492629a67284, + limb1: 0x5ef2b6498fff7438078e716e, + limb2: 0x110b62fd48219eba, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcf4c8bcea64951980f866870, - limb1: 0xd708dcd6450bd5f68bed09a3, - limb2: 0xb3c0fa83c8b5f48, + limb0: 0xe1f678a6e81728cf92cbfe83, + limb1: 0x8caa96a78c51b966caeac5dc, + limb2: 0x2de70eff7caecdde, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc45fac32b4b9fb37bdaea5f3, - limb1: 0xc46068320849da30be837df5, - limb2: 0x2c6ea62118c44345, + limb0: 0x9cd2347ed0b50f9c18eb2b1f, + limb1: 0x2a3c9a0902f2a1b9b7ff3092, + limb2: 0x81d5c790bad0bf9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9611d44432206361cd7f3473, - limb1: 0xd34ce79c946302bdbf8f72de, - limb2: 0x1fd5b330038873b0, + limb0: 0xa7bf2187a88673ac371021be, + limb1: 0x60adb4990487dbf00ac09f05, + limb2: 0x147348254165c9bc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x71a17fc89e530dda653c4220, - limb1: 0x37852a7f67a5fa74c6613c00, - limb2: 0x1e11dde6c5c9261d, + limb0: 0xd5f9d7be033390970fe95c11, + limb1: 0xdafe8999274a79072022cc65, + limb2: 0x2818b0635af89eab, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf8f9c22149b11566f643511e, - limb1: 0xeafd5e990baff3df753b4545, - limb2: 0x2e3219be0c5ae36a, + limb0: 0x2ac21a52bafd07ec59881774, + limb1: 0xcfbd0db3ad0e8bf3c4bc1882, + limb2: 0x1e5ced8d0f910c66, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8e2193129c343cb3a4db1f47, - limb1: 0xf56af697b4d714d190d603dd, - limb2: 0x2d3349ba9a465783, + limb0: 0xa394f04336dc71b51ef2bf72, + limb1: 0x5c1e49d0fe11969b0d4ea879, + limb2: 0x17540021296a12b7, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9611d44432206361cd7f3473, - limb1: 0xd34ce79c946302bdbf8f72de, - limb2: 0x1fd5b330038873b0, + limb0: 0xa7bf2187a88673ac371021be, + limb1: 0x60adb4990487dbf00ac09f05, + limb2: 0x147348254165c9bc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x71a17fc89e530dda653c4220, - limb1: 0x37852a7f67a5fa74c6613c00, - limb2: 0x1e11dde6c5c9261d, + limb0: 0xd5f9d7be033390970fe95c11, + limb1: 0xdafe8999274a79072022cc65, + limb2: 0x2818b0635af89eab, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf8f9c22149b11566f643511e, - limb1: 0xeafd5e990baff3df753b4545, - limb2: 0x2e3219be0c5ae36a, + limb0: 0x2ac21a52bafd07ec59881774, + limb1: 0xcfbd0db3ad0e8bf3c4bc1882, + limb2: 0x1e5ced8d0f910c66, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8e2193129c343cb3a4db1f47, - limb1: 0xf56af697b4d714d190d603dd, - limb2: 0x2d3349ba9a465783, + limb0: 0xa394f04336dc71b51ef2bf72, + limb1: 0x5c1e49d0fe11969b0d4ea879, + limb2: 0x17540021296a12b7, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x196665c03009ef576fd6961, - limb1: 0x2719b6e1af31847d795deb9e, - limb2: 0x155d054c2097ab50, + limb0: 0xc6f0e05482ff2aeed41db2d3, + limb1: 0x3420f681240beb33dcde4312, + limb2: 0x2e053cb6f01c7e05, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4e6b687ca0dfecf549daeef5, - limb1: 0xb4e4f54e1d35a5cd994c6054, - limb2: 0x11c8b740bfbe502, + limb0: 0x408b5086f13090d3bf8780f3, + limb1: 0x91231ad8a7909cdedb7c2736, + limb2: 0x24675529166a3102, limb3: 0x0 }, r1a0: u384 { - limb0: 0xbc9857a840b86d1d7ffb6b9d, - limb1: 0x3315341c9d5a9ff2955435b2, - limb2: 0x30447649e2f50c77, + limb0: 0x4053f7fa82f6b2109275249d, + limb1: 0xd648927fec32dbec1aaf0b74, + limb2: 0x9720803a078dd5c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9a187f6cc5ad3146f48c70be, - limb1: 0x9809e5f4637c60447e7cfdef, - limb2: 0x667330690960cd, + limb0: 0xea260588ad6b83aa830991b6, + limb1: 0xd68757c8977e94c9391c5f3c, + limb2: 0x2b075cf416198cd4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x215d0ebb801c8a2c8b0ef9e1, - limb1: 0x89edb45dc7e6f74cc7304d78, - limb2: 0x2edb9f6a4282ba3f, + limb0: 0xf2a9d2d6fa9c0a23fd297efa, + limb1: 0xb5567bf9cbcc6abac2b5e2a7, + limb2: 0x2759923923cd407b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x78cef612dbc9013e22395718, - limb1: 0x68c8984791d65522cdabe9da, - limb2: 0x5cd4d2fb36b3baf, + limb0: 0x415869b9190688ab059a6bda, + limb1: 0xb323da257ff38b6cbd03077e, + limb2: 0x1c1773c8b651e04b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x28728de61873d65855d29e69, - limb1: 0x74abfdede8c4f6d81e7da1bd, - limb2: 0x199f58d62645184b, + limb0: 0xa418c24e0f0d793f77bdaf5f, + limb1: 0x9fc966e5670d47757262a2db, + limb2: 0x125da35a71e45a55, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaff5645c427c1f808f890796, - limb1: 0x6040d76177456d9ec3d7dd19, - limb2: 0xdead02313d94e2c, + limb0: 0xbe0aecec234207dca7aa256c, + limb1: 0xee6790d3f21162b68d2ce119, + limb2: 0x1c53192f874ea332, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x196665c03009ef576fd6961, - limb1: 0x2719b6e1af31847d795deb9e, - limb2: 0x155d054c2097ab50, + limb0: 0xc6f0e05482ff2aeed41db2d3, + limb1: 0x3420f681240beb33dcde4312, + limb2: 0x2e053cb6f01c7e05, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4e6b687ca0dfecf549daeef5, - limb1: 0xb4e4f54e1d35a5cd994c6054, - limb2: 0x11c8b740bfbe502, + limb0: 0x408b5086f13090d3bf8780f3, + limb1: 0x91231ad8a7909cdedb7c2736, + limb2: 0x24675529166a3102, limb3: 0x0 }, r1a0: u384 { - limb0: 0xbc9857a840b86d1d7ffb6b9d, - limb1: 0x3315341c9d5a9ff2955435b2, - limb2: 0x30447649e2f50c77, + limb0: 0x4053f7fa82f6b2109275249d, + limb1: 0xd648927fec32dbec1aaf0b74, + limb2: 0x9720803a078dd5c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9a187f6cc5ad3146f48c70be, - limb1: 0x9809e5f4637c60447e7cfdef, - limb2: 0x667330690960cd, + limb0: 0xea260588ad6b83aa830991b6, + limb1: 0xd68757c8977e94c9391c5f3c, + limb2: 0x2b075cf416198cd4, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x215d0ebb801c8a2c8b0ef9e1, - limb1: 0x89edb45dc7e6f74cc7304d78, - limb2: 0x2edb9f6a4282ba3f, + limb0: 0xf2a9d2d6fa9c0a23fd297efa, + limb1: 0xb5567bf9cbcc6abac2b5e2a7, + limb2: 0x2759923923cd407b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x78cef612dbc9013e22395718, - limb1: 0x68c8984791d65522cdabe9da, - limb2: 0x5cd4d2fb36b3baf, + limb0: 0x415869b9190688ab059a6bda, + limb1: 0xb323da257ff38b6cbd03077e, + limb2: 0x1c1773c8b651e04b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x28728de61873d65855d29e69, - limb1: 0x74abfdede8c4f6d81e7da1bd, - limb2: 0x199f58d62645184b, + limb0: 0xa418c24e0f0d793f77bdaf5f, + limb1: 0x9fc966e5670d47757262a2db, + limb2: 0x125da35a71e45a55, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaff5645c427c1f808f890796, - limb1: 0x6040d76177456d9ec3d7dd19, - limb2: 0xdead02313d94e2c, + limb0: 0xbe0aecec234207dca7aa256c, + limb1: 0xee6790d3f21162b68d2ce119, + limb2: 0x1c53192f874ea332, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7e32624925ec3a6751ef2472, - limb1: 0x454a7f1340778a7b5e1fe904, - limb2: 0x20906f33c00c8d33, + limb0: 0xe6ef3afe54f1911200e04b35, + limb1: 0x7e8bc9976261600d3133515f, + limb2: 0x2f22827aa29d4da8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x11710c1c383a8014976022cf, - limb1: 0x62f932c9ffa1da884f9fceaa, - limb2: 0xb62b0be184f4494, + limb0: 0xd4445593a9ec0bf309fa9cc7, + limb1: 0xa15585f4084d6e8d18ab1846, + limb2: 0x7c776e1fecf6, limb3: 0x0 }, r1a0: u384 { - limb0: 0xebd3310b943ec2f49ece0892, - limb1: 0x6a06d1930900d0bbc6221220, - limb2: 0x116715e97fb69aaa, + limb0: 0x70237ec2d5a58e2ae7d6976, + limb1: 0x5dc6183aedf85a5c8765db11, + limb2: 0x1627f40f9a2dabda, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1cc4a1667629f976c64db1fd, - limb1: 0x965c2705725d60a7cc1550d2, - limb2: 0x10a0fbe4d0a5883d, + limb0: 0xe171aeeac7c1f1365ab948cd, + limb1: 0x79c8de96bfaf34d5a4d12ef, + limb2: 0x1d2d814d16cb7f07, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7e32624925ec3a6751ef2472, - limb1: 0x454a7f1340778a7b5e1fe904, - limb2: 0x20906f33c00c8d33, + limb0: 0xe6ef3afe54f1911200e04b35, + limb1: 0x7e8bc9976261600d3133515f, + limb2: 0x2f22827aa29d4da8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x11710c1c383a8014976022cf, - limb1: 0x62f932c9ffa1da884f9fceaa, - limb2: 0xb62b0be184f4494, + limb0: 0xd4445593a9ec0bf309fa9cc7, + limb1: 0xa15585f4084d6e8d18ab1846, + limb2: 0x7c776e1fecf6, limb3: 0x0 }, r1a0: u384 { - limb0: 0xebd3310b943ec2f49ece0892, - limb1: 0x6a06d1930900d0bbc6221220, - limb2: 0x116715e97fb69aaa, + limb0: 0x70237ec2d5a58e2ae7d6976, + limb1: 0x5dc6183aedf85a5c8765db11, + limb2: 0x1627f40f9a2dabda, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1cc4a1667629f976c64db1fd, - limb1: 0x965c2705725d60a7cc1550d2, - limb2: 0x10a0fbe4d0a5883d, + limb0: 0xe171aeeac7c1f1365ab948cd, + limb1: 0x79c8de96bfaf34d5a4d12ef, + limb2: 0x1d2d814d16cb7f07, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf29c8da48273fcc3ed42600f, - limb1: 0xc9085080314ee52208dbeaa3, - limb2: 0x1c97df69a5dee342, + limb0: 0x869f7cb66dddd61fa060404d, + limb1: 0xdfac74f3845819037034a739, + limb2: 0x133255901cb3584b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe90ffc7dc1134df60473a9b0, - limb1: 0x1785bba891bbf8bf4d028c93, - limb2: 0x2c73ffd5720b59fe, + limb0: 0xdde62d773df2fdf526de8671, + limb1: 0xf9b3994ae01a9e392517671b, + limb2: 0x2874c43e6df52eb7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaa4625384e00cc7a1d26f59c, - limb1: 0x7e2bd7ea82f7679164b9a298, - limb2: 0x1ceb19ac1c28c731, + limb0: 0x22ad88cf932a853e3f2a0f79, + limb1: 0xf652e74f4d5b6faa59fe81ef, + limb2: 0x9c6119a1f8c3a9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8570cac2138c94f9d261d52, - limb1: 0x4750472206e83d3ee38e9950, - limb2: 0x159e78c2f8fb9e87, + limb0: 0x7fb8f358aa541a8c7095d2b2, + limb1: 0x8fd78d934716ff3e215e88a8, + limb2: 0x861d03cada9ee69, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf29c8da48273fcc3ed42600f, - limb1: 0xc9085080314ee52208dbeaa3, - limb2: 0x1c97df69a5dee342, + limb0: 0x869f7cb66dddd61fa060404d, + limb1: 0xdfac74f3845819037034a739, + limb2: 0x133255901cb3584b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe90ffc7dc1134df60473a9b0, - limb1: 0x1785bba891bbf8bf4d028c93, - limb2: 0x2c73ffd5720b59fe, + limb0: 0xdde62d773df2fdf526de8671, + limb1: 0xf9b3994ae01a9e392517671b, + limb2: 0x2874c43e6df52eb7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaa4625384e00cc7a1d26f59c, - limb1: 0x7e2bd7ea82f7679164b9a298, - limb2: 0x1ceb19ac1c28c731, + limb0: 0x22ad88cf932a853e3f2a0f79, + limb1: 0xf652e74f4d5b6faa59fe81ef, + limb2: 0x9c6119a1f8c3a9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8570cac2138c94f9d261d52, - limb1: 0x4750472206e83d3ee38e9950, - limb2: 0x159e78c2f8fb9e87, + limb0: 0x7fb8f358aa541a8c7095d2b2, + limb1: 0x8fd78d934716ff3e215e88a8, + limb2: 0x861d03cada9ee69, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf0061f0ffdd6c080cb6db4f2, - limb1: 0x3156ebb6ec8163f1daaf0fef, - limb2: 0x16a1d8e8a632ecda, + limb0: 0xb568a5de780e0b69f44709e3, + limb1: 0xf832def32b0421f35fe5e8b0, + limb2: 0x1dffe27bfab7836, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8944acaa1fea52aec014ca14, - limb1: 0xaef310c4279054f6513952eb, - limb2: 0x187dba91d42da551, + limb0: 0xb73fa49877be4b9f8186430b, + limb1: 0xb031396214f110cd97895487, + limb2: 0x52fcd66e25ed286, limb3: 0x0 }, r1a0: u384 { - limb0: 0x115802cd86218654ef41231b, - limb1: 0x6d01289ae998e8d09b1c7304, - limb2: 0x8e3eaae865b5448, + limb0: 0x2567ca5928f9f0f7a4d6e23b, + limb1: 0x3e3f473f4bc4ee5e8ffaf839, + limb2: 0x29c56ac955a5c6ee, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9562b590b59641ca26308faa, - limb1: 0x75559bf6ea06aaf7df07c197, - limb2: 0x8245163a7eeeada, + limb0: 0x95ae9356166fcd44f7490b1f, + limb1: 0x95f7a0d21d1d2e05685b94da, + limb2: 0x1f3197566fdf81f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf0061f0ffdd6c080cb6db4f2, - limb1: 0x3156ebb6ec8163f1daaf0fef, - limb2: 0x16a1d8e8a632ecda, + limb0: 0xb568a5de780e0b69f44709e3, + limb1: 0xf832def32b0421f35fe5e8b0, + limb2: 0x1dffe27bfab7836, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8944acaa1fea52aec014ca14, - limb1: 0xaef310c4279054f6513952eb, - limb2: 0x187dba91d42da551, + limb0: 0xb73fa49877be4b9f8186430b, + limb1: 0xb031396214f110cd97895487, + limb2: 0x52fcd66e25ed286, limb3: 0x0 }, r1a0: u384 { - limb0: 0x115802cd86218654ef41231b, - limb1: 0x6d01289ae998e8d09b1c7304, - limb2: 0x8e3eaae865b5448, + limb0: 0x2567ca5928f9f0f7a4d6e23b, + limb1: 0x3e3f473f4bc4ee5e8ffaf839, + limb2: 0x29c56ac955a5c6ee, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9562b590b59641ca26308faa, - limb1: 0x75559bf6ea06aaf7df07c197, - limb2: 0x8245163a7eeeada, + limb0: 0x95ae9356166fcd44f7490b1f, + limb1: 0x95f7a0d21d1d2e05685b94da, + limb2: 0x1f3197566fdf81f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2cd350402831a212e938de81, - limb1: 0xed9a7a80de5e1ec0f4b2c4db, - limb2: 0x2f04e512c778c8a3, + limb0: 0xc2346b0f31fcb60dc341a353, + limb1: 0x42611dcc7dbb9899c1c115ed, + limb2: 0x269d2592348efeb9, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8cd4823620230108e89a1e94, - limb1: 0x2dc2d1e59111f47e7663cb36, - limb2: 0x8cbcece7fd20252, + limb0: 0xcf4027499d09ba82b5586e07, + limb1: 0x20194bc3d686a81698c87468, + limb2: 0x23e28bf64d9510bb, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6bbf0471a8988b16ca947450, - limb1: 0xf7911a0d3db83d1956cc277b, - limb2: 0x7db791f07f93808, + limb0: 0x468cdd6355c3796abeedd9b, + limb1: 0x101f497021812a5876fdfded, + limb2: 0x292ec07bbbff7e4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd46f340dfdea0b0bef63e487, - limb1: 0xbd7520f6a22899dfe8887b8b, - limb2: 0x10f9c9a88e425f37, + limb0: 0xf20ddfe065fa4e43065ce7f6, + limb1: 0xaaa0e197ebd8d2e13b2a2559, + limb2: 0x19423445102a6eea, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6e52232ec1b38ff612c0a492, - limb1: 0x7839f69ef41e655aea744d38, - limb2: 0x20ab9a05d7ad1f52, + limb0: 0xd387a25f0b43c7e3cbfb4263, + limb1: 0x44e72d8a0916c4af43113629, + limb2: 0x209122172999a868, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8bcdd6166e6ee552371e4636, - limb1: 0x1db9fb889b69e26b47964933, - limb2: 0x15c1b7b4dc794f53, + limb0: 0x8e9ca9b1720507a2b58ba75d, + limb1: 0xd865fe762a9b6826e344c34b, + limb2: 0x244dd84349cc584d, limb3: 0x0 }, r1a0: u384 { - limb0: 0xdb2e4167ad301668392630d4, - limb1: 0x78d41ddd629aa47464b2954, - limb2: 0x122cf4989cd8fabc, + limb0: 0x468e0f9965372e02c2f03013, + limb1: 0xa1b6145ae2d726817d606eaf, + limb2: 0x2d7b574df3ecc709, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd20b6faf7e40f5ceda0b861d, - limb1: 0xaa5af5b00dbdc5f5712dc3bc, - limb2: 0x447f15fd6766a8b, + limb0: 0x9793df1cff30a388b12a3a3, + limb1: 0xa0e35d433ac91f67d6f8e07, + limb2: 0x18f946c113c3f885, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2cd350402831a212e938de81, - limb1: 0xed9a7a80de5e1ec0f4b2c4db, - limb2: 0x2f04e512c778c8a3, + limb0: 0xc2346b0f31fcb60dc341a353, + limb1: 0x42611dcc7dbb9899c1c115ed, + limb2: 0x269d2592348efeb9, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8cd4823620230108e89a1e94, - limb1: 0x2dc2d1e59111f47e7663cb36, - limb2: 0x8cbcece7fd20252, + limb0: 0xcf4027499d09ba82b5586e07, + limb1: 0x20194bc3d686a81698c87468, + limb2: 0x23e28bf64d9510bb, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6bbf0471a8988b16ca947450, - limb1: 0xf7911a0d3db83d1956cc277b, - limb2: 0x7db791f07f93808, + limb0: 0x468cdd6355c3796abeedd9b, + limb1: 0x101f497021812a5876fdfded, + limb2: 0x292ec07bbbff7e4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd46f340dfdea0b0bef63e487, - limb1: 0xbd7520f6a22899dfe8887b8b, - limb2: 0x10f9c9a88e425f37, + limb0: 0xf20ddfe065fa4e43065ce7f6, + limb1: 0xaaa0e197ebd8d2e13b2a2559, + limb2: 0x19423445102a6eea, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6e52232ec1b38ff612c0a492, - limb1: 0x7839f69ef41e655aea744d38, - limb2: 0x20ab9a05d7ad1f52, + limb0: 0xd387a25f0b43c7e3cbfb4263, + limb1: 0x44e72d8a0916c4af43113629, + limb2: 0x209122172999a868, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8bcdd6166e6ee552371e4636, - limb1: 0x1db9fb889b69e26b47964933, - limb2: 0x15c1b7b4dc794f53, + limb0: 0x8e9ca9b1720507a2b58ba75d, + limb1: 0xd865fe762a9b6826e344c34b, + limb2: 0x244dd84349cc584d, limb3: 0x0 }, r1a0: u384 { - limb0: 0xdb2e4167ad301668392630d4, - limb1: 0x78d41ddd629aa47464b2954, - limb2: 0x122cf4989cd8fabc, + limb0: 0x468e0f9965372e02c2f03013, + limb1: 0xa1b6145ae2d726817d606eaf, + limb2: 0x2d7b574df3ecc709, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd20b6faf7e40f5ceda0b861d, - limb1: 0xaa5af5b00dbdc5f5712dc3bc, - limb2: 0x447f15fd6766a8b, + limb0: 0x9793df1cff30a388b12a3a3, + limb1: 0xa0e35d433ac91f67d6f8e07, + limb2: 0x18f946c113c3f885, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6411c143a41cb76ad19b3fe9, - limb1: 0xa0a964f97d57b7b7db78d2bb, - limb2: 0x2bf9110ff7c2fdb2, + limb0: 0x512c9b03f212d0a6f9d760c4, + limb1: 0xc332144737f4df268646c426, + limb2: 0x2096592dcfe3c072, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe183b2e52b5137dcbd33bcb9, - limb1: 0xa82fec8a97ce059d24aa3b35, - limb2: 0x19d11db2c569eece, + limb0: 0xe196497e79e79640d081b246, + limb1: 0x274f6dfd4ebf227702342ef7, + limb2: 0x1bb32db112f9ee45, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcce8df3877331ae709ba92e, - limb1: 0x77be8fc4e226cee90a7f955a, - limb2: 0x1609775efcfbed68, + limb0: 0x8ff4d03e84e2890a74bc57ee, + limb1: 0x66f6cd6a8b6e3caa93ba7c9, + limb2: 0x27c08bc9723a9801, limb3: 0x0 }, r1a1: u384 { - limb0: 0x39a8e985d0dad03eb162f6be, - limb1: 0x6e34512435de4fa5a24bd9f1, - limb2: 0x48ac1c32967705c, + limb0: 0xe0ba1430f2862a8b92caca7b, + limb1: 0x629ed99efff3c7c5bf279429, + limb2: 0x5e3fc739bace207, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6411c143a41cb76ad19b3fe9, - limb1: 0xa0a964f97d57b7b7db78d2bb, - limb2: 0x2bf9110ff7c2fdb2, + limb0: 0x512c9b03f212d0a6f9d760c4, + limb1: 0xc332144737f4df268646c426, + limb2: 0x2096592dcfe3c072, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe183b2e52b5137dcbd33bcb9, - limb1: 0xa82fec8a97ce059d24aa3b35, - limb2: 0x19d11db2c569eece, + limb0: 0xe196497e79e79640d081b246, + limb1: 0x274f6dfd4ebf227702342ef7, + limb2: 0x1bb32db112f9ee45, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcce8df3877331ae709ba92e, - limb1: 0x77be8fc4e226cee90a7f955a, - limb2: 0x1609775efcfbed68, + limb0: 0x8ff4d03e84e2890a74bc57ee, + limb1: 0x66f6cd6a8b6e3caa93ba7c9, + limb2: 0x27c08bc9723a9801, limb3: 0x0 }, r1a1: u384 { - limb0: 0x39a8e985d0dad03eb162f6be, - limb1: 0x6e34512435de4fa5a24bd9f1, - limb2: 0x48ac1c32967705c, + limb0: 0xe0ba1430f2862a8b92caca7b, + limb1: 0x629ed99efff3c7c5bf279429, + limb2: 0x5e3fc739bace207, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x5937e500cc17fe668064047c, - limb1: 0x9f2b55cac45bcda93d2f78f3, - limb2: 0xefeb9a8c60c35b1, + limb0: 0x6f205555b797ccb3b9f0aaf0, + limb1: 0x169e4c5874dd281786b62e, + limb2: 0x2fbb60932bc68e51, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5a5317cb9495c6ab1aef7b7d, - limb1: 0xacd6df647415a39894ce9966, - limb2: 0xbffddf772479189, + limb0: 0xcf6f727294550c3b119afe3b, + limb1: 0x7c2e0ff99a13f41ee515ca26, + limb2: 0x1d1b9e59664eb645, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf15f58a2d03a5ea13fb08cd1, - limb1: 0xf674a4be1c2503cda5689c69, - limb2: 0x2f7d5d5a694a683c, + limb0: 0xf040f8de8753efaf966f0c2a, + limb1: 0xef8ed452a756b6be6b7a0ffa, + limb2: 0xf402db99907fdf3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xdc4bd00ef75e168f58d4d2a, - limb1: 0x1bfd060452f3514198e29abf, - limb2: 0x2fb9df98cdf02af8, + limb0: 0xddd38bf97e8a755acd207954, + limb1: 0xbbbee6113f15ce327d57b12c, + limb2: 0x2ed9daf46f8e1ae1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x55a590f27da0651b25558b4b, - limb1: 0x6615f51e899f1e4e82f98128, - limb2: 0x199c3087e00b3344, + limb0: 0x8133a500d63000b96400c087, + limb1: 0xe647cf9a3b881f3c03815a65, + limb2: 0x6cd09d84d306e34, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b5e06c80ef2855bebd84d2f, - limb1: 0x1c1f46d31a0f8c4b32d69d1f, - limb2: 0xc7173eeef78684f, + limb0: 0xd5e37d3b507237ca2ff6ef16, + limb1: 0xbf770be4e4bc3aa2fca5474d, + limb2: 0x34132125b905d95, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ebc8e53cae1fb87e94a81be, - limb1: 0x2efb8c4b7a9c0a823f48f43, - limb2: 0x24a78e30bd7579ce, + limb0: 0xb0165516a8a2fa738cee898f, + limb1: 0x7fb1e1872b6b1c2e025c21a, + limb2: 0x2ee8dad0f4e6b50, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1b636f31533d11ad8eb219e7, - limb1: 0x73ae69bb67c2a8d6f05f02a3, - limb2: 0x2e4cfe29e400395a, + limb0: 0xc549e2fd435cc22c83d33b7, + limb1: 0xeb92bac0ddbe961615d4dfc6, + limb2: 0x11a3e4dcca56e8c2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x5937e500cc17fe668064047c, - limb1: 0x9f2b55cac45bcda93d2f78f3, - limb2: 0xefeb9a8c60c35b1, + limb0: 0x6f205555b797ccb3b9f0aaf0, + limb1: 0x169e4c5874dd281786b62e, + limb2: 0x2fbb60932bc68e51, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5a5317cb9495c6ab1aef7b7d, - limb1: 0xacd6df647415a39894ce9966, - limb2: 0xbffddf772479189, + limb0: 0xcf6f727294550c3b119afe3b, + limb1: 0x7c2e0ff99a13f41ee515ca26, + limb2: 0x1d1b9e59664eb645, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf15f58a2d03a5ea13fb08cd1, - limb1: 0xf674a4be1c2503cda5689c69, - limb2: 0x2f7d5d5a694a683c, + limb0: 0xf040f8de8753efaf966f0c2a, + limb1: 0xef8ed452a756b6be6b7a0ffa, + limb2: 0xf402db99907fdf3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xdc4bd00ef75e168f58d4d2a, - limb1: 0x1bfd060452f3514198e29abf, - limb2: 0x2fb9df98cdf02af8, + limb0: 0xddd38bf97e8a755acd207954, + limb1: 0xbbbee6113f15ce327d57b12c, + limb2: 0x2ed9daf46f8e1ae1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x55a590f27da0651b25558b4b, - limb1: 0x6615f51e899f1e4e82f98128, - limb2: 0x199c3087e00b3344, + limb0: 0x8133a500d63000b96400c087, + limb1: 0xe647cf9a3b881f3c03815a65, + limb2: 0x6cd09d84d306e34, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b5e06c80ef2855bebd84d2f, - limb1: 0x1c1f46d31a0f8c4b32d69d1f, - limb2: 0xc7173eeef78684f, + limb0: 0xd5e37d3b507237ca2ff6ef16, + limb1: 0xbf770be4e4bc3aa2fca5474d, + limb2: 0x34132125b905d95, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ebc8e53cae1fb87e94a81be, - limb1: 0x2efb8c4b7a9c0a823f48f43, - limb2: 0x24a78e30bd7579ce, + limb0: 0xb0165516a8a2fa738cee898f, + limb1: 0x7fb1e1872b6b1c2e025c21a, + limb2: 0x2ee8dad0f4e6b50, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1b636f31533d11ad8eb219e7, - limb1: 0x73ae69bb67c2a8d6f05f02a3, - limb2: 0x2e4cfe29e400395a, + limb0: 0xc549e2fd435cc22c83d33b7, + limb1: 0xeb92bac0ddbe961615d4dfc6, + limb2: 0x11a3e4dcca56e8c2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe56e784bbdcef3aac92c27bf, - limb1: 0xe05d2d64486ae7c7510e1eef, - limb2: 0x817afd56e949ca0, + limb0: 0x509097507bc016b1f149557a, + limb1: 0x8f5d2ee8cd6209e0e5b54ad7, + limb2: 0xec50e281015fb1d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x71faffc19db373861efa0d6a, - limb1: 0x477781fc0937a2118f769af5, - limb2: 0x15d219bd2ed37b8d, + limb0: 0x4c5db9b951faec54b1f17817, + limb1: 0xbffc419a33a7394e677fe297, + limb2: 0xe05ceeab1406c12, limb3: 0x0 }, r1a0: u384 { - limb0: 0x53fbcf9fcfa3ce84788f77e1, - limb1: 0xcddbe217782fd9b953be071, - limb2: 0x259554747e31d728, + limb0: 0xe1d73f777abcf1aef617aac7, + limb1: 0x16accf2c082a5b9cf8384d81, + limb2: 0x1d20a3edab6387eb, limb3: 0x0 }, r1a1: u384 { - limb0: 0xad5f8a34ab854b3222d472cf, - limb1: 0x52d45547201187d646581965, - limb2: 0x7e06bc2a587f1e5, + limb0: 0x46e6d09a24349597a6681d86, + limb1: 0xb7efec7e11effa74ec8bc3be, + limb2: 0x63f08f51a154c89, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe56e784bbdcef3aac92c27bf, - limb1: 0xe05d2d64486ae7c7510e1eef, - limb2: 0x817afd56e949ca0, + limb0: 0x509097507bc016b1f149557a, + limb1: 0x8f5d2ee8cd6209e0e5b54ad7, + limb2: 0xec50e281015fb1d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x71faffc19db373861efa0d6a, - limb1: 0x477781fc0937a2118f769af5, - limb2: 0x15d219bd2ed37b8d, + limb0: 0x4c5db9b951faec54b1f17817, + limb1: 0xbffc419a33a7394e677fe297, + limb2: 0xe05ceeab1406c12, limb3: 0x0 }, r1a0: u384 { - limb0: 0x53fbcf9fcfa3ce84788f77e1, - limb1: 0xcddbe217782fd9b953be071, - limb2: 0x259554747e31d728, + limb0: 0xe1d73f777abcf1aef617aac7, + limb1: 0x16accf2c082a5b9cf8384d81, + limb2: 0x1d20a3edab6387eb, limb3: 0x0 }, r1a1: u384 { - limb0: 0xad5f8a34ab854b3222d472cf, - limb1: 0x52d45547201187d646581965, - limb2: 0x7e06bc2a587f1e5, + limb0: 0x46e6d09a24349597a6681d86, + limb1: 0xb7efec7e11effa74ec8bc3be, + limb2: 0x63f08f51a154c89, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd31eafba3914f53ec27d3c17, - limb1: 0x79f8fd670536f7dce8961707, - limb2: 0xad61c97b0c3ece2, + limb0: 0x7983cad0e0607009c82f19f5, + limb1: 0xc334a7ef523ec112f409ad1f, + limb2: 0x201f2311d6497e68, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd7ee1a74e63d792c11a8d210, - limb1: 0x950a872cb7a0fa80eadadd4c, - limb2: 0xc9a713c6c5c5d77, + limb0: 0xd5fe22d3ca44f13790665ba5, + limb1: 0x62c665c556136d026faf4bec, + limb2: 0x2ac9e4528756dac1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5bf888fffd64a4cbeedc1da3, - limb1: 0xa399d6a96adf9259444479bb, - limb2: 0x2cb770b0ccd2613d, + limb0: 0xfee86f808a9ad0faf679838a, + limb1: 0xd38eaaf9b0a60259a88109ab, + limb2: 0x4d86740f5187017, limb3: 0x0 }, r1a1: u384 { - limb0: 0x55e8e6d97e15c9ffc69c05e7, - limb1: 0xe79422bdf601065dd66f1187, - limb2: 0x228e90b7b1104767, + limb0: 0x3608843bbde24bd1165160b, + limb1: 0xe79e2110cfd99332ac2a52d6, + limb2: 0x1e356bb29ac63c5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xdf325bffc4f75bde16339c21, - limb1: 0x59e1b11a922fd25b46da34ad, - limb2: 0x1df431a8b518c319, + limb0: 0xcdf73b22bba48ff7862013d5, + limb1: 0x821e0990deea4e7934148efc, + limb2: 0x2185fb5110ebf282, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa34e525fbce9d573f316a8e1, - limb1: 0x5715c100bd0d4bc47e1199aa, - limb2: 0x111fd4d9fe3f4aa8, + limb0: 0x12fabba4f2b1d82b97e15209, + limb1: 0x1a52cd3fbcabcd757c5f5649, + limb2: 0x75bb6c9be67767b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ddeb02cca8556d49bb4d13b, - limb1: 0x56b8e64426fbb6983377fe9f, - limb2: 0x166b7c9a7bb6eb74, + limb0: 0xca3516ad57ff0c9bf393cbf6, + limb1: 0x8aa51b7f12cfb39d132e13dd, + limb2: 0x2c2e2c59eef6d0f5, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8ef5c3ef69254a68b5ffcf4d, - limb1: 0xd6eaa92d6814c39953c833ca, - limb2: 0x8cda70783ba41fc, + limb0: 0xda592db763d5d6eef09b33df, + limb1: 0x8e5759595c92d72c4410d03d, + limb2: 0x249e17c64b3fd381, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd31eafba3914f53ec27d3c17, - limb1: 0x79f8fd670536f7dce8961707, - limb2: 0xad61c97b0c3ece2, + limb0: 0x7983cad0e0607009c82f19f5, + limb1: 0xc334a7ef523ec112f409ad1f, + limb2: 0x201f2311d6497e68, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd7ee1a74e63d792c11a8d210, - limb1: 0x950a872cb7a0fa80eadadd4c, - limb2: 0xc9a713c6c5c5d77, + limb0: 0xd5fe22d3ca44f13790665ba5, + limb1: 0x62c665c556136d026faf4bec, + limb2: 0x2ac9e4528756dac1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5bf888fffd64a4cbeedc1da3, - limb1: 0xa399d6a96adf9259444479bb, - limb2: 0x2cb770b0ccd2613d, + limb0: 0xfee86f808a9ad0faf679838a, + limb1: 0xd38eaaf9b0a60259a88109ab, + limb2: 0x4d86740f5187017, limb3: 0x0 }, r1a1: u384 { - limb0: 0x55e8e6d97e15c9ffc69c05e7, - limb1: 0xe79422bdf601065dd66f1187, - limb2: 0x228e90b7b1104767, + limb0: 0x3608843bbde24bd1165160b, + limb1: 0xe79e2110cfd99332ac2a52d6, + limb2: 0x1e356bb29ac63c5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xdf325bffc4f75bde16339c21, - limb1: 0x59e1b11a922fd25b46da34ad, - limb2: 0x1df431a8b518c319, + limb0: 0xcdf73b22bba48ff7862013d5, + limb1: 0x821e0990deea4e7934148efc, + limb2: 0x2185fb5110ebf282, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa34e525fbce9d573f316a8e1, - limb1: 0x5715c100bd0d4bc47e1199aa, - limb2: 0x111fd4d9fe3f4aa8, + limb0: 0x12fabba4f2b1d82b97e15209, + limb1: 0x1a52cd3fbcabcd757c5f5649, + limb2: 0x75bb6c9be67767b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ddeb02cca8556d49bb4d13b, - limb1: 0x56b8e64426fbb6983377fe9f, - limb2: 0x166b7c9a7bb6eb74, + limb0: 0xca3516ad57ff0c9bf393cbf6, + limb1: 0x8aa51b7f12cfb39d132e13dd, + limb2: 0x2c2e2c59eef6d0f5, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8ef5c3ef69254a68b5ffcf4d, - limb1: 0xd6eaa92d6814c39953c833ca, - limb2: 0x8cda70783ba41fc, + limb0: 0xda592db763d5d6eef09b33df, + limb1: 0x8e5759595c92d72c4410d03d, + limb2: 0x249e17c64b3fd381, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4e44a9b72f424336295cd2d4, - limb1: 0xe43008eebda999077f586dd0, - limb2: 0x2833eade2a41fefe, + limb0: 0x716e1a5505b79ffe977c7933, + limb1: 0x8da81199620e1acb0508e265, + limb2: 0x29b214c78aa679f3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa23faf119ba1e712eaa2ad9d, - limb1: 0xffd42ca54f7c46f0e5dd7375, - limb2: 0x14f3d66f92191f3d, + limb0: 0x7147156f7c402dee506b6268, + limb1: 0x4bf773c718401ef6b7c1153f, + limb2: 0xe20c04d0e3a54e1, limb3: 0x0 }, r1a0: u384 { - limb0: 0xde664b9a5bb68f83b166d13f, - limb1: 0x504eada56a1604828ac250aa, - limb2: 0x1a59ac93ced3882, + limb0: 0x2a90c46af4b9bc2384c7a95, + limb1: 0x691cd17def28360b3afdfa47, + limb2: 0x2b18bffd1169493f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x57e2ca35f761f0a43dca1cf5, - limb1: 0x9d1dae4b976d26ff058b20f6, - limb2: 0x27083f11525f853e, + limb0: 0x45b3c0c4f450d73761de5c29, + limb1: 0x9e65bcc163c2f100fb67398a, + limb2: 0x15ea3d158639e4af, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4e44a9b72f424336295cd2d4, - limb1: 0xe43008eebda999077f586dd0, - limb2: 0x2833eade2a41fefe, + limb0: 0x716e1a5505b79ffe977c7933, + limb1: 0x8da81199620e1acb0508e265, + limb2: 0x29b214c78aa679f3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa23faf119ba1e712eaa2ad9d, - limb1: 0xffd42ca54f7c46f0e5dd7375, - limb2: 0x14f3d66f92191f3d, + limb0: 0x7147156f7c402dee506b6268, + limb1: 0x4bf773c718401ef6b7c1153f, + limb2: 0xe20c04d0e3a54e1, limb3: 0x0 }, r1a0: u384 { - limb0: 0xde664b9a5bb68f83b166d13f, - limb1: 0x504eada56a1604828ac250aa, - limb2: 0x1a59ac93ced3882, + limb0: 0x2a90c46af4b9bc2384c7a95, + limb1: 0x691cd17def28360b3afdfa47, + limb2: 0x2b18bffd1169493f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x57e2ca35f761f0a43dca1cf5, - limb1: 0x9d1dae4b976d26ff058b20f6, - limb2: 0x27083f11525f853e, + limb0: 0x45b3c0c4f450d73761de5c29, + limb1: 0x9e65bcc163c2f100fb67398a, + limb2: 0x15ea3d158639e4af, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xacffdc27d3923f5779c9f561, - limb1: 0x6acc5c81d640b06edf8669e7, - limb2: 0x23d3ecf6cd5ae000, + limb0: 0x74ed2068016c0d7fd17dada5, + limb1: 0x426a4707f04b641bb0418e02, + limb2: 0x2d8dbef3017f39fa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc576257e34519bcbfe12a0e5, - limb1: 0x6dfda810453128aa1b9ff5f3, - limb2: 0x272b3f6cde8f6f3d, + limb0: 0xfa87a948a0623b30ddea8fc3, + limb1: 0xf29141c8ef2d52250b5ca6a, + limb2: 0x1227d8e14c7924e8, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3314182b61b3a1153d51085c, - limb1: 0x78d944875a2068000dc27e73, - limb2: 0x2184b9ce45b284ff, + limb0: 0xecf16f37b7126a4f903d8ce0, + limb1: 0xbe9bced1f1148117ef83e6da, + limb2: 0x16211f8d10b825f7, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa3831da9efe63936fe510a88, - limb1: 0xd853b46a2f7648744b5bbcea, - limb2: 0x2437a9f7f5559f66, + limb0: 0x6e45b3d9d0ac7b268147daba, + limb1: 0x91e8cf824704eab8b3015ddc, + limb2: 0x23de100853addccd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xacffdc27d3923f5779c9f561, - limb1: 0x6acc5c81d640b06edf8669e7, - limb2: 0x23d3ecf6cd5ae000, + limb0: 0x74ed2068016c0d7fd17dada5, + limb1: 0x426a4707f04b641bb0418e02, + limb2: 0x2d8dbef3017f39fa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc576257e34519bcbfe12a0e5, - limb1: 0x6dfda810453128aa1b9ff5f3, - limb2: 0x272b3f6cde8f6f3d, + limb0: 0xfa87a948a0623b30ddea8fc3, + limb1: 0xf29141c8ef2d52250b5ca6a, + limb2: 0x1227d8e14c7924e8, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3314182b61b3a1153d51085c, - limb1: 0x78d944875a2068000dc27e73, - limb2: 0x2184b9ce45b284ff, + limb0: 0xecf16f37b7126a4f903d8ce0, + limb1: 0xbe9bced1f1148117ef83e6da, + limb2: 0x16211f8d10b825f7, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa3831da9efe63936fe510a88, - limb1: 0xd853b46a2f7648744b5bbcea, - limb2: 0x2437a9f7f5559f66, + limb0: 0x6e45b3d9d0ac7b268147daba, + limb1: 0x91e8cf824704eab8b3015ddc, + limb2: 0x23de100853addccd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x373d78cacc3a213ab7a5dc77, - limb1: 0x2c4c9295f1b3e767a376d95a, - limb2: 0x6fa8606535c131, + limb0: 0xe4409ec1723b88d1f4c4e731, + limb1: 0x8ac6c86e08e80e8639fa6704, + limb2: 0x138a4895758369a0, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a037d066e3015f12b9bb899, - limb1: 0x2df06eb9be7dd1d34dd0ce6e, - limb2: 0x2bfecfb6faa40681, + limb0: 0xedddaee786c08b14741505df, + limb1: 0x301e5153625dc34ba5d7ae4d, + limb2: 0xf07c3def0519a2e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x767f84f556bc0e82acc4c2fc, - limb1: 0xdc285959286fe86c69fd09c6, - limb2: 0xddf35d64e052591, + limb0: 0x36284aeb0f3a3e98305e3b16, + limb1: 0xff3e39186d0a3b83e9665ce9, + limb2: 0x249eb32cc8f2e96c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xba3bf8a2a744c4be716d10a3, - limb1: 0x704558fde5a2dd4610092a58, - limb2: 0x24381fac38d1c2f4, + limb0: 0x76af5098f9ff5a05db6c497f, + limb1: 0x52b3e356ffc35e5e571d3ed5, + limb2: 0x2ae75d385d100239, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8bfb882fe3e87bf7f06a534, - limb1: 0x60e74ba16f35b38925253fa1, - limb2: 0x105952dd8d3cb0fb, + limb0: 0x27e79236d3a504413496a69d, + limb1: 0x64c48560fe7535d8d983d405, + limb2: 0x301fec1c5687092d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x86a65a5ae488b0d28900cf53, - limb1: 0x4fca5c6edee392882c778363, - limb2: 0x160b4e8a7969f551, + limb0: 0xf9d98258f6b8ceb3a88fca4d, + limb1: 0x70f511abfa1b8043895c59f4, + limb2: 0x232d43d5a83d90a0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7b126c951fa4afc0c2ebda0c, - limb1: 0x85834d2eff18413563bf9144, - limb2: 0x8f905b15b3b2add, + limb0: 0x3c95aeed100dda9adb13b1a0, + limb1: 0x55f58c3984b5fb36f8d42fca, + limb2: 0xbb497e3560e7780, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa595d6853747f798b16d2eca, - limb1: 0x42d7941f6581b069059ed186, - limb2: 0x2eb502b9a9b7169b, + limb0: 0xa9e39e5f74c602ec71b0d0d7, + limb1: 0x4169acabd31a3be85d93af7c, + limb2: 0x2dfc00f8128f3e0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x373d78cacc3a213ab7a5dc77, - limb1: 0x2c4c9295f1b3e767a376d95a, - limb2: 0x6fa8606535c131, + limb0: 0xe4409ec1723b88d1f4c4e731, + limb1: 0x8ac6c86e08e80e8639fa6704, + limb2: 0x138a4895758369a0, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a037d066e3015f12b9bb899, - limb1: 0x2df06eb9be7dd1d34dd0ce6e, - limb2: 0x2bfecfb6faa40681, + limb0: 0xedddaee786c08b14741505df, + limb1: 0x301e5153625dc34ba5d7ae4d, + limb2: 0xf07c3def0519a2e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x767f84f556bc0e82acc4c2fc, - limb1: 0xdc285959286fe86c69fd09c6, - limb2: 0xddf35d64e052591, + limb0: 0x36284aeb0f3a3e98305e3b16, + limb1: 0xff3e39186d0a3b83e9665ce9, + limb2: 0x249eb32cc8f2e96c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xba3bf8a2a744c4be716d10a3, - limb1: 0x704558fde5a2dd4610092a58, - limb2: 0x24381fac38d1c2f4, + limb0: 0x76af5098f9ff5a05db6c497f, + limb1: 0x52b3e356ffc35e5e571d3ed5, + limb2: 0x2ae75d385d100239, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8bfb882fe3e87bf7f06a534, - limb1: 0x60e74ba16f35b38925253fa1, - limb2: 0x105952dd8d3cb0fb, + limb0: 0x27e79236d3a504413496a69d, + limb1: 0x64c48560fe7535d8d983d405, + limb2: 0x301fec1c5687092d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x86a65a5ae488b0d28900cf53, - limb1: 0x4fca5c6edee392882c778363, - limb2: 0x160b4e8a7969f551, + limb0: 0xf9d98258f6b8ceb3a88fca4d, + limb1: 0x70f511abfa1b8043895c59f4, + limb2: 0x232d43d5a83d90a0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7b126c951fa4afc0c2ebda0c, - limb1: 0x85834d2eff18413563bf9144, - limb2: 0x8f905b15b3b2add, + limb0: 0x3c95aeed100dda9adb13b1a0, + limb1: 0x55f58c3984b5fb36f8d42fca, + limb2: 0xbb497e3560e7780, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa595d6853747f798b16d2eca, - limb1: 0x42d7941f6581b069059ed186, - limb2: 0x2eb502b9a9b7169b, + limb0: 0xa9e39e5f74c602ec71b0d0d7, + limb1: 0x4169acabd31a3be85d93af7c, + limb2: 0x2dfc00f8128f3e0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe6dbfdaa4aaed35ae46b7e36, - limb1: 0x954a32448a2c26964f83e2ff, - limb2: 0x23fe11d86de21bf3, + limb0: 0x460e3211aa99bc794f5fdd8f, + limb1: 0x54582431c73e3c151adfb986, + limb2: 0x15ae9ac9c9576199, limb3: 0x0 }, r0a1: u384 { - limb0: 0x390ec78bb0c63fea5a5112ca, - limb1: 0x5eaba420296488bd9ad78ba4, - limb2: 0x179a2336d20f9552, + limb0: 0xd5d6fbee18410bd43eae83c8, + limb1: 0x478589c488675cc81752c76e, + limb2: 0x15f4a8b20aa637ae, limb3: 0x0 }, r1a0: u384 { - limb0: 0x451d421ca57949d9274eaee9, - limb1: 0xd85aee99f3f7b33bdddf1b37, - limb2: 0x1b83c0b80546357d, + limb0: 0xfdc5c8f39c0b4f52a7db2fc1, + limb1: 0x616dd141f71dac5b64bd3acf, + limb2: 0x23e7f351c745917, limb3: 0x0 }, r1a1: u384 { - limb0: 0x94c9276300f21460bd558c41, - limb1: 0x89efceec3bb694f4c41487d3, - limb2: 0x44375dd912e436b, + limb0: 0x5d9cc1c3eb7bd5a3ff890948, + limb1: 0xc692847a46f936749efb869, + limb2: 0x6a5c2852ac6cc5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe6dbfdaa4aaed35ae46b7e36, - limb1: 0x954a32448a2c26964f83e2ff, - limb2: 0x23fe11d86de21bf3, + limb0: 0x460e3211aa99bc794f5fdd8f, + limb1: 0x54582431c73e3c151adfb986, + limb2: 0x15ae9ac9c9576199, limb3: 0x0 }, r0a1: u384 { - limb0: 0x390ec78bb0c63fea5a5112ca, - limb1: 0x5eaba420296488bd9ad78ba4, - limb2: 0x179a2336d20f9552, + limb0: 0xd5d6fbee18410bd43eae83c8, + limb1: 0x478589c488675cc81752c76e, + limb2: 0x15f4a8b20aa637ae, limb3: 0x0 }, r1a0: u384 { - limb0: 0x451d421ca57949d9274eaee9, - limb1: 0xd85aee99f3f7b33bdddf1b37, - limb2: 0x1b83c0b80546357d, + limb0: 0xfdc5c8f39c0b4f52a7db2fc1, + limb1: 0x616dd141f71dac5b64bd3acf, + limb2: 0x23e7f351c745917, limb3: 0x0 }, r1a1: u384 { - limb0: 0x94c9276300f21460bd558c41, - limb1: 0x89efceec3bb694f4c41487d3, - limb2: 0x44375dd912e436b, + limb0: 0x5d9cc1c3eb7bd5a3ff890948, + limb1: 0xc692847a46f936749efb869, + limb2: 0x6a5c2852ac6cc5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x90c98d8d59246f7ac71cbc7, - limb1: 0x603dd0e0dd09fb8ad13dbbb, - limb2: 0x1d068d315771a3c1, + limb0: 0x99ddd0702091afcff0d3b821, + limb1: 0xf87eef8718041793d46c6d1a, + limb2: 0x1429e0a900cd527f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2bb3f34aa59b0e052ec56b80, - limb1: 0xb239e8dca49685c638327d9e, - limb2: 0x11e46c1f8395f739, + limb0: 0x68b86e5adfb73603d84ac24b, + limb1: 0xf229dde45d002b5fd40a7b1, + limb2: 0x1e620a9ec95372b0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2f114895453b5cf23b04678c, - limb1: 0x99cdbda7fef0644b67d48e85, - limb2: 0x6d8bc66cf89ee21, + limb0: 0x831f95d9853673c549a27fef, + limb1: 0x6db62eee8e610b7173d6a675, + limb2: 0x18ceadc2f459e5aa, limb3: 0x0 }, r1a1: u384 { - limb0: 0x903c6ead9a344fceaab2dd24, - limb1: 0x97063cfc1096d628d7979e2c, - limb2: 0x49f8c496be2ccd4, + limb0: 0x4f1ee7eba548df11e5ce70ca, + limb1: 0x9894aeab82b38230ef79f0d9, + limb2: 0xf1f1e0cd1daf9e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x90c98d8d59246f7ac71cbc7, - limb1: 0x603dd0e0dd09fb8ad13dbbb, - limb2: 0x1d068d315771a3c1, + limb0: 0x99ddd0702091afcff0d3b821, + limb1: 0xf87eef8718041793d46c6d1a, + limb2: 0x1429e0a900cd527f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2bb3f34aa59b0e052ec56b80, - limb1: 0xb239e8dca49685c638327d9e, - limb2: 0x11e46c1f8395f739, + limb0: 0x68b86e5adfb73603d84ac24b, + limb1: 0xf229dde45d002b5fd40a7b1, + limb2: 0x1e620a9ec95372b0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2f114895453b5cf23b04678c, - limb1: 0x99cdbda7fef0644b67d48e85, - limb2: 0x6d8bc66cf89ee21, + limb0: 0x831f95d9853673c549a27fef, + limb1: 0x6db62eee8e610b7173d6a675, + limb2: 0x18ceadc2f459e5aa, limb3: 0x0 }, r1a1: u384 { - limb0: 0x903c6ead9a344fceaab2dd24, - limb1: 0x97063cfc1096d628d7979e2c, - limb2: 0x49f8c496be2ccd4, + limb0: 0x4f1ee7eba548df11e5ce70ca, + limb1: 0x9894aeab82b38230ef79f0d9, + limb2: 0xf1f1e0cd1daf9e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3778e71e52e9cd8a2efaae30, - limb1: 0x1510f4be21ae0d4ce4e9c407, - limb2: 0x87f2c39614ed514, + limb0: 0xd1a2b3f306671de65eb29e2b, + limb1: 0x1c7d417ea195fb8e441e04cb, + limb2: 0x2c08ce89d6d21b39, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9425b553c85be9f8eab4827e, - limb1: 0xd75d6f1a6013f310d81e5f6e, - limb2: 0x188c2e53470ad6dc, + limb0: 0xf80c8ae4833788be20f22af8, + limb1: 0x37895f28bd308b9c116a05ed, + limb2: 0xb136c47ae7a271c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd6715a5f7fb9d3f64160e303, - limb1: 0xfb0e7cb89f7e8c3908e859f9, - limb2: 0x84f3df13ca3d149, + limb0: 0xa14fab74f10da40a043dd11d, + limb1: 0xe84748019afc78dfe767cebf, + limb2: 0x19d4480389926bf6, limb3: 0x0 }, r1a1: u384 { - limb0: 0xea46b6a8dbd35d5c7098c283, - limb1: 0xff4f98d6447bac1d056ea3b3, - limb2: 0xd6d18364b06a02c, + limb0: 0x50ee3d6f986248ff448fabb, + limb1: 0xb934e65ac0eedfd751fb5614, + limb2: 0x104f990bd1da0117, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3778e71e52e9cd8a2efaae30, - limb1: 0x1510f4be21ae0d4ce4e9c407, - limb2: 0x87f2c39614ed514, + limb0: 0xd1a2b3f306671de65eb29e2b, + limb1: 0x1c7d417ea195fb8e441e04cb, + limb2: 0x2c08ce89d6d21b39, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9425b553c85be9f8eab4827e, - limb1: 0xd75d6f1a6013f310d81e5f6e, - limb2: 0x188c2e53470ad6dc, + limb0: 0xf80c8ae4833788be20f22af8, + limb1: 0x37895f28bd308b9c116a05ed, + limb2: 0xb136c47ae7a271c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd6715a5f7fb9d3f64160e303, - limb1: 0xfb0e7cb89f7e8c3908e859f9, - limb2: 0x84f3df13ca3d149, + limb0: 0xa14fab74f10da40a043dd11d, + limb1: 0xe84748019afc78dfe767cebf, + limb2: 0x19d4480389926bf6, limb3: 0x0 }, r1a1: u384 { - limb0: 0xea46b6a8dbd35d5c7098c283, - limb1: 0xff4f98d6447bac1d056ea3b3, - limb2: 0xd6d18364b06a02c, + limb0: 0x50ee3d6f986248ff448fabb, + limb1: 0xb934e65ac0eedfd751fb5614, + limb2: 0x104f990bd1da0117, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6f6d3e211d26957a67f263c, - limb1: 0x8da5874752e96d222d666c7e, - limb2: 0x266336ff63f6cae, + limb0: 0xeaf735b8bf1d911bc56cc40b, + limb1: 0x9a3fe0dd31d5266723988e32, + limb2: 0x257073a4684b4fe, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb3b8c3099016c6a6814524b4, - limb1: 0x4b7c12934d9309f8cb6fe11, - limb2: 0x24a297917e6d2286, + limb0: 0x88c0abd96c17368de84059dc, + limb1: 0x1a825400a54f70c64b0e775f, + limb2: 0x2f5dae6ed8671c64, limb3: 0x0 }, r1a0: u384 { - limb0: 0x29f2516e3c81dc23beb0b4a5, - limb1: 0x66af1f7514ccca035bf4bd08, - limb2: 0x1c93fbb41c5a080f, + limb0: 0xb65eb111126cc7ba7d2d8f98, + limb1: 0x2f0ceb91cbb3f75a6c4b371d, + limb2: 0xc3aa7551c175d9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1d9a69028cdcd85247c47085, - limb1: 0xca54eb95e7fb935d08e1e49, - limb2: 0x25c558909e8ce210, + limb0: 0x32a9ec8cb160fbb3265dbfc7, + limb1: 0xc0cbc00da778bfaa940eb8dc, + limb2: 0x2c148d5757e9493f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x6f6d3e211d26957a67f263c, - limb1: 0x8da5874752e96d222d666c7e, - limb2: 0x266336ff63f6cae, + limb0: 0xeaf735b8bf1d911bc56cc40b, + limb1: 0x9a3fe0dd31d5266723988e32, + limb2: 0x257073a4684b4fe, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb3b8c3099016c6a6814524b4, - limb1: 0x4b7c12934d9309f8cb6fe11, - limb2: 0x24a297917e6d2286, + limb0: 0x88c0abd96c17368de84059dc, + limb1: 0x1a825400a54f70c64b0e775f, + limb2: 0x2f5dae6ed8671c64, limb3: 0x0 }, r1a0: u384 { - limb0: 0x29f2516e3c81dc23beb0b4a5, - limb1: 0x66af1f7514ccca035bf4bd08, - limb2: 0x1c93fbb41c5a080f, + limb0: 0xb65eb111126cc7ba7d2d8f98, + limb1: 0x2f0ceb91cbb3f75a6c4b371d, + limb2: 0xc3aa7551c175d9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1d9a69028cdcd85247c47085, - limb1: 0xca54eb95e7fb935d08e1e49, - limb2: 0x25c558909e8ce210, + limb0: 0x32a9ec8cb160fbb3265dbfc7, + limb1: 0xc0cbc00da778bfaa940eb8dc, + limb2: 0x2c148d5757e9493f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa2877a17d6822fdbec0a419a, - limb1: 0xff617440635bbeae917acf03, - limb2: 0x302aa8c0c25edf9c, + limb0: 0x8e664fa05e7f5ede7cfb02fb, + limb1: 0x62dfc131c91e4fc2b6da22ae, + limb2: 0x1ecdd489315918aa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa0509fbe6fedb1a1d6bc0fa0, - limb1: 0xb6f674c844db3046d0228a67, - limb2: 0x275d1093fe789296, + limb0: 0x6614d951eeca327821c19fd5, + limb1: 0xe8b5ce5a58672ab928a25112, + limb2: 0x1170ab171aa3ff6e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x252b1469a10bf6c0e8441f2e, - limb1: 0xe3f275f7dc0d10062fa24067, - limb2: 0x5938d22b9b86d1f, + limb0: 0x818c3365e585a39c412a247f, + limb1: 0xf68f77ea4401cb35fe567a44, + limb2: 0x873832857ddcf10, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfb5f636c62c36f78c5062f30, - limb1: 0x150a99ab14007914780e49f1, - limb2: 0x9e0bccb105b14f4, + limb0: 0x18efe1f8384648ac5d5a82ed, + limb1: 0x79acf0faee8d4b753a9bcff0, + limb2: 0x905c021efd6c69e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa2877a17d6822fdbec0a419a, - limb1: 0xff617440635bbeae917acf03, - limb2: 0x302aa8c0c25edf9c, + limb0: 0x8e664fa05e7f5ede7cfb02fb, + limb1: 0x62dfc131c91e4fc2b6da22ae, + limb2: 0x1ecdd489315918aa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa0509fbe6fedb1a1d6bc0fa0, - limb1: 0xb6f674c844db3046d0228a67, - limb2: 0x275d1093fe789296, + limb0: 0x6614d951eeca327821c19fd5, + limb1: 0xe8b5ce5a58672ab928a25112, + limb2: 0x1170ab171aa3ff6e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x252b1469a10bf6c0e8441f2e, - limb1: 0xe3f275f7dc0d10062fa24067, - limb2: 0x5938d22b9b86d1f, + limb0: 0x818c3365e585a39c412a247f, + limb1: 0xf68f77ea4401cb35fe567a44, + limb2: 0x873832857ddcf10, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfb5f636c62c36f78c5062f30, - limb1: 0x150a99ab14007914780e49f1, - limb2: 0x9e0bccb105b14f4, + limb0: 0x18efe1f8384648ac5d5a82ed, + limb1: 0x79acf0faee8d4b753a9bcff0, + limb2: 0x905c021efd6c69e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc5eaebad6bd5beb92e09aade, - limb1: 0xcbd48c7eb96beac635eddee1, - limb2: 0x6b94aae5ea30073, + limb0: 0xa23e10fe018708686f7ab6ea, + limb1: 0xf4de9163e7f050d497fffc3b, + limb2: 0x16364013c82cc163, limb3: 0x0 }, r0a1: u384 { - limb0: 0x882af1093bd174803a58f378, - limb1: 0x9ec588e092fc5b155ebeec2e, - limb2: 0x1ca1957381eeeaf6, + limb0: 0xa7809edeeff03df4f2f72db, + limb1: 0x9f6f6a8abd601eb21ed8c5cc, + limb2: 0x1f547bcdf1f953b5, limb3: 0x0 }, r1a0: u384 { - limb0: 0x85f75492a545f601ebdaeca3, - limb1: 0xb76104e8575174401e8c88d3, - limb2: 0x2f386789cd7045e0, + limb0: 0xb967dfd1953d807eaf5f0b1b, + limb1: 0xac664dd102452fe545900abe, + limb2: 0x1077bbed7ecdeaae, limb3: 0x0 }, r1a1: u384 { - limb0: 0x21695ebadab2d91e4fdb6459, - limb1: 0x76f7be32767094c83713ad27, - limb2: 0x11f63fe7a6d180b6, + limb0: 0xb384ceb444ccf19e4370e186, + limb1: 0xc65a12148e38c9afb80d7ace, + limb2: 0x285df3d095d265a0, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbff947921ed15906d7d1a15d, - limb1: 0x801c1b9c79563f2e5bce21e1, - limb2: 0x956f2ac3e4fe88a, + limb0: 0x690996d0b646eaf407bf6f54, + limb1: 0x26f1d511ca7854b55277f654, + limb2: 0x27a3422f18ad70fa, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5b2798f11186aa7db5373cdd, - limb1: 0xa5023b2f0c8bab4ec100bf18, - limb2: 0x13a0cace49d5eade, + limb0: 0x6efeb9e54412b96a8622b83, + limb1: 0x57fb282608c3ca52ed9f44d8, + limb2: 0x28dd55967621f290, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9b0527939d6c45e657273a85, - limb1: 0x76cb75e8dc534ecd7e917521, - limb2: 0x12e40c7aed42af34, + limb0: 0x39d3a134532eb4f59722fcc1, + limb1: 0xc06af27745d654eb6ed8de1a, + limb2: 0xdbd4dd1723b710d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x77da98dd73c9603932b79af4, - limb1: 0xfaac3a02aea7867b5226fa70, - limb2: 0x8e2f40461279814, + limb0: 0xde486b231ceb964717e5d1c6, + limb1: 0xa1a396599ef4790a3455ad46, + limb2: 0x13fe27a46569be54, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc5eaebad6bd5beb92e09aade, - limb1: 0xcbd48c7eb96beac635eddee1, - limb2: 0x6b94aae5ea30073, + limb0: 0xa23e10fe018708686f7ab6ea, + limb1: 0xf4de9163e7f050d497fffc3b, + limb2: 0x16364013c82cc163, limb3: 0x0 }, r0a1: u384 { - limb0: 0x882af1093bd174803a58f378, - limb1: 0x9ec588e092fc5b155ebeec2e, - limb2: 0x1ca1957381eeeaf6, + limb0: 0xa7809edeeff03df4f2f72db, + limb1: 0x9f6f6a8abd601eb21ed8c5cc, + limb2: 0x1f547bcdf1f953b5, limb3: 0x0 }, r1a0: u384 { - limb0: 0x85f75492a545f601ebdaeca3, - limb1: 0xb76104e8575174401e8c88d3, - limb2: 0x2f386789cd7045e0, + limb0: 0xb967dfd1953d807eaf5f0b1b, + limb1: 0xac664dd102452fe545900abe, + limb2: 0x1077bbed7ecdeaae, limb3: 0x0 }, r1a1: u384 { - limb0: 0x21695ebadab2d91e4fdb6459, - limb1: 0x76f7be32767094c83713ad27, - limb2: 0x11f63fe7a6d180b6, + limb0: 0xb384ceb444ccf19e4370e186, + limb1: 0xc65a12148e38c9afb80d7ace, + limb2: 0x285df3d095d265a0, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbff947921ed15906d7d1a15d, - limb1: 0x801c1b9c79563f2e5bce21e1, - limb2: 0x956f2ac3e4fe88a, + limb0: 0x690996d0b646eaf407bf6f54, + limb1: 0x26f1d511ca7854b55277f654, + limb2: 0x27a3422f18ad70fa, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5b2798f11186aa7db5373cdd, - limb1: 0xa5023b2f0c8bab4ec100bf18, - limb2: 0x13a0cace49d5eade, + limb0: 0x6efeb9e54412b96a8622b83, + limb1: 0x57fb282608c3ca52ed9f44d8, + limb2: 0x28dd55967621f290, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9b0527939d6c45e657273a85, - limb1: 0x76cb75e8dc534ecd7e917521, - limb2: 0x12e40c7aed42af34, + limb0: 0x39d3a134532eb4f59722fcc1, + limb1: 0xc06af27745d654eb6ed8de1a, + limb2: 0xdbd4dd1723b710d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x77da98dd73c9603932b79af4, - limb1: 0xfaac3a02aea7867b5226fa70, - limb2: 0x8e2f40461279814, + limb0: 0xde486b231ceb964717e5d1c6, + limb1: 0xa1a396599ef4790a3455ad46, + limb2: 0x13fe27a46569be54, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xac907bc1f092e5e0913e845c, - limb1: 0x5964ee4cf6c9a38642dd0517, - limb2: 0x1719e7b29682420d, + limb0: 0xddea045cd850573be3504682, + limb1: 0x6f8e8ae64d4947a018d5f181, + limb2: 0x271787d2abc68be7, limb3: 0x0 }, r0a1: u384 { - limb0: 0x74d7d423222f8b95733071c5, - limb1: 0x86f3c3861a5f4d9c59281db1, - limb2: 0x2e4ed8b13095cb38, + limb0: 0x7b5f6844ddf95699c2a00029, + limb1: 0xa34d6ad24d8abd8bc8253f78, + limb2: 0x2f92b8df6f318466, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4967b22d6ffa060c3d0f2c5f, - limb1: 0x48dc68663059b322a3bdeaa4, - limb2: 0x166e533bd057aeaf, + limb0: 0xcd4474d3da10996bf06e7404, + limb1: 0x544adc4656c5f0d168c3e1ba, + limb2: 0x2ca2cb8dee591a68, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcdd096c0af346e40e770fa2b, - limb1: 0x6a8d2b8bc4369ae60bcd1a63, - limb2: 0x2fd98e44a782d9d9, + limb0: 0x70e507d2478cbd16a391a341, + limb1: 0x7cb8c9e8911e0f49a7c5e5bd, + limb2: 0x2a2b00b9c7889871, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xac907bc1f092e5e0913e845c, - limb1: 0x5964ee4cf6c9a38642dd0517, - limb2: 0x1719e7b29682420d, + limb0: 0xddea045cd850573be3504682, + limb1: 0x6f8e8ae64d4947a018d5f181, + limb2: 0x271787d2abc68be7, limb3: 0x0 }, r0a1: u384 { - limb0: 0x74d7d423222f8b95733071c5, - limb1: 0x86f3c3861a5f4d9c59281db1, - limb2: 0x2e4ed8b13095cb38, + limb0: 0x7b5f6844ddf95699c2a00029, + limb1: 0xa34d6ad24d8abd8bc8253f78, + limb2: 0x2f92b8df6f318466, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4967b22d6ffa060c3d0f2c5f, - limb1: 0x48dc68663059b322a3bdeaa4, - limb2: 0x166e533bd057aeaf, + limb0: 0xcd4474d3da10996bf06e7404, + limb1: 0x544adc4656c5f0d168c3e1ba, + limb2: 0x2ca2cb8dee591a68, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcdd096c0af346e40e770fa2b, - limb1: 0x6a8d2b8bc4369ae60bcd1a63, - limb2: 0x2fd98e44a782d9d9, + limb0: 0x70e507d2478cbd16a391a341, + limb1: 0x7cb8c9e8911e0f49a7c5e5bd, + limb2: 0x2a2b00b9c7889871, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xcae2854ff6a3816300716e11, - limb1: 0x24542ac4d609ab52f57a1cf6, - limb2: 0x130bee99db1c1a6, + limb0: 0xe3611bbe524faee0334405bd, + limb1: 0xcb0690d6c9a15740156f41d, + limb2: 0x1e8d43baecc3fd68, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a097fcb199569eb2020a518, - limb1: 0xc59e26079797276de74d2710, - limb2: 0x205de761540e71f0, + limb0: 0xea561cdabd28d67c9dfcd3, + limb1: 0x837c6f69d4fc9596ca6a99bf, + limb2: 0x1738826fcf15bbe8, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaa1ad54be641d1006740583, - limb1: 0x3b2a9d3fc0122931ae274736, - limb2: 0xbe53b90a6b0a84e, + limb0: 0x91810cd611b2084ace3306, + limb1: 0x4eb16b6f8a592fbe87adf69b, + limb2: 0x19a6bdbc72a66dae, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd74fcd1e68f4e37eb864c664, - limb1: 0x148c5cb80d01f6a428be16e8, - limb2: 0x12f83a1b869c2d94, + limb0: 0x8681686d7329bde083f6258a, + limb1: 0x4eb81c6aecd39e66e198d4a4, + limb2: 0x255f89e45f518198, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xcae2854ff6a3816300716e11, - limb1: 0x24542ac4d609ab52f57a1cf6, - limb2: 0x130bee99db1c1a6, + limb0: 0xe3611bbe524faee0334405bd, + limb1: 0xcb0690d6c9a15740156f41d, + limb2: 0x1e8d43baecc3fd68, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a097fcb199569eb2020a518, - limb1: 0xc59e26079797276de74d2710, - limb2: 0x205de761540e71f0, + limb0: 0xea561cdabd28d67c9dfcd3, + limb1: 0x837c6f69d4fc9596ca6a99bf, + limb2: 0x1738826fcf15bbe8, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaa1ad54be641d1006740583, - limb1: 0x3b2a9d3fc0122931ae274736, - limb2: 0xbe53b90a6b0a84e, + limb0: 0x91810cd611b2084ace3306, + limb1: 0x4eb16b6f8a592fbe87adf69b, + limb2: 0x19a6bdbc72a66dae, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd74fcd1e68f4e37eb864c664, - limb1: 0x148c5cb80d01f6a428be16e8, - limb2: 0x12f83a1b869c2d94, + limb0: 0x8681686d7329bde083f6258a, + limb1: 0x4eb81c6aecd39e66e198d4a4, + limb2: 0x255f89e45f518198, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc45d014325b07ba0dd2d4f10, - limb1: 0x361ef3f040192c17167b900c, - limb2: 0xf09fdc89e100ba7, + limb0: 0x3699a8d7719a7c5791e710e6, + limb1: 0xb86da2c6b71d4b7ff35349a5, + limb2: 0x2d731aaaa08cc2ac, limb3: 0x0 }, r0a1: u384 { - limb0: 0x19de05e48711d6d787de58a5, - limb1: 0x52290b2ee0a6dae953c249cf, - limb2: 0xf136a05d822f41d, + limb0: 0x6823a24c85c56011d96453f4, + limb1: 0xcf08d4b3bcadbc2784905e90, + limb2: 0x908667b566a1c24, limb3: 0x0 }, r1a0: u384 { - limb0: 0x17b39f9e05d9816d69d3a613, - limb1: 0x643e9006b7b05faa90e6a8, - limb2: 0x20e7d1e6a4c0547c, + limb0: 0x7a5718fd0cfd5d7b61fa2d1d, + limb1: 0xf5dc8aded3909da75f25b861, + limb2: 0x5ed96e9d996fd7a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2fee0ea45053ae644c4e684f, - limb1: 0xbb2e7afad484141b0be42479, - limb2: 0x187df546a9ccfb69, + limb0: 0xf3b844b7d8c1ba8cf1f735b9, + limb1: 0xa97b3393f50b3ce1c963d86f, + limb2: 0x3e99ba8a608e244, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xada5bca8b46adc829ca20edf, - limb1: 0xa9cc28a9116efbf02609e3f2, - limb2: 0xaedc7dd73b536f3, + limb0: 0xf75f20209d792946d3520d98, + limb1: 0x8ddce9725b9767fe189dbf96, + limb2: 0x1eb3d21c45a9133b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xab9510ead48ad195261ddc88, - limb1: 0xc202a7ba9dfce6d86664504e, - limb2: 0x2ce423186cc9b5a9, + limb0: 0x521a418f35215e026ef54b1e, + limb1: 0x1d1a380ad7ea05086ac1e991, + limb2: 0x1aa0f18109eb9c3d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8f2b148f9ab7585ea1a6c347, - limb1: 0x508884251415af912a5d0a42, - limb2: 0x1dbbf26d101af06d, + limb0: 0x92b2eda543e4aec9e273f78, + limb1: 0x9bfe94e3c2b72c83181f495, + limb2: 0x2c37b79fa20fb6d2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x68b9f7cab6f91619604f8061, - limb1: 0xd94ab22c8f954516f2d2de81, - limb2: 0x16aa4a653b525fb1, + limb0: 0x20d1220edb200d9fe811001e, + limb1: 0xc278de7134c643d286550621, + limb2: 0x270ad4d9150b3b92, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc45d014325b07ba0dd2d4f10, - limb1: 0x361ef3f040192c17167b900c, - limb2: 0xf09fdc89e100ba7, + limb0: 0x3699a8d7719a7c5791e710e6, + limb1: 0xb86da2c6b71d4b7ff35349a5, + limb2: 0x2d731aaaa08cc2ac, limb3: 0x0 }, r0a1: u384 { - limb0: 0x19de05e48711d6d787de58a5, - limb1: 0x52290b2ee0a6dae953c249cf, - limb2: 0xf136a05d822f41d, + limb0: 0x6823a24c85c56011d96453f4, + limb1: 0xcf08d4b3bcadbc2784905e90, + limb2: 0x908667b566a1c24, limb3: 0x0 }, r1a0: u384 { - limb0: 0x17b39f9e05d9816d69d3a613, - limb1: 0x643e9006b7b05faa90e6a8, - limb2: 0x20e7d1e6a4c0547c, + limb0: 0x7a5718fd0cfd5d7b61fa2d1d, + limb1: 0xf5dc8aded3909da75f25b861, + limb2: 0x5ed96e9d996fd7a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2fee0ea45053ae644c4e684f, - limb1: 0xbb2e7afad484141b0be42479, - limb2: 0x187df546a9ccfb69, + limb0: 0xf3b844b7d8c1ba8cf1f735b9, + limb1: 0xa97b3393f50b3ce1c963d86f, + limb2: 0x3e99ba8a608e244, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xada5bca8b46adc829ca20edf, - limb1: 0xa9cc28a9116efbf02609e3f2, - limb2: 0xaedc7dd73b536f3, + limb0: 0xf75f20209d792946d3520d98, + limb1: 0x8ddce9725b9767fe189dbf96, + limb2: 0x1eb3d21c45a9133b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xab9510ead48ad195261ddc88, - limb1: 0xc202a7ba9dfce6d86664504e, - limb2: 0x2ce423186cc9b5a9, + limb0: 0x521a418f35215e026ef54b1e, + limb1: 0x1d1a380ad7ea05086ac1e991, + limb2: 0x1aa0f18109eb9c3d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8f2b148f9ab7585ea1a6c347, - limb1: 0x508884251415af912a5d0a42, - limb2: 0x1dbbf26d101af06d, + limb0: 0x92b2eda543e4aec9e273f78, + limb1: 0x9bfe94e3c2b72c83181f495, + limb2: 0x2c37b79fa20fb6d2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x68b9f7cab6f91619604f8061, - limb1: 0xd94ab22c8f954516f2d2de81, - limb2: 0x16aa4a653b525fb1, + limb0: 0x20d1220edb200d9fe811001e, + limb1: 0xc278de7134c643d286550621, + limb2: 0x270ad4d9150b3b92, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc4a85cff6912d5bfd21136b3, - limb1: 0x34488d83eff390d6a141392c, - limb2: 0xdd68be1560fdaae, + limb0: 0x16431de82060a9426f311690, + limb1: 0x6d67abfaa014b56eb5de65f1, + limb2: 0x7f0a14cb34687f4, limb3: 0x0 }, r0a1: u384 { - limb0: 0x25abfb1fa590f9ccb71b8e0, - limb1: 0x43c63f304c5602ef9de96df6, - limb2: 0x21e65c606ce32d5a, + limb0: 0xe9b6977a1eccf78d65775390, + limb1: 0x66209f8852e92397c5582a6a, + limb2: 0x223ebb9296dd0c85, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6e4626b5e644b7a440e1b381, - limb1: 0xa29ef58cc4acec20c08690c, - limb2: 0x1eca054ddf87b2a4, + limb0: 0x831fd9c5f80d5697211bcc14, + limb1: 0x8a27c6866e5836aad245b82b, + limb2: 0x7898f014b8b2a3a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc220eeaf9d6200717abc6724, - limb1: 0x702fffe80bce126803560a40, - limb2: 0x2e0f90625bd64073, + limb0: 0x96062b42f8d5d1793782192a, + limb1: 0x1f4a0382abc98e7b3d0ac871, + limb2: 0xdedd45424206f73, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc4a85cff6912d5bfd21136b3, - limb1: 0x34488d83eff390d6a141392c, - limb2: 0xdd68be1560fdaae, + limb0: 0x16431de82060a9426f311690, + limb1: 0x6d67abfaa014b56eb5de65f1, + limb2: 0x7f0a14cb34687f4, limb3: 0x0 }, r0a1: u384 { - limb0: 0x25abfb1fa590f9ccb71b8e0, - limb1: 0x43c63f304c5602ef9de96df6, - limb2: 0x21e65c606ce32d5a, + limb0: 0xe9b6977a1eccf78d65775390, + limb1: 0x66209f8852e92397c5582a6a, + limb2: 0x223ebb9296dd0c85, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6e4626b5e644b7a440e1b381, - limb1: 0xa29ef58cc4acec20c08690c, - limb2: 0x1eca054ddf87b2a4, + limb0: 0x831fd9c5f80d5697211bcc14, + limb1: 0x8a27c6866e5836aad245b82b, + limb2: 0x7898f014b8b2a3a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc220eeaf9d6200717abc6724, - limb1: 0x702fffe80bce126803560a40, - limb2: 0x2e0f90625bd64073, + limb0: 0x96062b42f8d5d1793782192a, + limb1: 0x1f4a0382abc98e7b3d0ac871, + limb2: 0xdedd45424206f73, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x59f254cb97c8a519e0461a6, - limb1: 0xb4542e9c6bb21b7d9648e1d4, - limb2: 0x22dc33964ee2947b, + limb0: 0xa262230612ad62c6c245b370, + limb1: 0xe2ff7e2dbdc173d82c280d05, + limb2: 0xd16665430b03529, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5e83c2931befc562e4c93cee, - limb1: 0x675b3e97b43eba3f75101885, - limb2: 0x11d20ed3321c48f, + limb0: 0x69f0beaf1d31961f29cc516b, + limb1: 0x25756321b7db9f3005f8dfc6, + limb2: 0x1c61f26ac52d0e0b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x11e5d20e996d12471ceb3541, - limb1: 0x229064d01b397b4af809e840, - limb2: 0x21834a1301ac5984, + limb0: 0x7d3430d8e3c5e5ae047c0145, + limb1: 0xbd72ec637a860e7a4eb060bb, + limb2: 0x2c9b6965deebcd71, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbe43cdde5117c697882c850f, - limb1: 0x1bc4151048af9bbd27f7e82a, - limb2: 0x2501d9aca420d21e, + limb0: 0xaf91ce3ce5ca1b629a1f426e, + limb1: 0x6b80651ae4db3970e5620a3d, + limb2: 0x27bb47c88e2b4352, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x134b53d15a50fc2bed6d2f3d, - limb1: 0xd4f8c40bf294c7e18346462d, - limb2: 0x1aad2161b8c9e68e, + limb0: 0xf269a5643d9a78ab572be28b, + limb1: 0xb378d1081a07c70d18ade4b5, + limb2: 0x386a1add22a7ba0, limb3: 0x0 }, r0a1: u384 { - limb0: 0x88262244e0b154b0ca5b5d9a, - limb1: 0xd288b3c01ba5c293f8c800f8, - limb2: 0xf0ac20574e1aede, + limb0: 0x651d236f73b5e8cdd67777b, + limb1: 0x65b9035b0a58d30a8c8dafa1, + limb2: 0x6a9775aa2d4b37d, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe5373b9b81964332b6771878, - limb1: 0x80e60988bd2e9de7f4395ae6, - limb2: 0x2e916f6959fa27f0, + limb0: 0x7bc77821c842ecb6747cd524, + limb1: 0x60ea506003723c9c92f5f656, + limb2: 0x7161213e4971f52, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3f67c739560ef94c04b58369, - limb1: 0x1ee07a68fb111967cd5b15b8, - limb2: 0x1b7e48fae034571, + limb0: 0xef50c1e4d1bdad64fef92647, + limb1: 0xf6f656aca3326720b92bd304, + limb2: 0x13329fa4c21daa56, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x59f254cb97c8a519e0461a6, - limb1: 0xb4542e9c6bb21b7d9648e1d4, - limb2: 0x22dc33964ee2947b, + limb0: 0xa262230612ad62c6c245b370, + limb1: 0xe2ff7e2dbdc173d82c280d05, + limb2: 0xd16665430b03529, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5e83c2931befc562e4c93cee, - limb1: 0x675b3e97b43eba3f75101885, - limb2: 0x11d20ed3321c48f, + limb0: 0x69f0beaf1d31961f29cc516b, + limb1: 0x25756321b7db9f3005f8dfc6, + limb2: 0x1c61f26ac52d0e0b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x11e5d20e996d12471ceb3541, - limb1: 0x229064d01b397b4af809e840, - limb2: 0x21834a1301ac5984, + limb0: 0x7d3430d8e3c5e5ae047c0145, + limb1: 0xbd72ec637a860e7a4eb060bb, + limb2: 0x2c9b6965deebcd71, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbe43cdde5117c697882c850f, - limb1: 0x1bc4151048af9bbd27f7e82a, - limb2: 0x2501d9aca420d21e, + limb0: 0xaf91ce3ce5ca1b629a1f426e, + limb1: 0x6b80651ae4db3970e5620a3d, + limb2: 0x27bb47c88e2b4352, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x134b53d15a50fc2bed6d2f3d, - limb1: 0xd4f8c40bf294c7e18346462d, - limb2: 0x1aad2161b8c9e68e, + limb0: 0xf269a5643d9a78ab572be28b, + limb1: 0xb378d1081a07c70d18ade4b5, + limb2: 0x386a1add22a7ba0, limb3: 0x0 }, r0a1: u384 { - limb0: 0x88262244e0b154b0ca5b5d9a, - limb1: 0xd288b3c01ba5c293f8c800f8, - limb2: 0xf0ac20574e1aede, + limb0: 0x651d236f73b5e8cdd67777b, + limb1: 0x65b9035b0a58d30a8c8dafa1, + limb2: 0x6a9775aa2d4b37d, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe5373b9b81964332b6771878, - limb1: 0x80e60988bd2e9de7f4395ae6, - limb2: 0x2e916f6959fa27f0, + limb0: 0x7bc77821c842ecb6747cd524, + limb1: 0x60ea506003723c9c92f5f656, + limb2: 0x7161213e4971f52, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3f67c739560ef94c04b58369, - limb1: 0x1ee07a68fb111967cd5b15b8, - limb2: 0x1b7e48fae034571, + limb0: 0xef50c1e4d1bdad64fef92647, + limb1: 0xf6f656aca3326720b92bd304, + limb2: 0x13329fa4c21daa56, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x65bb9e7438a232dad6eb7f96, - limb1: 0x5cf05222319fe00305afe0bf, - limb2: 0x1c6d87b3a5aabb43, + limb0: 0x942673ca238487ed3b22fb50, + limb1: 0x5af092ba43a3e297350cd531, + limb2: 0xa573c5226515bdb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb8e845bbd71aa9644432eaa6, - limb1: 0xcdbf988db0903b19b07b9f3, - limb2: 0x107ca76698ca0dcd, + limb0: 0xec40ffc31625cf5f6085e0e6, + limb1: 0x5bfed22374eb50e569737b98, + limb2: 0x3f64ca69238cc1b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ba7979e387e50b016321956, - limb1: 0x2ee41a1e59ccbc1350611d32, - limb2: 0x11a3b7b762eec2c5, + limb0: 0x38f8142cfc226654a770d1de, + limb1: 0x98bf448e2ecd96da10ed251c, + limb2: 0x5abf8922cc23b40, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb3f5edfecf19d6f82799dd03, - limb1: 0xc0d095110dad9ebbefe29784, - limb2: 0x1f63c13501eeeaf5, + limb0: 0x14d013181cfe91c0e6f4ae49, + limb1: 0xdb03fd34d832e093596fcbbe, + limb2: 0x341a5d6876f6e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x65bb9e7438a232dad6eb7f96, - limb1: 0x5cf05222319fe00305afe0bf, - limb2: 0x1c6d87b3a5aabb43, + limb0: 0x942673ca238487ed3b22fb50, + limb1: 0x5af092ba43a3e297350cd531, + limb2: 0xa573c5226515bdb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb8e845bbd71aa9644432eaa6, - limb1: 0xcdbf988db0903b19b07b9f3, - limb2: 0x107ca76698ca0dcd, + limb0: 0xec40ffc31625cf5f6085e0e6, + limb1: 0x5bfed22374eb50e569737b98, + limb2: 0x3f64ca69238cc1b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ba7979e387e50b016321956, - limb1: 0x2ee41a1e59ccbc1350611d32, - limb2: 0x11a3b7b762eec2c5, + limb0: 0x38f8142cfc226654a770d1de, + limb1: 0x98bf448e2ecd96da10ed251c, + limb2: 0x5abf8922cc23b40, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb3f5edfecf19d6f82799dd03, - limb1: 0xc0d095110dad9ebbefe29784, - limb2: 0x1f63c13501eeeaf5, + limb0: 0x14d013181cfe91c0e6f4ae49, + limb1: 0xdb03fd34d832e093596fcbbe, + limb2: 0x341a5d6876f6e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xde29dd2c7147403100fa258c, - limb1: 0xbfc33c64aa2cdfd5f33f638d, - limb2: 0x139edaa5713a8a73, + limb0: 0x194355706d2de344f6574207, + limb1: 0x545ec95c51eabb05bf65881a, + limb2: 0x1f4765278dbda1ef, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8de2a4556c0698bd62bdc91d, - limb1: 0x497ed1dffa7e70b6c15dad0c, - limb2: 0x2cd9650c8add9b02, + limb0: 0x751fa7a73ae1a2b13769c980, + limb1: 0xc42f0c81de0ddb2f10809e8d, + limb2: 0x2a3b5e4ab24358a4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2357739dff7746f02bf5d5cd, - limb1: 0x37396bdbe70cf65e7f7ed43b, - limb2: 0x16571ebe2a0acf51, + limb0: 0x4fd6811ac234145f07b86f81, + limb1: 0xe37e3ba41ae6462d8f35bff, + limb2: 0x5e6fe78e3976bbf, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5df40d02171f3aa50f4f1b23, - limb1: 0x3d504cd9327215bf089595d0, - limb2: 0x2598b49390b4ab86, + limb0: 0x663a3886950b3475ab464ec3, + limb1: 0x3e3c252dd8e9a5c83b975a78, + limb2: 0x2c65dbb4c11eff0f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xde29dd2c7147403100fa258c, - limb1: 0xbfc33c64aa2cdfd5f33f638d, - limb2: 0x139edaa5713a8a73, + limb0: 0x194355706d2de344f6574207, + limb1: 0x545ec95c51eabb05bf65881a, + limb2: 0x1f4765278dbda1ef, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8de2a4556c0698bd62bdc91d, - limb1: 0x497ed1dffa7e70b6c15dad0c, - limb2: 0x2cd9650c8add9b02, + limb0: 0x751fa7a73ae1a2b13769c980, + limb1: 0xc42f0c81de0ddb2f10809e8d, + limb2: 0x2a3b5e4ab24358a4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2357739dff7746f02bf5d5cd, - limb1: 0x37396bdbe70cf65e7f7ed43b, - limb2: 0x16571ebe2a0acf51, + limb0: 0x4fd6811ac234145f07b86f81, + limb1: 0xe37e3ba41ae6462d8f35bff, + limb2: 0x5e6fe78e3976bbf, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5df40d02171f3aa50f4f1b23, - limb1: 0x3d504cd9327215bf089595d0, - limb2: 0x2598b49390b4ab86, + limb0: 0x663a3886950b3475ab464ec3, + limb1: 0x3e3c252dd8e9a5c83b975a78, + limb2: 0x2c65dbb4c11eff0f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4360e486f47a872ae0460f44, - limb1: 0x7bb35bfed6fcfcf8779029e1, - limb2: 0x1390b4c7cb6b52f1, + limb0: 0xc32ecb4dc054beffbd5eb98d, + limb1: 0x4a9fbc133ad8a1e1ab3bb01f, + limb2: 0x2d9e501bd5a1aa52, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa628a0a5b10cbbd6c74c24ee, - limb1: 0x7470f4707a0cc892ebefded7, - limb2: 0x1ff4ca8749a8104e, + limb0: 0x9a007677819d291a4aa98432, + limb1: 0xd13b75d291bb36d436b9298d, + limb2: 0xd3862e541052272, limb3: 0x0 }, r1a0: u384 { - limb0: 0xff60a007ec6c8b1e83574f3d, - limb1: 0xce3526917a6268d71609c0a1, - limb2: 0x3016dc03227dad67, + limb0: 0xd450e799babc7dc723d47a67, + limb1: 0x2e9ed4da52d439343b3274de, + limb2: 0x237d0b40f2ab7905, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3989e237ecb0bc27e6ad5d37, - limb1: 0x91acde41c342e92417210e02, - limb2: 0x2c602bf496b1e2b8, + limb0: 0x286fcfe9ce693b5a42cefe96, + limb1: 0xbca1c4a5ad71e8b42e0897cf, + limb2: 0x2d039891e4f200e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x103a372c78fa5b2a67d01204, - limb1: 0x675f1cbc7aebe1140e8bed2a, - limb2: 0x2532e98456a291c3, + limb0: 0x78edfc2dbca56dcc5d7cc8a0, + limb1: 0x491c6d2deede275b2cc4744e, + limb2: 0x1970ae45616f8af3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc0be03786bd147df08fa1ece, - limb1: 0x7878592e1699337b543a6fa2, - limb2: 0x9e2390310f5b3d7, + limb0: 0x1cb4cb585dd3804e2baf6cf7, + limb1: 0x5c5805c9f8544ed3544f6895, + limb2: 0x2ca58210ed759bb6, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6d973cc33a79ba068e6572ad, - limb1: 0xc2fddbd0c013d321cabfbf43, - limb2: 0x249b679f9a94f336, + limb0: 0xb3269a6904999305051cdc07, + limb1: 0x73c3d2916a72621959cb43e3, + limb2: 0x299a7a173c60a9b1, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe20f26b34d3756b2b9519351, - limb1: 0xde793f45fed2b6ad4576aaf8, - limb2: 0x2cc11b280706670a, + limb0: 0x59f5a5738d210188f88d2a5d, + limb1: 0xe35bc17b34c0ad2c61daacc9, + limb2: 0x2857838cc42ba922, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4360e486f47a872ae0460f44, - limb1: 0x7bb35bfed6fcfcf8779029e1, - limb2: 0x1390b4c7cb6b52f1, + limb0: 0xc32ecb4dc054beffbd5eb98d, + limb1: 0x4a9fbc133ad8a1e1ab3bb01f, + limb2: 0x2d9e501bd5a1aa52, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa628a0a5b10cbbd6c74c24ee, - limb1: 0x7470f4707a0cc892ebefded7, - limb2: 0x1ff4ca8749a8104e, + limb0: 0x9a007677819d291a4aa98432, + limb1: 0xd13b75d291bb36d436b9298d, + limb2: 0xd3862e541052272, limb3: 0x0 }, r1a0: u384 { - limb0: 0xff60a007ec6c8b1e83574f3d, - limb1: 0xce3526917a6268d71609c0a1, - limb2: 0x3016dc03227dad67, + limb0: 0xd450e799babc7dc723d47a67, + limb1: 0x2e9ed4da52d439343b3274de, + limb2: 0x237d0b40f2ab7905, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3989e237ecb0bc27e6ad5d37, - limb1: 0x91acde41c342e92417210e02, - limb2: 0x2c602bf496b1e2b8, + limb0: 0x286fcfe9ce693b5a42cefe96, + limb1: 0xbca1c4a5ad71e8b42e0897cf, + limb2: 0x2d039891e4f200e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x103a372c78fa5b2a67d01204, - limb1: 0x675f1cbc7aebe1140e8bed2a, - limb2: 0x2532e98456a291c3, + limb0: 0x78edfc2dbca56dcc5d7cc8a0, + limb1: 0x491c6d2deede275b2cc4744e, + limb2: 0x1970ae45616f8af3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc0be03786bd147df08fa1ece, - limb1: 0x7878592e1699337b543a6fa2, - limb2: 0x9e2390310f5b3d7, + limb0: 0x1cb4cb585dd3804e2baf6cf7, + limb1: 0x5c5805c9f8544ed3544f6895, + limb2: 0x2ca58210ed759bb6, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6d973cc33a79ba068e6572ad, - limb1: 0xc2fddbd0c013d321cabfbf43, - limb2: 0x249b679f9a94f336, + limb0: 0xb3269a6904999305051cdc07, + limb1: 0x73c3d2916a72621959cb43e3, + limb2: 0x299a7a173c60a9b1, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe20f26b34d3756b2b9519351, - limb1: 0xde793f45fed2b6ad4576aaf8, - limb2: 0x2cc11b280706670a, + limb0: 0x59f5a5738d210188f88d2a5d, + limb1: 0xe35bc17b34c0ad2c61daacc9, + limb2: 0x2857838cc42ba922, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x551986dc96f0443f7ac4ba73, - limb1: 0x78107a0c01ea8e3f9bd2e6fd, - limb2: 0x201da6796dee986f, + limb0: 0xf13d6ebb7ce6b0e75281f86d, + limb1: 0x2ed15d12ad449a4bb8205897, + limb2: 0xbe87d044402d079, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb29fe7d173b13e6ed7b96297, - limb1: 0x77342f3c7dfec27fe1753e85, - limb2: 0x1fa36d6151f8156e, + limb0: 0x3418ed08929079e062551d4b, + limb1: 0x3b05a43949cb7d801559671d, + limb2: 0x117ec96e0a18f77b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcfbc59734fa247fead294d84, - limb1: 0x95cf28f410134c75494cc333, - limb2: 0x2fdd98603896fb30, + limb0: 0x475ebf1630cfef34e3b0a764, + limb1: 0xd63614a61b1fe6d84e9b3e52, + limb2: 0x1a4a61d799f042d7, limb3: 0x0 }, r1a1: u384 { - limb0: 0x225b0b0fef9e6d36d471d78e, - limb1: 0x278c8534902d21f77aef3522, - limb2: 0xe42d7fa7de4d6c8, + limb0: 0xd9908656627f2b20c7094e5e, + limb1: 0xd50f92366687febdc3af4791, + limb2: 0x135219ecc0ef7825, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x551986dc96f0443f7ac4ba73, - limb1: 0x78107a0c01ea8e3f9bd2e6fd, - limb2: 0x201da6796dee986f, + limb0: 0xf13d6ebb7ce6b0e75281f86d, + limb1: 0x2ed15d12ad449a4bb8205897, + limb2: 0xbe87d044402d079, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb29fe7d173b13e6ed7b96297, - limb1: 0x77342f3c7dfec27fe1753e85, - limb2: 0x1fa36d6151f8156e, + limb0: 0x3418ed08929079e062551d4b, + limb1: 0x3b05a43949cb7d801559671d, + limb2: 0x117ec96e0a18f77b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcfbc59734fa247fead294d84, - limb1: 0x95cf28f410134c75494cc333, - limb2: 0x2fdd98603896fb30, + limb0: 0x475ebf1630cfef34e3b0a764, + limb1: 0xd63614a61b1fe6d84e9b3e52, + limb2: 0x1a4a61d799f042d7, limb3: 0x0 }, r1a1: u384 { - limb0: 0x225b0b0fef9e6d36d471d78e, - limb1: 0x278c8534902d21f77aef3522, - limb2: 0xe42d7fa7de4d6c8, + limb0: 0xd9908656627f2b20c7094e5e, + limb1: 0xd50f92366687febdc3af4791, + limb2: 0x135219ecc0ef7825, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd524080ad04473596afdaafb, - limb1: 0x9da4392d65be1f8372c18a53, - limb2: 0xbccb6baf45de67c, + limb0: 0xc0077633d98f7d7c8f185344, + limb1: 0xd3f6143d91493043bc0465b2, + limb2: 0x95faf66d5f5d00, limb3: 0x0 }, r0a1: u384 { - limb0: 0x336813e1fb5e17e81b5b051b, - limb1: 0xe98e855ed4992521f93709a4, - limb2: 0x297b055bd5622a18, + limb0: 0xb11e96a1dd6ae09375616764, + limb1: 0x9d42d33c1099689cc7a79413, + limb2: 0x1c45c4a7b2361ad1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2e761701f878006486dedec1, - limb1: 0x677ff8e5f6b82a95401407f, - limb2: 0x2f5725fecfef8317, + limb0: 0xccc670fbe7abf9f6d9a8c0b7, + limb1: 0x49c72170bd63924663a5c586, + limb2: 0xa7c47438fd05ed4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x839358e9dd8ffc54f27fca9c, - limb1: 0xa4a0948db4162fdf44aee0f6, - limb2: 0x2849739e5c4e2ee3, + limb0: 0xdf8db572ffa98e34fe9bc77, + limb1: 0x57268643b4abe3418a9ee7e, + limb2: 0x3cc35d705856be, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd524080ad04473596afdaafb, - limb1: 0x9da4392d65be1f8372c18a53, - limb2: 0xbccb6baf45de67c, + limb0: 0xc0077633d98f7d7c8f185344, + limb1: 0xd3f6143d91493043bc0465b2, + limb2: 0x95faf66d5f5d00, limb3: 0x0 }, r0a1: u384 { - limb0: 0x336813e1fb5e17e81b5b051b, - limb1: 0xe98e855ed4992521f93709a4, - limb2: 0x297b055bd5622a18, + limb0: 0xb11e96a1dd6ae09375616764, + limb1: 0x9d42d33c1099689cc7a79413, + limb2: 0x1c45c4a7b2361ad1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2e761701f878006486dedec1, - limb1: 0x677ff8e5f6b82a95401407f, - limb2: 0x2f5725fecfef8317, + limb0: 0xccc670fbe7abf9f6d9a8c0b7, + limb1: 0x49c72170bd63924663a5c586, + limb2: 0xa7c47438fd05ed4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x839358e9dd8ffc54f27fca9c, - limb1: 0xa4a0948db4162fdf44aee0f6, - limb2: 0x2849739e5c4e2ee3, + limb0: 0xdf8db572ffa98e34fe9bc77, + limb1: 0x57268643b4abe3418a9ee7e, + limb2: 0x3cc35d705856be, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc9cde220c427e6e795c276ea, - limb1: 0xf16a4bf65aa097b4b2102d3a, - limb2: 0x107f879bc0743525, + limb0: 0x1b10a4608a18fa810199e87, + limb1: 0x85f9ed2600e05defb2b235aa, + limb2: 0x2979fbabcedc901b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5edbca4d3c47278b7e543edc, - limb1: 0xe6280d0a1160bc4062c712a2, - limb2: 0xd65ce18e50f6e9f, + limb0: 0x281f98b422e2fde61a352844, + limb1: 0x986d3bb5381854111623a8c, + limb2: 0x1cc62b5f03fd0a23, limb3: 0x0 }, r1a0: u384 { - limb0: 0x922d89859e41d74f44066e94, - limb1: 0x92d65b7ea0039b0163ab463, - limb2: 0x233cfba3a88b3b44, + limb0: 0x93008b95b66532212209a7c2, + limb1: 0x24071d3ba611252c2fcb7d21, + limb2: 0x248aa8af3aa2b4d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbaceedcb5732d6a04a4a3ba2, - limb1: 0xe586d3e9d7583a9b9956674c, - limb2: 0x1b35c7bee23e7274, + limb0: 0xa34a599aadb53f0dd2e02881, + limb1: 0xd3428dc23fbd1889a866b5bd, + limb2: 0x18989ee632ac50c6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc9cde220c427e6e795c276ea, - limb1: 0xf16a4bf65aa097b4b2102d3a, - limb2: 0x107f879bc0743525, + limb0: 0x1b10a4608a18fa810199e87, + limb1: 0x85f9ed2600e05defb2b235aa, + limb2: 0x2979fbabcedc901b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5edbca4d3c47278b7e543edc, - limb1: 0xe6280d0a1160bc4062c712a2, - limb2: 0xd65ce18e50f6e9f, + limb0: 0x281f98b422e2fde61a352844, + limb1: 0x986d3bb5381854111623a8c, + limb2: 0x1cc62b5f03fd0a23, limb3: 0x0 }, r1a0: u384 { - limb0: 0x922d89859e41d74f44066e94, - limb1: 0x92d65b7ea0039b0163ab463, - limb2: 0x233cfba3a88b3b44, + limb0: 0x93008b95b66532212209a7c2, + limb1: 0x24071d3ba611252c2fcb7d21, + limb2: 0x248aa8af3aa2b4d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbaceedcb5732d6a04a4a3ba2, - limb1: 0xe586d3e9d7583a9b9956674c, - limb2: 0x1b35c7bee23e7274, + limb0: 0xa34a599aadb53f0dd2e02881, + limb1: 0xd3428dc23fbd1889a866b5bd, + limb2: 0x18989ee632ac50c6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7dc2872c3517c1e449fc4122, - limb1: 0x705ab5ca7266a5ffa614625b, - limb2: 0x166c4d11551f6f6d, + limb0: 0xaa635ce26a4c53fb43293e08, + limb1: 0x15d59e06d05cad6de219f0e3, + limb2: 0x13fd657288072d4a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x492f67a4ba40719208859c1b, - limb1: 0x7a676c7fc4295e5aab645973, - limb2: 0x2d03ea35dec3ab5d, + limb0: 0x3a416ce4f2438553f669ea3b, + limb1: 0x63ef398abb57e75023256bb9, + limb2: 0x1a5d9ff40cefbc9a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x529cb1e346af0b40e0e2e6b9, - limb1: 0xe42e697812ceb8a7c51f85b3, - limb2: 0x2b5f25393ba2c781, + limb0: 0x23aafa68695a26eb132103ca, + limb1: 0x571ddbe2ae50c1c1d7461919, + limb2: 0x1dd7e9d6ed8a2b41, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3d2f685444515b3441d54cee, - limb1: 0xed7dcc8e1781c6d4006bba3f, - limb2: 0x26f0fac3db26fe20, + limb0: 0xfabc574926d9b66307638b64, + limb1: 0x16acb1d45d79e6000b247427, + limb2: 0x2f0022fefa3d4b71, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7dc2872c3517c1e449fc4122, - limb1: 0x705ab5ca7266a5ffa614625b, - limb2: 0x166c4d11551f6f6d, + limb0: 0xaa635ce26a4c53fb43293e08, + limb1: 0x15d59e06d05cad6de219f0e3, + limb2: 0x13fd657288072d4a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x492f67a4ba40719208859c1b, - limb1: 0x7a676c7fc4295e5aab645973, - limb2: 0x2d03ea35dec3ab5d, + limb0: 0x3a416ce4f2438553f669ea3b, + limb1: 0x63ef398abb57e75023256bb9, + limb2: 0x1a5d9ff40cefbc9a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x529cb1e346af0b40e0e2e6b9, - limb1: 0xe42e697812ceb8a7c51f85b3, - limb2: 0x2b5f25393ba2c781, + limb0: 0x23aafa68695a26eb132103ca, + limb1: 0x571ddbe2ae50c1c1d7461919, + limb2: 0x1dd7e9d6ed8a2b41, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3d2f685444515b3441d54cee, - limb1: 0xed7dcc8e1781c6d4006bba3f, - limb2: 0x26f0fac3db26fe20, + limb0: 0xfabc574926d9b66307638b64, + limb1: 0x16acb1d45d79e6000b247427, + limb2: 0x2f0022fefa3d4b71, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x1e691060b09334f4d4d11564, - limb1: 0xc2f23d460e32ab29aac9a462, - limb2: 0x1f52946e8ab57b9d, + limb0: 0x3eccc27f3eb4ba9c2f9e69c4, + limb1: 0xc77938764296dcc4c321bba5, + limb2: 0x21d11eac0eece6d3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb8f6cec3d46206bf11579e06, - limb1: 0x6b82224b4c502934276477ce, - limb2: 0x4263847a3546583, + limb0: 0x815e0ea86d7db7094e595101, + limb1: 0xc697f48792ce4f1c59daa70b, + limb2: 0x220427dee9800b75, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3e02aba94130839fdfb531d3, - limb1: 0x89b37e5ce7cd94f86280b704, - limb2: 0x25f502760510099, + limb0: 0xa8cfc8d05147a143ba2e15fa, + limb1: 0x4ac5c00f4fdf5f709b8fbc18, + limb2: 0x14d0c34d901d9aa7, limb3: 0x0 }, r1a1: u384 { - limb0: 0xef21ddf9cebf3491c94329fd, - limb1: 0xb2577ec6fa2817d5e8a2aaad, - limb2: 0x2e0a1cc9617d5d85, + limb0: 0xbb8b013b165809bcdacc2d4f, + limb1: 0x8b70cea27bd285cd7cc3b65e, + limb2: 0x1faf2b3b26280177, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8ccc1f1b7b7c84a2fb81a4d1, - limb1: 0x1fd835bf3d332347a842499, - limb2: 0x105f1e2419d5da43, + limb0: 0x5787d39bd038333ffac4a713, + limb1: 0x28afba19f357ff4cf36284be, + limb2: 0x1097abea92f4be8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xce0594565bc3f6746917fac1, - limb1: 0x10f45021d35f29b40306afa2, - limb2: 0x175b0196bc37d977, + limb0: 0x89d8567283ae0aa5a8e903af, + limb1: 0x24bb62cacaeeb5ab653c606c, + limb2: 0x2975a752881eed63, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3bfc77f3df29fdb7446275fd, - limb1: 0x761a984dcc263e2a7230a42c, - limb2: 0xdc47d8f8fd9a377, + limb0: 0x2bf0f62e45bb9cea083b2fc5, + limb1: 0x1c0cd814f0ddde3bd05ef70d, + limb2: 0x18cdeb1bd8e8ccb, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5310a14e6b20a87bded6741b, - limb1: 0xaf75a4d44565ed067c32308e, - limb2: 0x1745ddfc2f0f2db5, + limb0: 0x654ac1f6c2d1f1764c631ce3, + limb1: 0x5aa33b8260fb8d1b1bd684ee, + limb2: 0x9f6936bc1ea1895, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x1e691060b09334f4d4d11564, - limb1: 0xc2f23d460e32ab29aac9a462, - limb2: 0x1f52946e8ab57b9d, + limb0: 0x3eccc27f3eb4ba9c2f9e69c4, + limb1: 0xc77938764296dcc4c321bba5, + limb2: 0x21d11eac0eece6d3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb8f6cec3d46206bf11579e06, - limb1: 0x6b82224b4c502934276477ce, - limb2: 0x4263847a3546583, + limb0: 0x815e0ea86d7db7094e595101, + limb1: 0xc697f48792ce4f1c59daa70b, + limb2: 0x220427dee9800b75, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3e02aba94130839fdfb531d3, - limb1: 0x89b37e5ce7cd94f86280b704, - limb2: 0x25f502760510099, + limb0: 0xa8cfc8d05147a143ba2e15fa, + limb1: 0x4ac5c00f4fdf5f709b8fbc18, + limb2: 0x14d0c34d901d9aa7, limb3: 0x0 }, r1a1: u384 { - limb0: 0xef21ddf9cebf3491c94329fd, - limb1: 0xb2577ec6fa2817d5e8a2aaad, - limb2: 0x2e0a1cc9617d5d85, + limb0: 0xbb8b013b165809bcdacc2d4f, + limb1: 0x8b70cea27bd285cd7cc3b65e, + limb2: 0x1faf2b3b26280177, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8ccc1f1b7b7c84a2fb81a4d1, - limb1: 0x1fd835bf3d332347a842499, - limb2: 0x105f1e2419d5da43, + limb0: 0x5787d39bd038333ffac4a713, + limb1: 0x28afba19f357ff4cf36284be, + limb2: 0x1097abea92f4be8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xce0594565bc3f6746917fac1, - limb1: 0x10f45021d35f29b40306afa2, - limb2: 0x175b0196bc37d977, + limb0: 0x89d8567283ae0aa5a8e903af, + limb1: 0x24bb62cacaeeb5ab653c606c, + limb2: 0x2975a752881eed63, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3bfc77f3df29fdb7446275fd, - limb1: 0x761a984dcc263e2a7230a42c, - limb2: 0xdc47d8f8fd9a377, + limb0: 0x2bf0f62e45bb9cea083b2fc5, + limb1: 0x1c0cd814f0ddde3bd05ef70d, + limb2: 0x18cdeb1bd8e8ccb, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5310a14e6b20a87bded6741b, - limb1: 0xaf75a4d44565ed067c32308e, - limb2: 0x1745ddfc2f0f2db5, + limb0: 0x654ac1f6c2d1f1764c631ce3, + limb1: 0x5aa33b8260fb8d1b1bd684ee, + limb2: 0x9f6936bc1ea1895, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9002fa9c872aa1591cb2e83c, - limb1: 0x18092dea89807d07c96f5cee, - limb2: 0x5e775cc8d0e2333, + limb0: 0x9b1811c19b69abaf39bb1630, + limb1: 0x7e90619b8fb9e5c323aa484d, + limb2: 0x24f869d3cbd26062, limb3: 0x0 }, r0a1: u384 { - limb0: 0x6e55603f23c1e2f40ecbc3be, - limb1: 0x9ef6bba8f2ca071759eee99a, - limb2: 0x66cf6e10d463eb6, + limb0: 0xd6b2f9e744f11f9017f2216b, + limb1: 0xa34b02195d328779fe5c97ef, + limb2: 0xe4e809577ed925e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x30131216b55fd9bf4d2cbe86, - limb1: 0xbaa5fde208b9fceda4ed5946, - limb2: 0xdbb530576beae47, + limb0: 0xd1625347c366845c38dbabf4, + limb1: 0x2a9d77f8f01f5af82e4f8b03, + limb2: 0x26d2cb185cb54d23, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe09b26e7b2fe48a7f274d02d, - limb1: 0x9e41ae04207fa2eb5f641fed, - limb2: 0x511a273c2863628, + limb0: 0x3ec1b310fec97a5c01339eba, + limb1: 0x4d044eb93e07d41c33e204f3, + limb2: 0x27903f0ec174af79, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9002fa9c872aa1591cb2e83c, - limb1: 0x18092dea89807d07c96f5cee, - limb2: 0x5e775cc8d0e2333, + limb0: 0x9b1811c19b69abaf39bb1630, + limb1: 0x7e90619b8fb9e5c323aa484d, + limb2: 0x24f869d3cbd26062, limb3: 0x0 }, r0a1: u384 { - limb0: 0x6e55603f23c1e2f40ecbc3be, - limb1: 0x9ef6bba8f2ca071759eee99a, - limb2: 0x66cf6e10d463eb6, + limb0: 0xd6b2f9e744f11f9017f2216b, + limb1: 0xa34b02195d328779fe5c97ef, + limb2: 0xe4e809577ed925e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x30131216b55fd9bf4d2cbe86, - limb1: 0xbaa5fde208b9fceda4ed5946, - limb2: 0xdbb530576beae47, + limb0: 0xd1625347c366845c38dbabf4, + limb1: 0x2a9d77f8f01f5af82e4f8b03, + limb2: 0x26d2cb185cb54d23, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe09b26e7b2fe48a7f274d02d, - limb1: 0x9e41ae04207fa2eb5f641fed, - limb2: 0x511a273c2863628, + limb0: 0x3ec1b310fec97a5c01339eba, + limb1: 0x4d044eb93e07d41c33e204f3, + limb2: 0x27903f0ec174af79, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9e446957265af1f6cdcb9e15, - limb1: 0x6c10753b3e38581919c0cc4d, - limb2: 0x3049507b97cd2ae3, + limb0: 0x5889466085bbc3472482af48, + limb1: 0x7a64e477423697d5f887154b, + limb2: 0xb96f5d698cab4a1, limb3: 0x0 }, r0a1: u384 { - limb0: 0x81d9c4ec56b0c577f646eb40, - limb1: 0x2e5a0918579e398c48776ad2, - limb2: 0x3d00590d1493ac8, + limb0: 0x447ee4352780de7bf626d7e7, + limb1: 0xabf3de709b6504e4a98fcb79, + limb2: 0x13cc3009c3f6d728, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5ffc6ee3bc132f1681fe84f, - limb1: 0x6906fa22a16540a098a498a7, - limb2: 0xd23995e1c7ff58d, + limb0: 0x133dced3910b3baa0fe5cd63, + limb1: 0x55092ddf1b0420aef3b4e395, + limb2: 0x16c26aa97d58546, limb3: 0x0 }, r1a1: u384 { - limb0: 0x99b1ea789cd8357bbc2d09d8, - limb1: 0x2fde0375bb34e500582e9729, - limb2: 0xfad5daa8506bc1, + limb0: 0x694169eac141359d06d790e6, + limb1: 0x10a3b5947b503bcbcc70c675, + limb2: 0x260e9c2c9089a3e6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc627fa78d0f6604cfc6262bc, - limb1: 0x1a3f0695ff6e8412d1ea0eda, - limb2: 0x1b1754c1a9e0cea9, + limb0: 0xc3154bb4d496bd666ab1162d, + limb1: 0xc129f28d9fa87a58c9a671f8, + limb2: 0x1577d8e5af87d115, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8fbb7ca95e11dda5d5f44cc0, - limb1: 0xaab02dc7e290087c8d9224dc, - limb2: 0x4c39cf6e88ea4d8, + limb0: 0xc41b336cf54948171e887d85, + limb1: 0xd85d1855a16b39617b12acdd, + limb2: 0x153581b806a018fe, limb3: 0x0 }, r1a0: u384 { - limb0: 0x66b308f30b0a27dfb743a053, - limb1: 0xc24b32150e094160eb1e6e20, - limb2: 0x16091aac6ef81c7, + limb0: 0xeed76e2370e0e1bf07dd0508, + limb1: 0x32204fdac10285d3283f68c0, + limb2: 0x19a5d74ca5c4aec8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7e3aeab40b6fb8507a19662f, - limb1: 0x8fa259d1ce6d3db3ba6cbcd, - limb2: 0x2c175175b8686be5, + limb0: 0x12ca99abc7d494c4d2a76f28, + limb1: 0xc7b09da4d82c8bde825ad22f, + limb2: 0x28abc4ff887e9677, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9e446957265af1f6cdcb9e15, - limb1: 0x6c10753b3e38581919c0cc4d, - limb2: 0x3049507b97cd2ae3, + limb0: 0x5889466085bbc3472482af48, + limb1: 0x7a64e477423697d5f887154b, + limb2: 0xb96f5d698cab4a1, limb3: 0x0 }, r0a1: u384 { - limb0: 0x81d9c4ec56b0c577f646eb40, - limb1: 0x2e5a0918579e398c48776ad2, - limb2: 0x3d00590d1493ac8, + limb0: 0x447ee4352780de7bf626d7e7, + limb1: 0xabf3de709b6504e4a98fcb79, + limb2: 0x13cc3009c3f6d728, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5ffc6ee3bc132f1681fe84f, - limb1: 0x6906fa22a16540a098a498a7, - limb2: 0xd23995e1c7ff58d, + limb0: 0x133dced3910b3baa0fe5cd63, + limb1: 0x55092ddf1b0420aef3b4e395, + limb2: 0x16c26aa97d58546, limb3: 0x0 }, r1a1: u384 { - limb0: 0x99b1ea789cd8357bbc2d09d8, - limb1: 0x2fde0375bb34e500582e9729, - limb2: 0xfad5daa8506bc1, + limb0: 0x694169eac141359d06d790e6, + limb1: 0x10a3b5947b503bcbcc70c675, + limb2: 0x260e9c2c9089a3e6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc627fa78d0f6604cfc6262bc, - limb1: 0x1a3f0695ff6e8412d1ea0eda, - limb2: 0x1b1754c1a9e0cea9, + limb0: 0xc3154bb4d496bd666ab1162d, + limb1: 0xc129f28d9fa87a58c9a671f8, + limb2: 0x1577d8e5af87d115, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8fbb7ca95e11dda5d5f44cc0, - limb1: 0xaab02dc7e290087c8d9224dc, - limb2: 0x4c39cf6e88ea4d8, + limb0: 0xc41b336cf54948171e887d85, + limb1: 0xd85d1855a16b39617b12acdd, + limb2: 0x153581b806a018fe, limb3: 0x0 }, r1a0: u384 { - limb0: 0x66b308f30b0a27dfb743a053, - limb1: 0xc24b32150e094160eb1e6e20, - limb2: 0x16091aac6ef81c7, + limb0: 0xeed76e2370e0e1bf07dd0508, + limb1: 0x32204fdac10285d3283f68c0, + limb2: 0x19a5d74ca5c4aec8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7e3aeab40b6fb8507a19662f, - limb1: 0x8fa259d1ce6d3db3ba6cbcd, - limb2: 0x2c175175b8686be5, + limb0: 0x12ca99abc7d494c4d2a76f28, + limb1: 0xc7b09da4d82c8bde825ad22f, + limb2: 0x28abc4ff887e9677, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x391e6f951049b131d70e651, - limb1: 0x5c0f54485e635304e14ce30e, - limb2: 0x221ee8dc68dde949, + limb0: 0x770a5cd52167600a1fc68c59, + limb1: 0x2590fd3f79fa6e7312f428e2, + limb2: 0x20b9b386ca9f106b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xac8ba155c82a61103e2963c1, - limb1: 0x8559d1265b1f4418a886b3aa, - limb2: 0x140ce9c3c2eb5374, + limb0: 0xc1f47a37f223ea976a559664, + limb1: 0xfc3ed9f6da30c8606eb1bb99, + limb2: 0x8bafe1d0a0e3fc2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x73ebb164ba66b89f6ac09079, - limb1: 0x3699654a08147615c793b6b5, - limb2: 0xaa97a901c3147f3, + limb0: 0x873cd60d69e71d3baf4b50b6, + limb1: 0xf7478b659ba7043066ed36fc, + limb2: 0x1aba57a5cfb313a2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9666d2cab8edbbffe6ede238, - limb1: 0xc28b607bd98c0f9789de1cb4, - limb2: 0xcb0f83e0497f81e, + limb0: 0x1b2046e3f2a94d11f71d2573, + limb1: 0xce0af6ac2ea7b618e7bb5a8, + limb2: 0x147d8cd76974e2dd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x391e6f951049b131d70e651, - limb1: 0x5c0f54485e635304e14ce30e, - limb2: 0x221ee8dc68dde949, + limb0: 0x770a5cd52167600a1fc68c59, + limb1: 0x2590fd3f79fa6e7312f428e2, + limb2: 0x20b9b386ca9f106b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xac8ba155c82a61103e2963c1, - limb1: 0x8559d1265b1f4418a886b3aa, - limb2: 0x140ce9c3c2eb5374, + limb0: 0xc1f47a37f223ea976a559664, + limb1: 0xfc3ed9f6da30c8606eb1bb99, + limb2: 0x8bafe1d0a0e3fc2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x73ebb164ba66b89f6ac09079, - limb1: 0x3699654a08147615c793b6b5, - limb2: 0xaa97a901c3147f3, + limb0: 0x873cd60d69e71d3baf4b50b6, + limb1: 0xf7478b659ba7043066ed36fc, + limb2: 0x1aba57a5cfb313a2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9666d2cab8edbbffe6ede238, - limb1: 0xc28b607bd98c0f9789de1cb4, - limb2: 0xcb0f83e0497f81e, + limb0: 0x1b2046e3f2a94d11f71d2573, + limb1: 0xce0af6ac2ea7b618e7bb5a8, + limb2: 0x147d8cd76974e2dd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd9cb0120b4122fb011495b79, - limb1: 0xb13527eef1359006fb9859de, - limb2: 0x240401f012c778a3, + limb0: 0x11fe0e5631944ab8f1190f63, + limb1: 0x8a47951516cedab6f565311e, + limb2: 0x228c2a379acdf5f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9cc1ae143c291244678b0671, - limb1: 0x3f4bdf8e0d1bb7d8d2c700d7, - limb2: 0x12fc2e1a9bd4d4fb, + limb0: 0xf870ff7c7515411cd857a525, + limb1: 0x665a69cfaa8bfb4601422fd, + limb2: 0x16136665d4f27c4e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d62fe7db900df0085dff093, - limb1: 0x424c17123aa393f8a5520eb9, - limb2: 0x8df0bf255c22f60, + limb0: 0x94404629786a89c6c0bc1b5f, + limb1: 0x6566f1a159c463d3d8ced9f4, + limb2: 0x2226f2bbb80072d4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4caa438a70cd1b3862c1618e, - limb1: 0x3e479829171b3521b4952056, - limb2: 0x828e185bcf93935, + limb0: 0xa446f506f3ece322d0a73d39, + limb1: 0xfe67fb149f20b1aa6988bdc6, + limb2: 0xa4432a089118939, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd9cb0120b4122fb011495b79, - limb1: 0xb13527eef1359006fb9859de, - limb2: 0x240401f012c778a3, + limb0: 0x11fe0e5631944ab8f1190f63, + limb1: 0x8a47951516cedab6f565311e, + limb2: 0x228c2a379acdf5f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9cc1ae143c291244678b0671, - limb1: 0x3f4bdf8e0d1bb7d8d2c700d7, - limb2: 0x12fc2e1a9bd4d4fb, + limb0: 0xf870ff7c7515411cd857a525, + limb1: 0x665a69cfaa8bfb4601422fd, + limb2: 0x16136665d4f27c4e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d62fe7db900df0085dff093, - limb1: 0x424c17123aa393f8a5520eb9, - limb2: 0x8df0bf255c22f60, + limb0: 0x94404629786a89c6c0bc1b5f, + limb1: 0x6566f1a159c463d3d8ced9f4, + limb2: 0x2226f2bbb80072d4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4caa438a70cd1b3862c1618e, - limb1: 0x3e479829171b3521b4952056, - limb2: 0x828e185bcf93935, + limb0: 0xa446f506f3ece322d0a73d39, + limb1: 0xfe67fb149f20b1aa6988bdc6, + limb2: 0xa4432a089118939, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb862a4ff37044dbe06e91363, - limb1: 0xaf8e301a655e3e4a00bc528, - limb2: 0x1b35ba3ad1783bfa, + limb0: 0x6ec22f6872aaa4ac3c799e80, + limb1: 0x3ed4c3f74f92e7d47945f028, + limb2: 0x16bff0038cf1c303, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4d069af037c7fa2d75a8135b, - limb1: 0xe23f93edb80bda1ddf6c3d8b, - limb2: 0x734462d6e70bd6, + limb0: 0xde3b34c81af90412e9a8170a, + limb1: 0xea5bb8d1ad482e31d6679583, + limb2: 0x4f1add9e32f2db4, limb3: 0x0 }, r1a0: u384 { - limb0: 0xca21499f48088a3152f20477, - limb1: 0xfb6ff15c58fd656c3a068ba7, - limb2: 0x129921fd1af30952, + limb0: 0xabe996707a0796e3186ac31d, + limb1: 0x236fe454e519675d23ca8e4, + limb2: 0xf74220c82c8725d, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe182d8890b92a8c636cfc2d5, - limb1: 0xcf37e9714eabfb65cd257a30, - limb2: 0x19c5b0d5affa1c21, + limb0: 0x6b0a490327b3c49a9582ebd1, + limb1: 0x70a87bd4854ba42081882391, + limb2: 0x14a18af74e0666d0, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb862a4ff37044dbe06e91363, - limb1: 0xaf8e301a655e3e4a00bc528, - limb2: 0x1b35ba3ad1783bfa, + limb0: 0x6ec22f6872aaa4ac3c799e80, + limb1: 0x3ed4c3f74f92e7d47945f028, + limb2: 0x16bff0038cf1c303, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4d069af037c7fa2d75a8135b, - limb1: 0xe23f93edb80bda1ddf6c3d8b, - limb2: 0x734462d6e70bd6, + limb0: 0xde3b34c81af90412e9a8170a, + limb1: 0xea5bb8d1ad482e31d6679583, + limb2: 0x4f1add9e32f2db4, limb3: 0x0 }, r1a0: u384 { - limb0: 0xca21499f48088a3152f20477, - limb1: 0xfb6ff15c58fd656c3a068ba7, - limb2: 0x129921fd1af30952, + limb0: 0xabe996707a0796e3186ac31d, + limb1: 0x236fe454e519675d23ca8e4, + limb2: 0xf74220c82c8725d, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe182d8890b92a8c636cfc2d5, - limb1: 0xcf37e9714eabfb65cd257a30, - limb2: 0x19c5b0d5affa1c21, + limb0: 0x6b0a490327b3c49a9582ebd1, + limb1: 0x70a87bd4854ba42081882391, + limb2: 0x14a18af74e0666d0, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8d30e8f01b6acf088a9bd5a6, - limb1: 0xb440d1794eef76a66e0fdb32, - limb2: 0x16655a68127499b0, + limb0: 0xfdc5ac96c5a6e47bda921ec4, + limb1: 0x546a81a960f12fa055d3b45b, + limb2: 0x2bd1c9b71a722654, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf12061678632cd148d1be332, - limb1: 0x3aa5b5ac85bb5c32e7c93d40, - limb2: 0x2f885ae792f2779e, + limb0: 0xa9044bd8972b9b79d5b545fb, + limb1: 0xefd0f60a08275bb1caf0f002, + limb2: 0x5272df980c4c7f4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1de53ae1c1e6c599d4a495e4, - limb1: 0x8ef188b9abb6e97a0375dee6, - limb2: 0x9507d99d56d4d1d, + limb0: 0x381e985732b92b61bc19c5f1, + limb1: 0x837c0bdca78036c55f213480, + limb2: 0x1aae9db95de90e3d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9a83ce73013109f348314267, - limb1: 0xffd1a4c21374ab0fcece03f4, - limb2: 0x7570f2346d80d71, + limb0: 0x633e1d89be42aa488b5b9e8d, + limb1: 0xe003c49e24b9d484cb38b7ea, + limb2: 0x1c71305eb0bdfeaf, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xffb932597fa8bdce8de82fd9, - limb1: 0xc9265a1ac66f25b59b4c7222, - limb2: 0x2a43f963f80117be, + limb0: 0x1eb9280b39e37cdfd6b966c9, + limb1: 0x5120ce6a0c41ab741b6e731f, + limb2: 0x2b61552e38cabecd, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b6456669db38b591a35fa4e, - limb1: 0x31aa367c72c0f07897f7d4a4, - limb2: 0x28d40172399c3b03, + limb0: 0x319ebb1089d7fb67336c4787, + limb1: 0x33a7a5d2bd3bc07024d802fb, + limb2: 0x2385e7c9d947182b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xca95f93e068ff337f73f54d5, - limb1: 0xabbf9fdc66cc4b10f9da741, - limb2: 0x22f1e27d902fc3ff, + limb0: 0xf1cdc7556a7578b474f2b570, + limb1: 0xce6fa6b4172610e4c9f2c8ca, + limb2: 0x30127b97553d9659, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd12f8d49ae60289c48850a68, - limb1: 0xc27491d681fc8ec1edf9d749, - limb2: 0x14e28f1895e25047, + limb0: 0x5f13207bf4e8446db31ecdba, + limb1: 0x30fe710e8827900db449fb6d, + limb2: 0x224e91ebe05715c3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8d30e8f01b6acf088a9bd5a6, - limb1: 0xb440d1794eef76a66e0fdb32, - limb2: 0x16655a68127499b0, + limb0: 0xfdc5ac96c5a6e47bda921ec4, + limb1: 0x546a81a960f12fa055d3b45b, + limb2: 0x2bd1c9b71a722654, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf12061678632cd148d1be332, - limb1: 0x3aa5b5ac85bb5c32e7c93d40, - limb2: 0x2f885ae792f2779e, + limb0: 0xa9044bd8972b9b79d5b545fb, + limb1: 0xefd0f60a08275bb1caf0f002, + limb2: 0x5272df980c4c7f4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1de53ae1c1e6c599d4a495e4, - limb1: 0x8ef188b9abb6e97a0375dee6, - limb2: 0x9507d99d56d4d1d, + limb0: 0x381e985732b92b61bc19c5f1, + limb1: 0x837c0bdca78036c55f213480, + limb2: 0x1aae9db95de90e3d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9a83ce73013109f348314267, - limb1: 0xffd1a4c21374ab0fcece03f4, - limb2: 0x7570f2346d80d71, + limb0: 0x633e1d89be42aa488b5b9e8d, + limb1: 0xe003c49e24b9d484cb38b7ea, + limb2: 0x1c71305eb0bdfeaf, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xffb932597fa8bdce8de82fd9, - limb1: 0xc9265a1ac66f25b59b4c7222, - limb2: 0x2a43f963f80117be, + limb0: 0x1eb9280b39e37cdfd6b966c9, + limb1: 0x5120ce6a0c41ab741b6e731f, + limb2: 0x2b61552e38cabecd, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b6456669db38b591a35fa4e, - limb1: 0x31aa367c72c0f07897f7d4a4, - limb2: 0x28d40172399c3b03, + limb0: 0x319ebb1089d7fb67336c4787, + limb1: 0x33a7a5d2bd3bc07024d802fb, + limb2: 0x2385e7c9d947182b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xca95f93e068ff337f73f54d5, - limb1: 0xabbf9fdc66cc4b10f9da741, - limb2: 0x22f1e27d902fc3ff, + limb0: 0xf1cdc7556a7578b474f2b570, + limb1: 0xce6fa6b4172610e4c9f2c8ca, + limb2: 0x30127b97553d9659, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd12f8d49ae60289c48850a68, - limb1: 0xc27491d681fc8ec1edf9d749, - limb2: 0x14e28f1895e25047, + limb0: 0x5f13207bf4e8446db31ecdba, + limb1: 0x30fe710e8827900db449fb6d, + limb2: 0x224e91ebe05715c3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x473f1af712fdc704395691fd, - limb1: 0xb051550f381c34c4b0734c3b, - limb2: 0x268983f32c1ff74a, + limb0: 0x455f509ee681c11d4a592cee, + limb1: 0xfe208f55862222d546e47ff4, + limb2: 0x1ec4510b7b809a4d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcd3e26d45de18312b60f63b3, - limb1: 0x4b1cf3f0c70a35c9ed0e7627, - limb2: 0x5faf0f8c5417fac, + limb0: 0xb233327abbeda554e393b419, + limb1: 0x477826e58a635ce4f42ecc4c, + limb2: 0x2c8c1148aba0bc45, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7186248c0f4f620c4db44b27, - limb1: 0xbaee201f71b6213a513c8c05, - limb2: 0x10696dfde75b0f74, + limb0: 0x37959e9ea4408fc4d18d08c, + limb1: 0x4f4b098a0b592863ea22e4a5, + limb2: 0xcfb7fb135402efc, limb3: 0x0 }, r1a1: u384 { - limb0: 0x47fce5c1d2e0b960d052202, - limb1: 0x12588735814120777f589cc7, - limb2: 0x755d1d035d5e613, + limb0: 0x33296577a630e455f9289de2, + limb1: 0x59a10ddb3c4a573045075b12, + limb2: 0x1cafb03b3b0cd512, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x473f1af712fdc704395691fd, - limb1: 0xb051550f381c34c4b0734c3b, - limb2: 0x268983f32c1ff74a, + limb0: 0x455f509ee681c11d4a592cee, + limb1: 0xfe208f55862222d546e47ff4, + limb2: 0x1ec4510b7b809a4d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcd3e26d45de18312b60f63b3, - limb1: 0x4b1cf3f0c70a35c9ed0e7627, - limb2: 0x5faf0f8c5417fac, + limb0: 0xb233327abbeda554e393b419, + limb1: 0x477826e58a635ce4f42ecc4c, + limb2: 0x2c8c1148aba0bc45, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7186248c0f4f620c4db44b27, - limb1: 0xbaee201f71b6213a513c8c05, - limb2: 0x10696dfde75b0f74, + limb0: 0x37959e9ea4408fc4d18d08c, + limb1: 0x4f4b098a0b592863ea22e4a5, + limb2: 0xcfb7fb135402efc, limb3: 0x0 }, r1a1: u384 { - limb0: 0x47fce5c1d2e0b960d052202, - limb1: 0x12588735814120777f589cc7, - limb2: 0x755d1d035d5e613, + limb0: 0x33296577a630e455f9289de2, + limb1: 0x59a10ddb3c4a573045075b12, + limb2: 0x1cafb03b3b0cd512, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb069903d83fafb38587039b1, - limb1: 0x8c9aaa21806e5257331c422c, - limb2: 0x13dd740437a116d8, + limb0: 0xd8d6e0fac27462bdf211fd42, + limb1: 0xec4d626858dd8d2750b085d1, + limb2: 0x1da6d9f45a71767b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x49d24e3bc669a61d3ec25caa, - limb1: 0xeca54bbcf540ef02c5af1e2d, - limb2: 0x193a4e0703852e04, + limb0: 0x693dc4d4990bd85546174a4a, + limb1: 0x49339480a9f7fd84c379f69b, + limb2: 0x8430f0bdbeea9b2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x40ed8176e59843d8d045473f, - limb1: 0xdb66931824221a92af499752, - limb2: 0x187f887f2aa471b3, + limb0: 0xeacb8919e10f254c4489fb8d, + limb1: 0xe0bccb12ea3e8f61de2cec8e, + limb2: 0x5dacd3ee995d4d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5fb9760acf925b445a49c759, - limb1: 0xfc8fbbd94b6f146f5b998e84, - limb2: 0x79720a00d9dea8a, + limb0: 0xb049d9aea8cf65e7fa47fc31, + limb1: 0xfe99f373ac12b15c720e7a56, + limb2: 0x270374148f139ef2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9ea0a9193ffeb1be07f5f80b, - limb1: 0xfec5948eaf1002c198e0e6d5, - limb2: 0x2a4574fe23c4019d, + limb0: 0x5cd64bf82a53d28380cc2b80, + limb1: 0xfebf1beaf6ffae47b515fed1, + limb2: 0x2ff140f7d0a34a1a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x192d77825dd5d0e9571db112, - limb1: 0x8b6f1079f2f153206cc2a502, - limb2: 0x247f3bad9ba3c5fe, + limb0: 0xb9458bbf70d9abed9d9fdce5, + limb1: 0x10fc552c0dcbed8c47653399, + limb2: 0x24e442086c531f91, limb3: 0x0 }, r1a0: u384 { - limb0: 0x250463ee5fe1aecbafe35d74, - limb1: 0xfb14416968302aaa18aca8dd, - limb2: 0x2667d8c8779f5e63, + limb0: 0xebd13916ab4f9ea40bede514, + limb1: 0xbcab56e9ae8bc58e5c657626, + limb2: 0x1d71e44146157165, limb3: 0x0 }, r1a1: u384 { - limb0: 0x933a251b9bf2654b8cde705, - limb1: 0x5b666a17b42cebd66d4dc4a4, - limb2: 0xfbadfc59294fbce, + limb0: 0xc43af269c5e49afde1402dd4, + limb1: 0x83d5521712d453326437637f, + limb2: 0x2e06de13a3de05b9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb069903d83fafb38587039b1, - limb1: 0x8c9aaa21806e5257331c422c, - limb2: 0x13dd740437a116d8, + limb0: 0xd8d6e0fac27462bdf211fd42, + limb1: 0xec4d626858dd8d2750b085d1, + limb2: 0x1da6d9f45a71767b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x49d24e3bc669a61d3ec25caa, - limb1: 0xeca54bbcf540ef02c5af1e2d, - limb2: 0x193a4e0703852e04, + limb0: 0x693dc4d4990bd85546174a4a, + limb1: 0x49339480a9f7fd84c379f69b, + limb2: 0x8430f0bdbeea9b2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x40ed8176e59843d8d045473f, - limb1: 0xdb66931824221a92af499752, - limb2: 0x187f887f2aa471b3, + limb0: 0xeacb8919e10f254c4489fb8d, + limb1: 0xe0bccb12ea3e8f61de2cec8e, + limb2: 0x5dacd3ee995d4d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5fb9760acf925b445a49c759, - limb1: 0xfc8fbbd94b6f146f5b998e84, - limb2: 0x79720a00d9dea8a, + limb0: 0xb049d9aea8cf65e7fa47fc31, + limb1: 0xfe99f373ac12b15c720e7a56, + limb2: 0x270374148f139ef2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9ea0a9193ffeb1be07f5f80b, - limb1: 0xfec5948eaf1002c198e0e6d5, - limb2: 0x2a4574fe23c4019d, + limb0: 0x5cd64bf82a53d28380cc2b80, + limb1: 0xfebf1beaf6ffae47b515fed1, + limb2: 0x2ff140f7d0a34a1a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x192d77825dd5d0e9571db112, - limb1: 0x8b6f1079f2f153206cc2a502, - limb2: 0x247f3bad9ba3c5fe, + limb0: 0xb9458bbf70d9abed9d9fdce5, + limb1: 0x10fc552c0dcbed8c47653399, + limb2: 0x24e442086c531f91, limb3: 0x0 }, r1a0: u384 { - limb0: 0x250463ee5fe1aecbafe35d74, - limb1: 0xfb14416968302aaa18aca8dd, - limb2: 0x2667d8c8779f5e63, + limb0: 0xebd13916ab4f9ea40bede514, + limb1: 0xbcab56e9ae8bc58e5c657626, + limb2: 0x1d71e44146157165, limb3: 0x0 }, r1a1: u384 { - limb0: 0x933a251b9bf2654b8cde705, - limb1: 0x5b666a17b42cebd66d4dc4a4, - limb2: 0xfbadfc59294fbce, + limb0: 0xc43af269c5e49afde1402dd4, + limb1: 0x83d5521712d453326437637f, + limb2: 0x2e06de13a3de05b9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x46cedc1a7916cd4758546b8f, - limb1: 0xc0301e8d2df36447a89fb4e8, - limb2: 0xd2ca8656d93e09e, + limb0: 0xeb808a9c42120518701919a7, + limb1: 0xc4861db78bf7b6402e059434, + limb2: 0x14f8f4d72f965dea, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb3e000fc3f43a66bd80ccccd, - limb1: 0x4f3937ef435c74591278ec30, - limb2: 0x2cacd585791ab63b, + limb0: 0x92967f60f2bc6eb5d58e52d0, + limb1: 0x4790cb777d167bd21de16ef1, + limb2: 0x5c865918563ab2c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x124b8c1a597cadcb6e4cd237, - limb1: 0x8ff0b0f8077033669214f5a4, - limb2: 0x2d6762b5646a6eab, + limb0: 0x2ebf30869f9c148211f922d8, + limb1: 0x9e0728be1339a40e93a4768c, + limb2: 0x1ae432a1ace0734f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2ac1adef2ec8f4f11dc21d70, - limb1: 0xa47ce6dfc3545d78d6b35874, - limb2: 0x1e66cdeff84b898e, + limb0: 0xf1d3784ee9f3f24b849340dc, + limb1: 0x6401e71045e249aa411c9640, + limb2: 0x1949d3d94bd44867, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x46cedc1a7916cd4758546b8f, - limb1: 0xc0301e8d2df36447a89fb4e8, - limb2: 0xd2ca8656d93e09e, + limb0: 0xeb808a9c42120518701919a7, + limb1: 0xc4861db78bf7b6402e059434, + limb2: 0x14f8f4d72f965dea, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb3e000fc3f43a66bd80ccccd, - limb1: 0x4f3937ef435c74591278ec30, - limb2: 0x2cacd585791ab63b, + limb0: 0x92967f60f2bc6eb5d58e52d0, + limb1: 0x4790cb777d167bd21de16ef1, + limb2: 0x5c865918563ab2c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x124b8c1a597cadcb6e4cd237, - limb1: 0x8ff0b0f8077033669214f5a4, - limb2: 0x2d6762b5646a6eab, + limb0: 0x2ebf30869f9c148211f922d8, + limb1: 0x9e0728be1339a40e93a4768c, + limb2: 0x1ae432a1ace0734f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2ac1adef2ec8f4f11dc21d70, - limb1: 0xa47ce6dfc3545d78d6b35874, - limb2: 0x1e66cdeff84b898e, + limb0: 0xf1d3784ee9f3f24b849340dc, + limb1: 0x6401e71045e249aa411c9640, + limb2: 0x1949d3d94bd44867, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7bded937b16de0bd513a7142, - limb1: 0xcfbbf3d13e42ad1b5895e0f2, - limb2: 0x1eca553e197cc436, + limb0: 0xa5b9d890f029401852149b01, + limb1: 0xaa73b6c72232dd72d2bc6bb6, + limb2: 0x215b7a8c1ee13054, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1326b172ffdca7374561eaa7, - limb1: 0x1b78b181955868c0feac1a4d, - limb2: 0x27e90d835140fdf2, + limb0: 0xf1e5d2e87fb98cf0d3272911, + limb1: 0x6a3419a260afd2295de976e7, + limb2: 0x14a10daf25ae808, limb3: 0x0 }, r1a0: u384 { - limb0: 0xabe4a2e309f9a3632b4ed1ce, - limb1: 0xcea1bbacd364563ad1a77ebb, - limb2: 0x13127af43089e05a, + limb0: 0x46c27f89c59fa342ce543314, + limb1: 0xff4f1012366ec83e37e31d5f, + limb2: 0x2aaf67028b10f321, limb3: 0x0 }, r1a1: u384 { - limb0: 0x87d1cfadbc1dc69a79324026, - limb1: 0x9c9c2c5e286779e0a0d895fc, - limb2: 0x111e946cf01322eb, + limb0: 0x2b62fd51c3d3f9eb5dc3767b, + limb1: 0x9d0cb2a44d7439bfbb7b6b1, + limb2: 0x161e9aaecf637a62, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7bded937b16de0bd513a7142, - limb1: 0xcfbbf3d13e42ad1b5895e0f2, - limb2: 0x1eca553e197cc436, + limb0: 0xa5b9d890f029401852149b01, + limb1: 0xaa73b6c72232dd72d2bc6bb6, + limb2: 0x215b7a8c1ee13054, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1326b172ffdca7374561eaa7, - limb1: 0x1b78b181955868c0feac1a4d, - limb2: 0x27e90d835140fdf2, + limb0: 0xf1e5d2e87fb98cf0d3272911, + limb1: 0x6a3419a260afd2295de976e7, + limb2: 0x14a10daf25ae808, limb3: 0x0 }, r1a0: u384 { - limb0: 0xabe4a2e309f9a3632b4ed1ce, - limb1: 0xcea1bbacd364563ad1a77ebb, - limb2: 0x13127af43089e05a, + limb0: 0x46c27f89c59fa342ce543314, + limb1: 0xff4f1012366ec83e37e31d5f, + limb2: 0x2aaf67028b10f321, limb3: 0x0 }, r1a1: u384 { - limb0: 0x87d1cfadbc1dc69a79324026, - limb1: 0x9c9c2c5e286779e0a0d895fc, - limb2: 0x111e946cf01322eb, + limb0: 0x2b62fd51c3d3f9eb5dc3767b, + limb1: 0x9d0cb2a44d7439bfbb7b6b1, + limb2: 0x161e9aaecf637a62, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9defc443a5f969707c567481, - limb1: 0x55f8307d8694c3cec8cca946, - limb2: 0x1279f1c85384c33f, + limb0: 0xaa57615ce62828d745158f51, + limb1: 0xe17b9d5c9d3bc933c19309bf, + limb2: 0x2f25249490462ec1, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc45f4019a78bd32e0bdd4a1b, - limb1: 0xaf7ddf8600e2296ceaf95d02, - limb2: 0xbe5e1b962492d36, + limb0: 0x1c9cd8ab6acdbd5b667b6ef8, + limb1: 0xec0eac28fed425851e0759a, + limb2: 0x11e17ed48cb624ac, limb3: 0x0 }, r1a0: u384 { - limb0: 0x76245039bfb721ca1e2a0ee5, - limb1: 0x8645cf7b04c2c109a1286acc, - limb2: 0x295c9183ac4c0896, + limb0: 0xb7d7f2ad8c2cccfc545caad7, + limb1: 0x7ae7f688cb2237b030bdc983, + limb2: 0x2055474ddf18da67, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc074cb54759eec430185578f, - limb1: 0x5eccd5653e9f7f02ed581abc, - limb2: 0x14cf7692e622fcc5, + limb0: 0xa81b20e1755ad0c2e5271a7c, + limb1: 0x667a96af90801b997ecd3768, + limb2: 0x3050fb84c6c7a0fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf8027d9e6b0a7844673e1245, - limb1: 0x694d9db62bf7bb9a41262f0b, - limb2: 0x58b480579c361aa, + limb0: 0x75282a61d5890f5fbe6dd4ae, + limb1: 0xf974934abd152c33e7063189, + limb2: 0x13c7b6655653e771, limb3: 0x0 }, r0a1: u384 { - limb0: 0x91e7cecfe16bbaaaf0e19fda, - limb1: 0xb9179883e4b271385d9f0518, - limb2: 0x1b352e7a150ca82b, + limb0: 0xc8f41b2ff2b56acef5189d2, + limb1: 0x4156cf78c5f67dc9ac29d8e4, + limb2: 0x12c97d9ada019987, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaca0ba97589ae090a84d3146, - limb1: 0x6e9a896c16ec429fab404849, - limb2: 0x2360e6d4bbcf90f8, + limb0: 0x635bbd3907a101b58f253dbc, + limb1: 0x7ee774f09e34ab287b544572, + limb2: 0xc50831a8f5346fd, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbb779a84783aa4ae72c18ceb, - limb1: 0x27e540fc9069d0a5ef39760c, - limb2: 0x114c9874632415bb, + limb0: 0xa5257fa20b457572b4950d7c, + limb1: 0x4fcdbfa1ec56b6157743acbe, + limb2: 0x19f0b8e1110e375c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9defc443a5f969707c567481, - limb1: 0x55f8307d8694c3cec8cca946, - limb2: 0x1279f1c85384c33f, + limb0: 0xaa57615ce62828d745158f51, + limb1: 0xe17b9d5c9d3bc933c19309bf, + limb2: 0x2f25249490462ec1, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc45f4019a78bd32e0bdd4a1b, - limb1: 0xaf7ddf8600e2296ceaf95d02, - limb2: 0xbe5e1b962492d36, + limb0: 0x1c9cd8ab6acdbd5b667b6ef8, + limb1: 0xec0eac28fed425851e0759a, + limb2: 0x11e17ed48cb624ac, limb3: 0x0 }, r1a0: u384 { - limb0: 0x76245039bfb721ca1e2a0ee5, - limb1: 0x8645cf7b04c2c109a1286acc, - limb2: 0x295c9183ac4c0896, + limb0: 0xb7d7f2ad8c2cccfc545caad7, + limb1: 0x7ae7f688cb2237b030bdc983, + limb2: 0x2055474ddf18da67, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc074cb54759eec430185578f, - limb1: 0x5eccd5653e9f7f02ed581abc, - limb2: 0x14cf7692e622fcc5, + limb0: 0xa81b20e1755ad0c2e5271a7c, + limb1: 0x667a96af90801b997ecd3768, + limb2: 0x3050fb84c6c7a0fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf8027d9e6b0a7844673e1245, - limb1: 0x694d9db62bf7bb9a41262f0b, - limb2: 0x58b480579c361aa, + limb0: 0x75282a61d5890f5fbe6dd4ae, + limb1: 0xf974934abd152c33e7063189, + limb2: 0x13c7b6655653e771, limb3: 0x0 }, r0a1: u384 { - limb0: 0x91e7cecfe16bbaaaf0e19fda, - limb1: 0xb9179883e4b271385d9f0518, - limb2: 0x1b352e7a150ca82b, + limb0: 0xc8f41b2ff2b56acef5189d2, + limb1: 0x4156cf78c5f67dc9ac29d8e4, + limb2: 0x12c97d9ada019987, limb3: 0x0 }, r1a0: u384 { - limb0: 0xaca0ba97589ae090a84d3146, - limb1: 0x6e9a896c16ec429fab404849, - limb2: 0x2360e6d4bbcf90f8, + limb0: 0x635bbd3907a101b58f253dbc, + limb1: 0x7ee774f09e34ab287b544572, + limb2: 0xc50831a8f5346fd, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbb779a84783aa4ae72c18ceb, - limb1: 0x27e540fc9069d0a5ef39760c, - limb2: 0x114c9874632415bb, + limb0: 0xa5257fa20b457572b4950d7c, + limb1: 0x4fcdbfa1ec56b6157743acbe, + limb2: 0x19f0b8e1110e375c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2ec97171b355380af9597308, - limb1: 0x5c98f31e4243eabcdc9c4d0a, - limb2: 0x189272184abbc67e, + limb0: 0x6bd5a6514d0ff21237960941, + limb1: 0x3d237ace8de24fed068b4c76, + limb2: 0x3c3f0027ec050a8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x70b2a249ee2b52a2be3d20c1, - limb1: 0x64f57fa1aabf12824a116967, - limb2: 0x2eff2b0744e46233, + limb0: 0x18a2cd87c2adf475e683bb8f, + limb1: 0x33616b9acf22d8b9bb45d540, + limb2: 0x1ce1da28e7921a3e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x745cbcaad594ddd38a5f1f4e, - limb1: 0x95d1063847bfb4d5e006aa7d, - limb2: 0x16f68ed87066356e, + limb0: 0xa7040f038e52409d69650352, + limb1: 0x7b807f0a64fdab1f8b76feba, + limb2: 0x1b0c35cdc6abfa25, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf642b7b361d87b9f994ddd0d, - limb1: 0xdd217c0a6997dd8ec2539a54, - limb2: 0xeb46e09edaa161c, + limb0: 0xa0d9c7ac70f8a96f38d0aebe, + limb1: 0xb4fd2126f07ee3719dbb703c, + limb2: 0x18623595aadc0a0b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2ec97171b355380af9597308, - limb1: 0x5c98f31e4243eabcdc9c4d0a, - limb2: 0x189272184abbc67e, + limb0: 0x6bd5a6514d0ff21237960941, + limb1: 0x3d237ace8de24fed068b4c76, + limb2: 0x3c3f0027ec050a8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x70b2a249ee2b52a2be3d20c1, - limb1: 0x64f57fa1aabf12824a116967, - limb2: 0x2eff2b0744e46233, + limb0: 0x18a2cd87c2adf475e683bb8f, + limb1: 0x33616b9acf22d8b9bb45d540, + limb2: 0x1ce1da28e7921a3e, limb3: 0x0 }, r1a0: u384 { - limb0: 0x745cbcaad594ddd38a5f1f4e, - limb1: 0x95d1063847bfb4d5e006aa7d, - limb2: 0x16f68ed87066356e, + limb0: 0xa7040f038e52409d69650352, + limb1: 0x7b807f0a64fdab1f8b76feba, + limb2: 0x1b0c35cdc6abfa25, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf642b7b361d87b9f994ddd0d, - limb1: 0xdd217c0a6997dd8ec2539a54, - limb2: 0xeb46e09edaa161c, + limb0: 0xa0d9c7ac70f8a96f38d0aebe, + limb1: 0xb4fd2126f07ee3719dbb703c, + limb2: 0x18623595aadc0a0b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x75698f1cd702ddc2b33e1a09, - limb1: 0x491bab5348fd4670d338478a, - limb2: 0xf12d300f3713d8, + limb0: 0xafff69b030bfb3b8b3de3fec, + limb1: 0xf326da4883c216ea5b8d8465, + limb2: 0x68f9109bf416f9b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7f8777ccc370604bba36f21e, - limb1: 0x9249013429c123002a183f50, - limb2: 0x1fcfca1835131e72, + limb0: 0xe00d29215ef9c19ec430cee8, + limb1: 0x4a3d48e8eff4d40c87b2c8e3, + limb2: 0xc95732a91532bfe, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8847a89e94951a7f1402ca0a, - limb1: 0xcf6292aefd5885587e4b501a, - limb2: 0x1f79fc126e4b16c6, + limb0: 0xf3c7aefb069b2d0b7d43082d, + limb1: 0x9e725955891d9065f4c3f423, + limb2: 0x2efa4751ce56c7c2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9d2a84ea463b4f6fa6bdef4f, - limb1: 0x757ea11f432296fd22343447, - limb2: 0x2679fc65403a5f42, + limb0: 0xb42fb3d1148d93326171ec72, + limb1: 0x75914fe70c0b54d61858f94b, + limb2: 0xe4ee922392ddc1a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x75698f1cd702ddc2b33e1a09, - limb1: 0x491bab5348fd4670d338478a, - limb2: 0xf12d300f3713d8, + limb0: 0xafff69b030bfb3b8b3de3fec, + limb1: 0xf326da4883c216ea5b8d8465, + limb2: 0x68f9109bf416f9b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7f8777ccc370604bba36f21e, - limb1: 0x9249013429c123002a183f50, - limb2: 0x1fcfca1835131e72, + limb0: 0xe00d29215ef9c19ec430cee8, + limb1: 0x4a3d48e8eff4d40c87b2c8e3, + limb2: 0xc95732a91532bfe, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8847a89e94951a7f1402ca0a, - limb1: 0xcf6292aefd5885587e4b501a, - limb2: 0x1f79fc126e4b16c6, + limb0: 0xf3c7aefb069b2d0b7d43082d, + limb1: 0x9e725955891d9065f4c3f423, + limb2: 0x2efa4751ce56c7c2, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9d2a84ea463b4f6fa6bdef4f, - limb1: 0x757ea11f432296fd22343447, - limb2: 0x2679fc65403a5f42, + limb0: 0xb42fb3d1148d93326171ec72, + limb1: 0x75914fe70c0b54d61858f94b, + limb2: 0xe4ee922392ddc1a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x34f8267fb775f59435a975a3, - limb1: 0x5e24c3e432badae39861f051, - limb2: 0x172b5256de7536ee, + limb0: 0xe86fa08f4bfe08d9d0cd0333, + limb1: 0xa791a17520b4e8fa1accb2c9, + limb2: 0xa35c8cf2084bf62, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5c68fe19ba153dcabad4077e, - limb1: 0xfcc73acc37bc3efd49f1611c, - limb2: 0x23e6dc58075ef8d9, + limb0: 0xe13e78206ff3229cb31a1def, + limb1: 0x575d6af6b27be5daff2a69e8, + limb2: 0x1e263305675d54c9, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4459c03b4d093ccedd5d9bb8, - limb1: 0xe78ba9031b31e2be3ed8f2ca, - limb2: 0x22ca3c03e154d61, + limb0: 0xd7abffe72ba6772e9c6b72d2, + limb1: 0x7836fb8805f97f89ee38e368, + limb2: 0x2cf4ee213dcf4464, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe3ddeffb8c8f1a4cffd5c3f8, - limb1: 0x1241cc4c4b10d455e4d51279, - limb2: 0x1198575579f06677, + limb0: 0x8e55236bb04e2a7c440d2d89, + limb1: 0x8898d2540df702899b9048b6, + limb2: 0x24f946194bd634db, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x34f8267fb775f59435a975a3, - limb1: 0x5e24c3e432badae39861f051, - limb2: 0x172b5256de7536ee, + limb0: 0xe86fa08f4bfe08d9d0cd0333, + limb1: 0xa791a17520b4e8fa1accb2c9, + limb2: 0xa35c8cf2084bf62, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5c68fe19ba153dcabad4077e, - limb1: 0xfcc73acc37bc3efd49f1611c, - limb2: 0x23e6dc58075ef8d9, + limb0: 0xe13e78206ff3229cb31a1def, + limb1: 0x575d6af6b27be5daff2a69e8, + limb2: 0x1e263305675d54c9, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4459c03b4d093ccedd5d9bb8, - limb1: 0xe78ba9031b31e2be3ed8f2ca, - limb2: 0x22ca3c03e154d61, + limb0: 0xd7abffe72ba6772e9c6b72d2, + limb1: 0x7836fb8805f97f89ee38e368, + limb2: 0x2cf4ee213dcf4464, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe3ddeffb8c8f1a4cffd5c3f8, - limb1: 0x1241cc4c4b10d455e4d51279, - limb2: 0x1198575579f06677, + limb0: 0x8e55236bb04e2a7c440d2d89, + limb1: 0x8898d2540df702899b9048b6, + limb2: 0x24f946194bd634db, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb18b3c24e43743bdb2cdbd80, - limb1: 0xe998c4bba97ba39223cf4a9c, - limb2: 0x19dc441e0f76e9e1, + limb0: 0xf2eac59c26e1b90557131504, + limb1: 0xa17f1803188d7576dff68f39, + limb2: 0x159a4730585d146d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4c5d0509f4c4d4eac63f9f95, - limb1: 0x5d3dd460fa5eec27c0f1c16d, - limb2: 0x1ce5fefb5da40fc0, + limb0: 0x143a5877faca5e6bd3bf61a3, + limb1: 0xb47d46dab5eccd984b3551f7, + limb2: 0x2ae79c444296910, limb3: 0x0 }, r1a0: u384 { - limb0: 0x817ac722e3b0875c94d0c02d, - limb1: 0x92716a07a8780a22c240503b, - limb2: 0x14624b4326fac880, + limb0: 0x96a628fd4afded6dfa2eb8d7, + limb1: 0x7bc17285b3a81885dfaa71c4, + limb2: 0x29bfbe82bfee17a0, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f2279554369817a9f36b5b2, - limb1: 0x6b6125c5be4c3c62b2ffbe7, - limb2: 0x1e71362b2df417b3, + limb0: 0x8a82c223f95d5cfb0cf9b31c, + limb1: 0xf2b11059d2acf8733b32273c, + limb2: 0x204a699d8aef3b41, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x5dbc257e7bb51557102dbe2a, - limb1: 0xce362ed76472b2864c5f5b6f, - limb2: 0xbd519ac92f31216, + limb0: 0x81f14b1ecb421fb86f718ffe, + limb1: 0xd141132c032a0cc6b32b9e07, + limb2: 0xffd395d793dd40d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe24007146139cc5810b3cbd1, - limb1: 0xef3e2e5013aee1213c842bfb, - limb2: 0x1f9eea9d2acec058, + limb0: 0xc31debb9628771126804fd36, + limb1: 0xfdf8ee7e85129cc54c2ec2cb, + limb2: 0x16e798567bd1abba, limb3: 0x0 }, r1a0: u384 { - limb0: 0x913167d6677c3bc99423eaeb, - limb1: 0xa2fa67dadc942e074343364, - limb2: 0x264f390c803c8e6, + limb0: 0x37d1b274476232cb3f7fa07b, + limb1: 0x7805db52c4f4db2f53faa712, + limb2: 0xee069c5f5231633, limb3: 0x0 }, r1a1: u384 { - limb0: 0x96fe98ba8d3de40aa91c7cef, - limb1: 0x9c98ececaf9210453a32c237, - limb2: 0xbe97bca2544faec, + limb0: 0x56530a3a43b0fb2f16579bd0, + limb1: 0x83ade7f8c0a7e0ddff5eae8f, + limb2: 0x28c29f0919eff65f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb18b3c24e43743bdb2cdbd80, - limb1: 0xe998c4bba97ba39223cf4a9c, - limb2: 0x19dc441e0f76e9e1, + limb0: 0xf2eac59c26e1b90557131504, + limb1: 0xa17f1803188d7576dff68f39, + limb2: 0x159a4730585d146d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4c5d0509f4c4d4eac63f9f95, - limb1: 0x5d3dd460fa5eec27c0f1c16d, - limb2: 0x1ce5fefb5da40fc0, + limb0: 0x143a5877faca5e6bd3bf61a3, + limb1: 0xb47d46dab5eccd984b3551f7, + limb2: 0x2ae79c444296910, limb3: 0x0 }, r1a0: u384 { - limb0: 0x817ac722e3b0875c94d0c02d, - limb1: 0x92716a07a8780a22c240503b, - limb2: 0x14624b4326fac880, + limb0: 0x96a628fd4afded6dfa2eb8d7, + limb1: 0x7bc17285b3a81885dfaa71c4, + limb2: 0x29bfbe82bfee17a0, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f2279554369817a9f36b5b2, - limb1: 0x6b6125c5be4c3c62b2ffbe7, - limb2: 0x1e71362b2df417b3, + limb0: 0x8a82c223f95d5cfb0cf9b31c, + limb1: 0xf2b11059d2acf8733b32273c, + limb2: 0x204a699d8aef3b41, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x5dbc257e7bb51557102dbe2a, - limb1: 0xce362ed76472b2864c5f5b6f, - limb2: 0xbd519ac92f31216, + limb0: 0x81f14b1ecb421fb86f718ffe, + limb1: 0xd141132c032a0cc6b32b9e07, + limb2: 0xffd395d793dd40d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe24007146139cc5810b3cbd1, - limb1: 0xef3e2e5013aee1213c842bfb, - limb2: 0x1f9eea9d2acec058, + limb0: 0xc31debb9628771126804fd36, + limb1: 0xfdf8ee7e85129cc54c2ec2cb, + limb2: 0x16e798567bd1abba, limb3: 0x0 }, r1a0: u384 { - limb0: 0x913167d6677c3bc99423eaeb, - limb1: 0xa2fa67dadc942e074343364, - limb2: 0x264f390c803c8e6, + limb0: 0x37d1b274476232cb3f7fa07b, + limb1: 0x7805db52c4f4db2f53faa712, + limb2: 0xee069c5f5231633, limb3: 0x0 }, r1a1: u384 { - limb0: 0x96fe98ba8d3de40aa91c7cef, - limb1: 0x9c98ececaf9210453a32c237, - limb2: 0xbe97bca2544faec, + limb0: 0x56530a3a43b0fb2f16579bd0, + limb1: 0x83ade7f8c0a7e0ddff5eae8f, + limb2: 0x28c29f0919eff65f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9fdc0157c3f6d20bf1149a1e, - limb1: 0x8dfe542e1b42911f5be6b44f, - limb2: 0x1777319f3952635d, + limb0: 0x24238035eac8fe6254a9b58b, + limb1: 0x29704e1d16ba7935d1c664ca, + limb2: 0x720c62840618b73, limb3: 0x0 }, r0a1: u384 { - limb0: 0x63c6acb2bb3dd9747a3a9e32, - limb1: 0xc1c8cdb31066df4015d898a0, - limb2: 0xa1a8086940fa431, + limb0: 0xca713d288e8fbcf3d4b3f4, + limb1: 0xff965e87b45c3b7cc304e8a3, + limb2: 0x4c145db9607b1af, limb3: 0x0 }, r1a0: u384 { - limb0: 0x26964bc2ff40bddadf582927, - limb1: 0x5b95722b0f70f6745c2bdbff, - limb2: 0x236b02ee4ba7fc42, + limb0: 0xce0acc88cca53e7bedba3fb5, + limb1: 0x4b3d0f4d975f397272ca6548, + limb2: 0x11d512fa88c71b94, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfc468b651b4a0b741fcab682, - limb1: 0x947fdb5abdbbf09b1861c9ff, - limb2: 0x168fbfc692ed02, + limb0: 0x62600defed12a6ae67e8f9b, + limb1: 0xb77c7784870dd527e054cdc1, + limb2: 0x14c1b1165c3b4670, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9fdc0157c3f6d20bf1149a1e, - limb1: 0x8dfe542e1b42911f5be6b44f, - limb2: 0x1777319f3952635d, + limb0: 0x24238035eac8fe6254a9b58b, + limb1: 0x29704e1d16ba7935d1c664ca, + limb2: 0x720c62840618b73, limb3: 0x0 }, r0a1: u384 { - limb0: 0x63c6acb2bb3dd9747a3a9e32, - limb1: 0xc1c8cdb31066df4015d898a0, - limb2: 0xa1a8086940fa431, + limb0: 0xca713d288e8fbcf3d4b3f4, + limb1: 0xff965e87b45c3b7cc304e8a3, + limb2: 0x4c145db9607b1af, limb3: 0x0 }, r1a0: u384 { - limb0: 0x26964bc2ff40bddadf582927, - limb1: 0x5b95722b0f70f6745c2bdbff, - limb2: 0x236b02ee4ba7fc42, + limb0: 0xce0acc88cca53e7bedba3fb5, + limb1: 0x4b3d0f4d975f397272ca6548, + limb2: 0x11d512fa88c71b94, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfc468b651b4a0b741fcab682, - limb1: 0x947fdb5abdbbf09b1861c9ff, - limb2: 0x168fbfc692ed02, + limb0: 0x62600defed12a6ae67e8f9b, + limb1: 0xb77c7784870dd527e054cdc1, + limb2: 0x14c1b1165c3b4670, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3b05d569dd3cfe7e6ef2d371, - limb1: 0x1ab213c78ac4d75edd6143b4, - limb2: 0x1bb1c4d653a5216f, + limb0: 0xbb2122ebe29583370a80ec17, + limb1: 0xf4704750b76ba5f30f259f86, + limb2: 0x2d28c89327866dca, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b92fea68b4f30a46556d398, - limb1: 0x83327fb29ce9aca58bde417a, - limb2: 0x16153220e81ed45d, + limb0: 0xccec49e08e4381d1cba35735, + limb1: 0xaf519861b3653d82ce8e7520, + limb2: 0x29004ff56bd6a3b7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb0d2a345496d30460462033c, - limb1: 0xa40b16c304ff5061144ae50f, - limb2: 0x26721ea54af25d00, + limb0: 0xda67abe2447b1019aa54f239, + limb1: 0xd0c3f07d4db5deecc0f6fc0f, + limb2: 0x1909a310a2a0fa61, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa5ccabe21466c944dbb14095, - limb1: 0xa4c756d31e5d0f448cde68b2, - limb2: 0x2ae93a053a3d338d, + limb0: 0x850229cc177d82c54143fa44, + limb1: 0x4bd378f8f36001f0e9859f58, + limb2: 0x390b8f1376b4412, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3b05d569dd3cfe7e6ef2d371, - limb1: 0x1ab213c78ac4d75edd6143b4, - limb2: 0x1bb1c4d653a5216f, + limb0: 0xbb2122ebe29583370a80ec17, + limb1: 0xf4704750b76ba5f30f259f86, + limb2: 0x2d28c89327866dca, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9b92fea68b4f30a46556d398, - limb1: 0x83327fb29ce9aca58bde417a, - limb2: 0x16153220e81ed45d, + limb0: 0xccec49e08e4381d1cba35735, + limb1: 0xaf519861b3653d82ce8e7520, + limb2: 0x29004ff56bd6a3b7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb0d2a345496d30460462033c, - limb1: 0xa40b16c304ff5061144ae50f, - limb2: 0x26721ea54af25d00, + limb0: 0xda67abe2447b1019aa54f239, + limb1: 0xd0c3f07d4db5deecc0f6fc0f, + limb2: 0x1909a310a2a0fa61, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa5ccabe21466c944dbb14095, - limb1: 0xa4c756d31e5d0f448cde68b2, - limb2: 0x2ae93a053a3d338d, + limb0: 0x850229cc177d82c54143fa44, + limb1: 0x4bd378f8f36001f0e9859f58, + limb2: 0x390b8f1376b4412, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x20862b1193e454644f783f5f, - limb1: 0x53e011623be45f777881d1fa, - limb2: 0x1add95a26da4772d, + limb0: 0x7515d593cd8ffd2d6eb9b318, + limb1: 0xbdd57f6ab8c5a70902fee2d9, + limb2: 0x1b24e2eef13e1b84, limb3: 0x0 }, r0a1: u384 { - limb0: 0x184abd260b562bfb4732317, - limb1: 0x7ffbe8a09f7ed1d4dc2d72db, - limb2: 0x1d8126e0e1a04aba, + limb0: 0x37a56432fff0f48b7dd974ac, + limb1: 0xcd2e287306e9f706b51c57c2, + limb2: 0x14210650fae032fc, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa95cc6a0467084254d561198, - limb1: 0x8323b4651df3ca086971c5f2, - limb2: 0x8ddc589c88db546, + limb0: 0x9cfcbab6ffd0ee7294a990f, + limb1: 0xa824b505f8e27757f00f21d9, + limb2: 0x22109391d091c338, limb3: 0x0 }, r1a1: u384 { - limb0: 0x93d904befe5c8b115704af76, - limb1: 0x1d435b645112bc8f8c408c92, - limb2: 0x2049e3df84bc4862, + limb0: 0x6e4006572225c7a35fc53142, + limb1: 0xce163967d4d9e832c186f21e, + limb2: 0x10829f43cefc787f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe7ee41c83dc0244a4aff0557, - limb1: 0xac2723cbbe49c3f2e962c87a, - limb2: 0x1a5c70753b8f872d, + limb0: 0x17e6e33a4cfd6482b1106792, + limb1: 0xca3b0a017806d909a2e0e225, + limb2: 0x2db751aae464a052, limb3: 0x0 }, r0a1: u384 { - limb0: 0x48932d0153dca0d9ad7bb3ef, - limb1: 0x8030770fb03579c7f1aaf813, - limb2: 0x23052cdbd5231cf1, + limb0: 0x22a42b0e745ef1a5b7d52893, + limb1: 0xf0439a93a5bcf24a17f3182c, + limb2: 0xf04017b9d5bf0dc, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf67377a19afeceb76ad219d1, - limb1: 0x5100a715ef3663197a630165, - limb2: 0x26e53fc4d5f9343d, + limb0: 0xc803ee8f0141bcef25fe07f6, + limb1: 0x307fb148b69ab24cae2d3a64, + limb2: 0x1bf1b440d1678998, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3614bc03de00109253c939b0, - limb1: 0x5d7e932204b235c7868fd8c9, - limb2: 0xf9a4b8fc5c3b95c, + limb0: 0x54243689f606fa75a4492f65, + limb1: 0x53458e28eaea7346e8c8e72d, + limb2: 0x202960692e54fbc1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x20862b1193e454644f783f5f, - limb1: 0x53e011623be45f777881d1fa, - limb2: 0x1add95a26da4772d, + limb0: 0x7515d593cd8ffd2d6eb9b318, + limb1: 0xbdd57f6ab8c5a70902fee2d9, + limb2: 0x1b24e2eef13e1b84, limb3: 0x0 }, r0a1: u384 { - limb0: 0x184abd260b562bfb4732317, - limb1: 0x7ffbe8a09f7ed1d4dc2d72db, - limb2: 0x1d8126e0e1a04aba, + limb0: 0x37a56432fff0f48b7dd974ac, + limb1: 0xcd2e287306e9f706b51c57c2, + limb2: 0x14210650fae032fc, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa95cc6a0467084254d561198, - limb1: 0x8323b4651df3ca086971c5f2, - limb2: 0x8ddc589c88db546, + limb0: 0x9cfcbab6ffd0ee7294a990f, + limb1: 0xa824b505f8e27757f00f21d9, + limb2: 0x22109391d091c338, limb3: 0x0 }, r1a1: u384 { - limb0: 0x93d904befe5c8b115704af76, - limb1: 0x1d435b645112bc8f8c408c92, - limb2: 0x2049e3df84bc4862, + limb0: 0x6e4006572225c7a35fc53142, + limb1: 0xce163967d4d9e832c186f21e, + limb2: 0x10829f43cefc787f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe7ee41c83dc0244a4aff0557, - limb1: 0xac2723cbbe49c3f2e962c87a, - limb2: 0x1a5c70753b8f872d, + limb0: 0x17e6e33a4cfd6482b1106792, + limb1: 0xca3b0a017806d909a2e0e225, + limb2: 0x2db751aae464a052, limb3: 0x0 }, r0a1: u384 { - limb0: 0x48932d0153dca0d9ad7bb3ef, - limb1: 0x8030770fb03579c7f1aaf813, - limb2: 0x23052cdbd5231cf1, + limb0: 0x22a42b0e745ef1a5b7d52893, + limb1: 0xf0439a93a5bcf24a17f3182c, + limb2: 0xf04017b9d5bf0dc, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf67377a19afeceb76ad219d1, - limb1: 0x5100a715ef3663197a630165, - limb2: 0x26e53fc4d5f9343d, + limb0: 0xc803ee8f0141bcef25fe07f6, + limb1: 0x307fb148b69ab24cae2d3a64, + limb2: 0x1bf1b440d1678998, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3614bc03de00109253c939b0, - limb1: 0x5d7e932204b235c7868fd8c9, - limb2: 0xf9a4b8fc5c3b95c, + limb0: 0x54243689f606fa75a4492f65, + limb1: 0x53458e28eaea7346e8c8e72d, + limb2: 0x202960692e54fbc1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x65f973bfc82816a00b5ed6c8, - limb1: 0x692f2910d47b8fa09af19bfa, - limb2: 0x2ea153192e2e4b2a, + limb0: 0x62ed5e619527551ed7689295, + limb1: 0x12dc6609481d7f59f6967fcf, + limb2: 0x1310a825f686f1a7, limb3: 0x0 }, r0a1: u384 { - limb0: 0x76d12902f393e6b843b59394, - limb1: 0xb3e62aac703d04c2e7b0f3d7, - limb2: 0xb463354dffb27a5, + limb0: 0xb7874db30e961743392b9c51, + limb1: 0x91998ad5e7a6b0464cc04628, + limb2: 0x259281f10c9601b3, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2ba7ad9cf627b6b22c59455, - limb1: 0x2a1bb70e09b2e82c3e47006a, - limb2: 0x2fd508e21d2643c2, + limb0: 0xa9f9feea4926c457825e415b, + limb1: 0x9f9a9340eeba1468ea9b5752, + limb2: 0xaf68681a038037b, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd4aeda38605326d0e81104d3, - limb1: 0x341ad2e7fbe765c292255260, - limb2: 0x1409344682b4bcfb, + limb0: 0xae7aa6951500bc0dd0793730, + limb1: 0xde7d3b0a5f198878c44f3bf3, + limb2: 0x1fef72a0ea0917d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x65f973bfc82816a00b5ed6c8, - limb1: 0x692f2910d47b8fa09af19bfa, - limb2: 0x2ea153192e2e4b2a, + limb0: 0x62ed5e619527551ed7689295, + limb1: 0x12dc6609481d7f59f6967fcf, + limb2: 0x1310a825f686f1a7, limb3: 0x0 }, r0a1: u384 { - limb0: 0x76d12902f393e6b843b59394, - limb1: 0xb3e62aac703d04c2e7b0f3d7, - limb2: 0xb463354dffb27a5, + limb0: 0xb7874db30e961743392b9c51, + limb1: 0x91998ad5e7a6b0464cc04628, + limb2: 0x259281f10c9601b3, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2ba7ad9cf627b6b22c59455, - limb1: 0x2a1bb70e09b2e82c3e47006a, - limb2: 0x2fd508e21d2643c2, + limb0: 0xa9f9feea4926c457825e415b, + limb1: 0x9f9a9340eeba1468ea9b5752, + limb2: 0xaf68681a038037b, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd4aeda38605326d0e81104d3, - limb1: 0x341ad2e7fbe765c292255260, - limb2: 0x1409344682b4bcfb, + limb0: 0xae7aa6951500bc0dd0793730, + limb1: 0xde7d3b0a5f198878c44f3bf3, + limb2: 0x1fef72a0ea0917d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3df63f78ca41825f71513656, - limb1: 0xa16f76d6dca72f822cd1b979, - limb2: 0x24074789c689076e, + limb0: 0xe3aba0c9a4a882c62fa9ec6c, + limb1: 0xccea7b0e1cd14ed74090d903, + limb2: 0x1a29efe8500d2c1b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7c65d2ce7ee1b167a1b395b9, - limb1: 0xd3558980781fa7753c7fde90, - limb2: 0xcc7cdfc6d6824b2, + limb0: 0xf2ebeabb6bf2e9c41b3312a9, + limb1: 0xd3ae68aaa655b1622c03f3cf, + limb2: 0x18f61d099be84922, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc7e014db4d932bfadbfb4c97, - limb1: 0xfe968d09ca35d652782edede, - limb2: 0x2714d8a7f7ac99aa, + limb0: 0xe0aa5743250cb28f2dd933a3, + limb1: 0x9162556f356db1960ff82818, + limb2: 0x2647fbd9b7c6c78f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc042d95d14d89d73d1d3e061, - limb1: 0xa0cb423edd0e2b0b102ac8d3, - limb2: 0x1925e10615942978, + limb0: 0x336a0d6a6a24b71ba0991030, + limb1: 0x75b2e4102dcd972364c97023, + limb2: 0x2a45c17960947291, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe849e0690433a3396964e619, - limb1: 0x98c389c12d7a206e54762d7, - limb2: 0x864076bc0b020bf, + limb0: 0x5eef0067546495292a8af5d0, + limb1: 0x95c091a7a035297b26f2bfaf, + limb2: 0x2bf4b7d2530c763, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa242b31c9422608243b50776, - limb1: 0xcbfcf58a3fd5f8ea9af82930, - limb2: 0x90fe7f0ed71fb49, + limb0: 0x3a6e8e7842df56008f72fdd4, + limb1: 0x517c7fbbc2f7b80bdf1833b1, + limb2: 0x2351f1aa1054e138, limb3: 0x0 }, r1a0: u384 { - limb0: 0x427b2626900168aa75a20061, - limb1: 0xae23c7016864465bf55e8a61, - limb2: 0x2135ea0494227b45, + limb0: 0x22ef0aa84ac86846aabf86a7, + limb1: 0xa054ff24e259f78edebe1a70, + limb2: 0x64bfecadf34c645, limb3: 0x0 }, r1a1: u384 { - limb0: 0x53807df6e3c1d41c92f9e9ee, - limb1: 0x46cfadece71164dd5a0623b5, - limb2: 0x1b07614c66d53f5e, + limb0: 0x7f2ad2d21e36bfa5f2ae3156, + limb1: 0x8f0272eb648ec0915e74024c, + limb2: 0x44a2e6eb08ae06a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3df63f78ca41825f71513656, - limb1: 0xa16f76d6dca72f822cd1b979, - limb2: 0x24074789c689076e, + limb0: 0xe3aba0c9a4a882c62fa9ec6c, + limb1: 0xccea7b0e1cd14ed74090d903, + limb2: 0x1a29efe8500d2c1b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7c65d2ce7ee1b167a1b395b9, - limb1: 0xd3558980781fa7753c7fde90, - limb2: 0xcc7cdfc6d6824b2, + limb0: 0xf2ebeabb6bf2e9c41b3312a9, + limb1: 0xd3ae68aaa655b1622c03f3cf, + limb2: 0x18f61d099be84922, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc7e014db4d932bfadbfb4c97, - limb1: 0xfe968d09ca35d652782edede, - limb2: 0x2714d8a7f7ac99aa, + limb0: 0xe0aa5743250cb28f2dd933a3, + limb1: 0x9162556f356db1960ff82818, + limb2: 0x2647fbd9b7c6c78f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc042d95d14d89d73d1d3e061, - limb1: 0xa0cb423edd0e2b0b102ac8d3, - limb2: 0x1925e10615942978, + limb0: 0x336a0d6a6a24b71ba0991030, + limb1: 0x75b2e4102dcd972364c97023, + limb2: 0x2a45c17960947291, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe849e0690433a3396964e619, - limb1: 0x98c389c12d7a206e54762d7, - limb2: 0x864076bc0b020bf, + limb0: 0x5eef0067546495292a8af5d0, + limb1: 0x95c091a7a035297b26f2bfaf, + limb2: 0x2bf4b7d2530c763, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa242b31c9422608243b50776, - limb1: 0xcbfcf58a3fd5f8ea9af82930, - limb2: 0x90fe7f0ed71fb49, + limb0: 0x3a6e8e7842df56008f72fdd4, + limb1: 0x517c7fbbc2f7b80bdf1833b1, + limb2: 0x2351f1aa1054e138, limb3: 0x0 }, r1a0: u384 { - limb0: 0x427b2626900168aa75a20061, - limb1: 0xae23c7016864465bf55e8a61, - limb2: 0x2135ea0494227b45, + limb0: 0x22ef0aa84ac86846aabf86a7, + limb1: 0xa054ff24e259f78edebe1a70, + limb2: 0x64bfecadf34c645, limb3: 0x0 }, r1a1: u384 { - limb0: 0x53807df6e3c1d41c92f9e9ee, - limb1: 0x46cfadece71164dd5a0623b5, - limb2: 0x1b07614c66d53f5e, + limb0: 0x7f2ad2d21e36bfa5f2ae3156, + limb1: 0x8f0272eb648ec0915e74024c, + limb2: 0x44a2e6eb08ae06a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa5c3ccf01a951105dd75f94d, - limb1: 0x82a9f0d13174a4a3a63bfc49, - limb2: 0x1f8583025bcbde7b, + limb0: 0x3b9ed5020f61d802f8bbd82, + limb1: 0x45b79d5921df6661673bbcbe, + limb2: 0x15f8b8b266749a53, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7781d4ba1adb6ac1f842f4d, - limb1: 0x1cb1ae18917edd8ca864c62a, - limb2: 0xe3fc3d3a49635a, + limb0: 0xf64d32d179bffdf1aa81b2b4, + limb1: 0x734761a1990bb135ee8fdce2, + limb2: 0x15fa720cf3300c54, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1231ed68a1df6f055a3d0195, - limb1: 0xa364228de1f8b75ece047897, - limb2: 0x1628fce71fb56927, + limb0: 0xe42b55bdbbe7a6027d58012, + limb1: 0xf7153c0ec2841a764adfb18e, + limb2: 0x2db37d9ebf9082ff, limb3: 0x0 }, r1a1: u384 { - limb0: 0x415baf3b592c976c3ee6e348, - limb1: 0x35e71f0194d6974a8da7d093, - limb2: 0x27b2ff2220b58b8f, + limb0: 0x862bbe34722c6dd2ad67d035, + limb1: 0x29664b31b33ee275d8d8f81d, + limb2: 0x25774695478d277c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa5c3ccf01a951105dd75f94d, - limb1: 0x82a9f0d13174a4a3a63bfc49, - limb2: 0x1f8583025bcbde7b, + limb0: 0x3b9ed5020f61d802f8bbd82, + limb1: 0x45b79d5921df6661673bbcbe, + limb2: 0x15f8b8b266749a53, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7781d4ba1adb6ac1f842f4d, - limb1: 0x1cb1ae18917edd8ca864c62a, - limb2: 0xe3fc3d3a49635a, + limb0: 0xf64d32d179bffdf1aa81b2b4, + limb1: 0x734761a1990bb135ee8fdce2, + limb2: 0x15fa720cf3300c54, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1231ed68a1df6f055a3d0195, - limb1: 0xa364228de1f8b75ece047897, - limb2: 0x1628fce71fb56927, + limb0: 0xe42b55bdbbe7a6027d58012, + limb1: 0xf7153c0ec2841a764adfb18e, + limb2: 0x2db37d9ebf9082ff, limb3: 0x0 }, r1a1: u384 { - limb0: 0x415baf3b592c976c3ee6e348, - limb1: 0x35e71f0194d6974a8da7d093, - limb2: 0x27b2ff2220b58b8f, + limb0: 0x862bbe34722c6dd2ad67d035, + limb1: 0x29664b31b33ee275d8d8f81d, + limb2: 0x25774695478d277c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x920e9bfca06db481fbc1cfe6, - limb1: 0x43f8be76958260af05be0f38, - limb2: 0x26ba84269427bae3, + limb0: 0x16b5992d7cec8fd7de956216, + limb1: 0x9d0906788faa15cff36f06eb, + limb2: 0x27c19c0408fc67ff, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd3ab9aa6e827741aa4d32792, - limb1: 0x2c8b283fde4c90b963d334e5, - limb2: 0x253ca16c771b3565, + limb0: 0x99f7ab70228f3aea76e96741, + limb1: 0x3204a618d634b7ad10e5565a, + limb2: 0xdc7898afaebecd9, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd1966ba3b4c709578310895e, - limb1: 0xa9b126ec8b1f0398a518c811, - limb2: 0x1174e0717594f92a, + limb0: 0x67c77eae7236738502cb8b36, + limb1: 0xcea1f2a21b655e607907fd62, + limb2: 0x16b933cb1fbdf744, limb3: 0x0 }, r1a1: u384 { - limb0: 0x71a172b18c4050c28e13eab8, - limb1: 0xd819023026fc091e4234d4d9, - limb2: 0x6a2309b945f08a7, + limb0: 0x8ef422da178a6af58771f92d, + limb1: 0xf7c4b1e3f07ccf969985f566, + limb2: 0x2d0e73c3fe99376d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb964e3c6d975ca8cf820a505, - limb1: 0x58cf1dfe1e77f86538998d74, - limb2: 0x253f8f7c9eb4af1, + limb0: 0xe42e00339da188be91d47528, + limb1: 0xf913d16574d9e0473fbfcee8, + limb2: 0x1e4d9a94e1d900af, limb3: 0x0 }, r0a1: u384 { - limb0: 0x751409cbae1c0030ee5977d1, - limb1: 0xe203b703551126fdae59e500, - limb2: 0x2e4d7a2dbc83f9b5, + limb0: 0x4b4e0320208e8e24cba22a90, + limb1: 0xec25ecb52f7ed967179437c, + limb2: 0x85d7bd693b72791, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3bb2d7500573a130dfcc7b70, - limb1: 0x2e94772d1e8a4db8783ea2f7, - limb2: 0xb43fdec6bd93bce, + limb0: 0x8e5dccda383d4764c87318ac, + limb1: 0xc9eea850c4f895049a6029d9, + limb2: 0x2e6ba5d68c3f9342, limb3: 0x0 }, r1a1: u384 { - limb0: 0xdcad2320f5fe6edb3ee742ff, - limb1: 0xdb00d689081d6770c6978582, - limb2: 0x6029475ae5587e5, + limb0: 0x11df7081b994e72c6a43c5c0, + limb1: 0xda827b6e851ef066e3b7d749, + limb2: 0x2ebbfcbf39599fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x920e9bfca06db481fbc1cfe6, - limb1: 0x43f8be76958260af05be0f38, - limb2: 0x26ba84269427bae3, + limb0: 0x16b5992d7cec8fd7de956216, + limb1: 0x9d0906788faa15cff36f06eb, + limb2: 0x27c19c0408fc67ff, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd3ab9aa6e827741aa4d32792, - limb1: 0x2c8b283fde4c90b963d334e5, - limb2: 0x253ca16c771b3565, + limb0: 0x99f7ab70228f3aea76e96741, + limb1: 0x3204a618d634b7ad10e5565a, + limb2: 0xdc7898afaebecd9, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd1966ba3b4c709578310895e, - limb1: 0xa9b126ec8b1f0398a518c811, - limb2: 0x1174e0717594f92a, + limb0: 0x67c77eae7236738502cb8b36, + limb1: 0xcea1f2a21b655e607907fd62, + limb2: 0x16b933cb1fbdf744, limb3: 0x0 }, r1a1: u384 { - limb0: 0x71a172b18c4050c28e13eab8, - limb1: 0xd819023026fc091e4234d4d9, - limb2: 0x6a2309b945f08a7, + limb0: 0x8ef422da178a6af58771f92d, + limb1: 0xf7c4b1e3f07ccf969985f566, + limb2: 0x2d0e73c3fe99376d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb964e3c6d975ca8cf820a505, - limb1: 0x58cf1dfe1e77f86538998d74, - limb2: 0x253f8f7c9eb4af1, + limb0: 0xe42e00339da188be91d47528, + limb1: 0xf913d16574d9e0473fbfcee8, + limb2: 0x1e4d9a94e1d900af, limb3: 0x0 }, r0a1: u384 { - limb0: 0x751409cbae1c0030ee5977d1, - limb1: 0xe203b703551126fdae59e500, - limb2: 0x2e4d7a2dbc83f9b5, + limb0: 0x4b4e0320208e8e24cba22a90, + limb1: 0xec25ecb52f7ed967179437c, + limb2: 0x85d7bd693b72791, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3bb2d7500573a130dfcc7b70, - limb1: 0x2e94772d1e8a4db8783ea2f7, - limb2: 0xb43fdec6bd93bce, + limb0: 0x8e5dccda383d4764c87318ac, + limb1: 0xc9eea850c4f895049a6029d9, + limb2: 0x2e6ba5d68c3f9342, limb3: 0x0 }, r1a1: u384 { - limb0: 0xdcad2320f5fe6edb3ee742ff, - limb1: 0xdb00d689081d6770c6978582, - limb2: 0x6029475ae5587e5, + limb0: 0x11df7081b994e72c6a43c5c0, + limb1: 0xda827b6e851ef066e3b7d749, + limb2: 0x2ebbfcbf39599fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x44ec71963665d6ec8ad74841, - limb1: 0x8403830d652edbde8339e929, - limb2: 0x100fb102d85f5085, + limb0: 0x22a9795b0e8e55fb3474ff8, + limb1: 0x70e50ebe2c6dde23e039a9ab, + limb2: 0xc84efc0dedac731, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc055c9daf26d35310e7b1e74, - limb1: 0x40cdbeaffc8383e3cdc8926, - limb2: 0x6fd31831cc5c2e2, + limb0: 0xebcc47414956f32c736db209, + limb1: 0xe48b25931893a4b431e38bd9, + limb2: 0x7aec12e31fd78b1, limb3: 0x0 }, r1a0: u384 { - limb0: 0xad2ce478f7297f6138ae1c8c, - limb1: 0x4d31d6f7382542621c5b6e17, - limb2: 0x7dbf7c3c0f14e33, + limb0: 0x9ab88946eda7695b92c5b95c, + limb1: 0x17b72be8d5f0268f734e389c, + limb2: 0x3fc0c53b330cec4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe4640196247c27251483088e, - limb1: 0x34dea70f9956ebc54e0606ba, - limb2: 0x8b41cd44b48eaaa, + limb0: 0x1d666fec28038f9c53d4028f, + limb1: 0xebda0adb7dbd78f18b6059c6, + limb2: 0x130beb61efdd4822, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x44ec71963665d6ec8ad74841, - limb1: 0x8403830d652edbde8339e929, - limb2: 0x100fb102d85f5085, + limb0: 0x22a9795b0e8e55fb3474ff8, + limb1: 0x70e50ebe2c6dde23e039a9ab, + limb2: 0xc84efc0dedac731, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc055c9daf26d35310e7b1e74, - limb1: 0x40cdbeaffc8383e3cdc8926, - limb2: 0x6fd31831cc5c2e2, + limb0: 0xebcc47414956f32c736db209, + limb1: 0xe48b25931893a4b431e38bd9, + limb2: 0x7aec12e31fd78b1, limb3: 0x0 }, r1a0: u384 { - limb0: 0xad2ce478f7297f6138ae1c8c, - limb1: 0x4d31d6f7382542621c5b6e17, - limb2: 0x7dbf7c3c0f14e33, + limb0: 0x9ab88946eda7695b92c5b95c, + limb1: 0x17b72be8d5f0268f734e389c, + limb2: 0x3fc0c53b330cec4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe4640196247c27251483088e, - limb1: 0x34dea70f9956ebc54e0606ba, - limb2: 0x8b41cd44b48eaaa, + limb0: 0x1d666fec28038f9c53d4028f, + limb1: 0xebda0adb7dbd78f18b6059c6, + limb2: 0x130beb61efdd4822, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa4dc3d37041029c7b2f1bb9, - limb1: 0xf72869e330906647a7d54af8, - limb2: 0x705bd30bad6ce42, + limb0: 0x2f597c45c5584b7e592716cd, + limb1: 0x3435693e93bd2e5b7c3039f5, + limb2: 0xd95f66f6ccbed98, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb00eef39b09348fd65e27aec, - limb1: 0xd5e053aa5ae39359fac6cdbc, - limb2: 0x90e03f1f820fe9a, + limb0: 0xe3e61eb2a2a490eecb7985ae, + limb1: 0xfd8b59c604a040370fa982db, + limb2: 0x25d97f4c77679f84, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7f56704e86148b1a5595647e, - limb1: 0xb8e4acc00d27e4eaf2d3de14, - limb2: 0x160398dceafe1fbe, + limb0: 0x95af25ec99734184c628984b, + limb1: 0x3c7dd94127941e3cfddf3a24, + limb2: 0x61df39750a48e99, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7c39f499101722b5d82ceec4, - limb1: 0xaf99a11bb8ab6c8134832009, - limb2: 0x2d7388a9d5187a36, + limb0: 0x61b47aa1f7e3e89de63aac39, + limb1: 0xd5d3b51d839e109ea20db37c, + limb2: 0x21abf578638a11eb, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa4dc3d37041029c7b2f1bb9, - limb1: 0xf72869e330906647a7d54af8, - limb2: 0x705bd30bad6ce42, + limb0: 0x2f597c45c5584b7e592716cd, + limb1: 0x3435693e93bd2e5b7c3039f5, + limb2: 0xd95f66f6ccbed98, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb00eef39b09348fd65e27aec, - limb1: 0xd5e053aa5ae39359fac6cdbc, - limb2: 0x90e03f1f820fe9a, + limb0: 0xe3e61eb2a2a490eecb7985ae, + limb1: 0xfd8b59c604a040370fa982db, + limb2: 0x25d97f4c77679f84, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7f56704e86148b1a5595647e, - limb1: 0xb8e4acc00d27e4eaf2d3de14, - limb2: 0x160398dceafe1fbe, + limb0: 0x95af25ec99734184c628984b, + limb1: 0x3c7dd94127941e3cfddf3a24, + limb2: 0x61df39750a48e99, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7c39f499101722b5d82ceec4, - limb1: 0xaf99a11bb8ab6c8134832009, - limb2: 0x2d7388a9d5187a36, + limb0: 0x61b47aa1f7e3e89de63aac39, + limb1: 0xd5d3b51d839e109ea20db37c, + limb2: 0x21abf578638a11eb, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x26743d3c5ceab5151856abc8, - limb1: 0x2bc840c6b3375132f6df6c4d, - limb2: 0xf20cc4455c9206b, + limb0: 0xd46b0ba3969f9d9276b04d8b, + limb1: 0xdafbcd3ff819533d3316c20d, + limb2: 0x172685f08f83614e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x75257f283994114ee03b667e, - limb1: 0xb71eada78256c22a8b22564d, - limb2: 0x2c4f6002e64db7e4, + limb0: 0x19d91df9fe17c20a61d19008, + limb1: 0x4ac2bfb84a44a339476014b6, + limb2: 0x2108251ac695aaff, limb3: 0x0 }, r1a0: u384 { - limb0: 0xadeaeea86f50da58c232d0b5, - limb1: 0xe988059d0234448257239cec, - limb2: 0x23c7423d92bbc634, + limb0: 0x1d788433b2d4f6f34d99a6ea, + limb1: 0xc4efa4c581c91424e9a27e68, + limb2: 0x229bc6698e7fa365, limb3: 0x0 }, r1a1: u384 { - limb0: 0x6afee648e46e570b43f3696d, - limb1: 0x9a3f1aae0067f1de3d0a489, - limb2: 0xa7256957d6a8ed, + limb0: 0x585423a3270a0228fba6c848, + limb1: 0x8df8a73570f1ea44d6a1e4be, + limb2: 0x1592cc66c2cd801f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x26743d3c5ceab5151856abc8, - limb1: 0x2bc840c6b3375132f6df6c4d, - limb2: 0xf20cc4455c9206b, + limb0: 0xd46b0ba3969f9d9276b04d8b, + limb1: 0xdafbcd3ff819533d3316c20d, + limb2: 0x172685f08f83614e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x75257f283994114ee03b667e, - limb1: 0xb71eada78256c22a8b22564d, - limb2: 0x2c4f6002e64db7e4, + limb0: 0x19d91df9fe17c20a61d19008, + limb1: 0x4ac2bfb84a44a339476014b6, + limb2: 0x2108251ac695aaff, limb3: 0x0 }, r1a0: u384 { - limb0: 0xadeaeea86f50da58c232d0b5, - limb1: 0xe988059d0234448257239cec, - limb2: 0x23c7423d92bbc634, + limb0: 0x1d788433b2d4f6f34d99a6ea, + limb1: 0xc4efa4c581c91424e9a27e68, + limb2: 0x229bc6698e7fa365, limb3: 0x0 }, r1a1: u384 { - limb0: 0x6afee648e46e570b43f3696d, - limb1: 0x9a3f1aae0067f1de3d0a489, - limb2: 0xa7256957d6a8ed, + limb0: 0x585423a3270a0228fba6c848, + limb1: 0x8df8a73570f1ea44d6a1e4be, + limb2: 0x1592cc66c2cd801f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9894b9b6df6285e00cb3ef9d, - limb1: 0xc7799b231f547596527979f9, - limb2: 0x1873cf42f2befcbc, + limb0: 0xe7706744b8bc6de8adffa8fb, + limb1: 0xda64ff702f6a33f19c4c8b78, + limb2: 0xdbf8b7b567148bd, limb3: 0x0 }, r0a1: u384 { - limb0: 0xea5b37d753c87bdd55f0ed0, - limb1: 0x70d0582e29fd33896e945be5, - limb2: 0x273059304eef6b83, + limb0: 0xb2d9b2bfb4b0c5479e75c62c, + limb1: 0x8dd0656ab8b5ef3e0e28f09f, + limb2: 0x23681483d8d0eb84, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1a8c1b6d717a3b41ece55725, - limb1: 0x7b31c1b97f15745a6d80ea0d, - limb2: 0x2cd26d3a7bbe93e6, + limb0: 0x2253fbc49469c2313fa71ed8, + limb1: 0x6dc1c03748a743f727e97a97, + limb2: 0x2aabf71729efae9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe2ad8bc0279b5c304c489ca6, - limb1: 0x176d1c945108ce77fcd238cd, - limb2: 0xde3c7c3f1c3d01b, + limb0: 0x3323537343a0bba2d54843ec, + limb1: 0x5de45ef0d86e54ce607509ba, + limb2: 0x20de604beea42785, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3980a9ac8c34a235d2616212, - limb1: 0x84c8a8ab074ce118b68f30e9, - limb2: 0x13d1902579c8a95e, + limb0: 0xa4214da5f99cf79f31e7cab8, + limb1: 0xcdbc1bb56a306986b203dd5a, + limb2: 0xeba0694c1c072e3, limb3: 0x0 }, r0a1: u384 { - limb0: 0x84b1be8046674b6544cdbd07, - limb1: 0x198c1a70db0768c46ee0879f, - limb2: 0xb7e46866f7c1d4f, + limb0: 0x50f94c6a9d69c2b70eadf618, + limb1: 0x6e33f5c7148313958afde193, + limb2: 0x2590adfbeb8cd63a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5aa04f6da050797974642dff, - limb1: 0x67018b676db95697c6fc0e94, - limb2: 0x174b5365db908344, + limb0: 0x5344f6b18cbd65101b2877e6, + limb1: 0x40393570e382508f0711baab, + limb2: 0x2552d445eb420c36, limb3: 0x0 }, r1a1: u384 { - limb0: 0x12ae4d7bff5800094457c75f, - limb1: 0xaf7fb1cf0adfdefc0943c20d, - limb2: 0x2e168cd37dc90c25, + limb0: 0x74a5e277b95cc7f2f26ada, + limb1: 0x2899472c6fef63b4d4401b76, + limb2: 0x14653b6580e35c96, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9894b9b6df6285e00cb3ef9d, - limb1: 0xc7799b231f547596527979f9, - limb2: 0x1873cf42f2befcbc, + limb0: 0xe7706744b8bc6de8adffa8fb, + limb1: 0xda64ff702f6a33f19c4c8b78, + limb2: 0xdbf8b7b567148bd, limb3: 0x0 }, r0a1: u384 { - limb0: 0xea5b37d753c87bdd55f0ed0, - limb1: 0x70d0582e29fd33896e945be5, - limb2: 0x273059304eef6b83, + limb0: 0xb2d9b2bfb4b0c5479e75c62c, + limb1: 0x8dd0656ab8b5ef3e0e28f09f, + limb2: 0x23681483d8d0eb84, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1a8c1b6d717a3b41ece55725, - limb1: 0x7b31c1b97f15745a6d80ea0d, - limb2: 0x2cd26d3a7bbe93e6, + limb0: 0x2253fbc49469c2313fa71ed8, + limb1: 0x6dc1c03748a743f727e97a97, + limb2: 0x2aabf71729efae9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe2ad8bc0279b5c304c489ca6, - limb1: 0x176d1c945108ce77fcd238cd, - limb2: 0xde3c7c3f1c3d01b, + limb0: 0x3323537343a0bba2d54843ec, + limb1: 0x5de45ef0d86e54ce607509ba, + limb2: 0x20de604beea42785, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3980a9ac8c34a235d2616212, - limb1: 0x84c8a8ab074ce118b68f30e9, - limb2: 0x13d1902579c8a95e, + limb0: 0xa4214da5f99cf79f31e7cab8, + limb1: 0xcdbc1bb56a306986b203dd5a, + limb2: 0xeba0694c1c072e3, limb3: 0x0 }, r0a1: u384 { - limb0: 0x84b1be8046674b6544cdbd07, - limb1: 0x198c1a70db0768c46ee0879f, - limb2: 0xb7e46866f7c1d4f, + limb0: 0x50f94c6a9d69c2b70eadf618, + limb1: 0x6e33f5c7148313958afde193, + limb2: 0x2590adfbeb8cd63a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5aa04f6da050797974642dff, - limb1: 0x67018b676db95697c6fc0e94, - limb2: 0x174b5365db908344, + limb0: 0x5344f6b18cbd65101b2877e6, + limb1: 0x40393570e382508f0711baab, + limb2: 0x2552d445eb420c36, limb3: 0x0 }, r1a1: u384 { - limb0: 0x12ae4d7bff5800094457c75f, - limb1: 0xaf7fb1cf0adfdefc0943c20d, - limb2: 0x2e168cd37dc90c25, + limb0: 0x74a5e277b95cc7f2f26ada, + limb1: 0x2899472c6fef63b4d4401b76, + limb2: 0x14653b6580e35c96, limb3: 0x0 } }, @@ -4678,2395 +4678,2395 @@ mod pairing_tests { let hint = MPCheckHintBN254 { lambda_root: E12D { w0: u384 { - limb0: 0x7b012eeba411e7545c404bbe, - limb1: 0xa754caf0589c24909e590228, - limb2: 0x13d296c9e213feb6, + limb0: 0xca290a885d5586f335dd365a, + limb1: 0x22443b1dbb5ae87e19167dc4, + limb2: 0x15b0c60344049c9f, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xf922eeaae57369160eed3935, - limb1: 0x3f2dc8035f4fcb812493ecf5, - limb2: 0x2592f4cb693ff488, + limb0: 0xd9b350851e3bdfefc4f8d3a4, + limb1: 0x8d46d2ef61c99655d477ca19, + limb2: 0x7489a29a6bd37f, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xaaa473d1dfe6dc52d8739f32, - limb1: 0xb2943e6803563bd7a19c3e52, - limb2: 0x1ef946e5c253a585, + limb0: 0x408e896793bd7236e567d2b8, + limb1: 0xea2a1c6e78d8ad9f0cc44c93, + limb2: 0x17ea5c0ce2015d89, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x22154af4f7326b5f6c5c441d, - limb1: 0x13dcedb3932e6170da976a55, - limb2: 0x10788fdd560077ba, + limb0: 0x3d232020e01f08443f199e6b, + limb1: 0xef6ca005c96039ce41498aab, + limb2: 0xd8cee876ecca47f, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xddcab5a98707253769c5f208, - limb1: 0xd4c4e5476c43a742cdb6a8d9, - limb2: 0x1214863b5a385761, + limb0: 0xcd449cccf0962b5b55b2fd69, + limb1: 0x2b50f1381b398b00b27590e5, + limb2: 0x5cf9948502befab, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x466cc661c364df53da613fd3, - limb1: 0x220477644169a23e4da44be, - limb2: 0x2d834f48c82ae9c3, + limb0: 0xc80a6fecffa85e552d4a8847, + limb1: 0xd5df273ebc4ef7ce6c155d0b, + limb2: 0xc856a0149283504, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, lambda_root_inverse: E12D { w0: u384 { - limb0: 0xe1f18dc463f422b115091e4e, - limb1: 0x9e002a8978058f9e7a63f300, - limb2: 0x228c0387c56429e2, + limb0: 0xf9165bc84dbd182aa8316bc4, + limb1: 0x2c133001516c61b42f17e955, + limb2: 0x1e2c501069f40ccc, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xbcf34ef6b05b42018a8e4244, - limb1: 0x2b5379dda123d70585dfe1d3, - limb2: 0x4c1c380be5a7918, + limb0: 0xf2fc4ecf8b5b14b163d2e2f4, + limb1: 0xd77be5339b45b2e04cc18e06, + limb2: 0xcb58f3f2cf4f42a, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x60b5d0e527d9fe47f237c679, - limb1: 0xfe2f8ac89fa4d2940d5a4751, - limb2: 0x1596985fc21a9bc0, + limb0: 0xa5b2fd42e6fc4dac764459dc, + limb1: 0x7087e01764c3f081eac39f19, + limb2: 0x2f31b865584c3288, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xcf1b962ea7f8d0d64ef46698, - limb1: 0x8b92e9881848e8ce17e27b94, - limb2: 0x2f89e304609a097e, + limb0: 0xad8af38203fa60a781adaeb5, + limb1: 0x7e9bc71cf5141eb0c3225b75, + limb2: 0x1ca180ebc027ff71, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xfa540d084ab4f7ed9aa82621, - limb1: 0xbba5da375416c55a9f3074d3, - limb2: 0x1dd999f8df8a24b7, + limb0: 0x9b3ffcce58d9883b42831589, + limb1: 0x1eec7ae71d5e8fdbe5ac141a, + limb2: 0x136a97162d3de91a, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xe3c99364c56a5ade4584af1a, - limb1: 0x9feab9c263b0ff02f3b07928, - limb2: 0x12fc2d7015dfb5e, + limb0: 0x57d7ed90efc307e5f76f1b47, + limb1: 0x4100a00eb0bc81e9b261b2a8, + limb2: 0x24fde20804ffebd3, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, w: MillerLoopResultScalingFactor { w0: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w2: u384 { - limb0: 0xc2778d80388a54eae80e565b, - limb1: 0xf25dc130d86b34cb0fbe750e, - limb2: 0x2d47bdc1ad79a2d8, + w2: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w4: u384 { + limb0: 0x73692b9376d090b20e5ccfca, + limb1: 0x7bd294b9c757d6f7aa4c6347, + limb2: 0x778f7e113269a6, limb3: 0x0 }, - w4: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w8: u384 { - limb0: 0xa228aa43fdb7f215226ece12, - limb1: 0x22463bd8b6519b59af036109, - limb2: 0x10bd041a04b54229, + w8: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w10: u384 { + limb0: 0xc24790f6d545aed52a2fbdb8, + limb1: 0x184dac0e71909eb223ea52bf, + limb2: 0x279a0a9dbd98089c, limb3: 0x0 - }, - w10: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } + } }, Ris: array![ E12D { w0: u384 { - limb0: 0xd556ad868e1c8a23018de366, - limb1: 0xf6dd7eb3a4ca3a1e7ef76eee, - limb2: 0x10e7de936a1df313, + limb0: 0xc23cbce2b6a75c34330f51fd, + limb1: 0xecc05051800e2cfbf57b29f8, + limb2: 0x2427540cc06e940b, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe7ca2e7173a67b8cb964f987, - limb1: 0x6bba2dc3b0895b39ac88180d, - limb2: 0x16af72cdbb761501, + limb0: 0x8b8a60ff08b7f8e8a11692b1, + limb1: 0x1c74909404e06d66895c3d6e, + limb2: 0x1ee3260865731bf8, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x63c29ac15aefde57ee30edba, - limb1: 0x8d94e1db488db17b83adcd5e, - limb2: 0x1c2577ff6a784372, + limb0: 0x6978c7a57ac491654d80f93b, + limb1: 0x2d0aa578733e1e9a75e0d4e6, + limb2: 0x2f6da873030b0a1c, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x896aab8d1dd49764e3ff579e, - limb1: 0x2e9f8b1d93bc3b4bfb95244e, - limb2: 0x263785964f541a4, + limb0: 0x2b496f9b064ec124053d8fcc, + limb1: 0x38c60a2aa6db85b476fd8edd, + limb2: 0x22b0048f9b2f7af, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x62c45e6c7376294e8f8debf1, - limb1: 0x83f823a2b1f4e0ee3deabf72, - limb2: 0x257fb4016329f43a, + limb0: 0xd0001bbd27504a1139dc155b, + limb1: 0x34057bd23069141f40c9691b, + limb2: 0xaaaaeb9249e00da, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x5749cc0e075399a582f69903, - limb1: 0x2d72d91c384593d887898b98, - limb2: 0x65c188e9bc00fa5, + limb0: 0x9583313d9fa2550cd4784e8f, + limb1: 0x9f210bf3ca896f9183ab9dda, + limb2: 0x242388994639fab4, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x5089c3d2e45db42368e1ce48, - limb1: 0xca45ed5e074dd5414bcb8b97, - limb2: 0x7bc6435b16e58e5, + limb0: 0xcca0c959df4d14b0694a94e0, + limb1: 0xee744033f8c5d94516a23146, + limb2: 0x1c5f17f2a3a30684, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x232990bad722d9db55141074, - limb1: 0x6b285822ae913cc01bf48292, - limb2: 0xd5e51d681fbef1d, + limb0: 0x30c1356e4ec93b611d76aaa3, + limb1: 0x654b30acb4318efc8b292571, + limb2: 0xb3110ec082344d5, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xfdb731f822af5dd59f0f25dc, - limb1: 0x9b6f3d408e0d9d5a48776040, - limb2: 0x21153a518ba7f11d, + limb0: 0xd2764ab9b29f269eca16b8ea, + limb1: 0x3f69614ffa992dd3c39e6b2e, + limb2: 0xc7139fb36f16f7a, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x18339d7a32feff4a429fa252, - limb1: 0xf1cba1fbd807474aa0757188, - limb2: 0xc9044ede7dc2972, + limb0: 0x4e52358174a938be0bbfdf25, + limb1: 0xd7bc341e7a8b5cfc7547dc8c, + limb2: 0x92c48b46fb527a7, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe36e7364dcd19cce82abe496, - limb1: 0xee027e6e9ce61240b9e3fb9f, - limb2: 0x2aeaa027c88b1f27, + limb0: 0x981719694be1416853a8ffa3, + limb1: 0x8abbebc48b98dc3e1f103acb, + limb2: 0xfb81a3d828111c9, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb857fcbab3e82c5a0f3c755f, - limb1: 0x1a1fcf78b01830fa0ee88d4b, - limb2: 0x2a8546a248dc800f, + limb0: 0x138c06499aa6882094d1b9f2, + limb1: 0xe246e060fe28422f2ddc48c2, + limb2: 0x2dfbd2df9a2acfbf, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3cb6bc6f3cfee4c3f9783146, - limb1: 0x965d67a3d9d01d461511292c, - limb2: 0xf0d40a38ddcaab3, + limb0: 0x584bc93df49dc1930dfb29c4, + limb1: 0x771e3d582a3dfdd65858b878, + limb2: 0xb88a5b3664de85d, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x30d556ac1d5b1fc7647350e, - limb1: 0x1b515c801676f189844c5a74, - limb2: 0x17d295b15f7f8c1a, + limb0: 0xd3c8b116da9ebadd4db46f59, + limb1: 0x330ec31735d1f36edbc8837e, + limb2: 0x1009b7126eb5f6d5, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x1e1f95f6d0afbe119d2269b6, - limb1: 0xc6913a3dd6312566c011cc6d, - limb2: 0x2c33d0bc81ae8312, + limb0: 0xc1b8277f86060a7ad22b1292, + limb1: 0x2bb5e9f1abee8e8438191d32, + limb2: 0x11bb3ce293869446, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x7de228c64d05d857cdb31343, - limb1: 0x20dc680dafc7737469a945d0, - limb2: 0x2a98ae5b5b2fd3fc, + limb0: 0x47e42957c31824165a2676f2, + limb1: 0x8f526c09f83b45cc1767fe30, + limb2: 0x2ac7c8f872b33ba0, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xcff868bf68c8a6d94ab52c49, - limb1: 0x59db1ba8e5f7e7236dd3f63e, - limb2: 0x1510aa992cc556db, + limb0: 0xc17989f5b4c7aa6afaa6fe05, + limb1: 0xfca9d8366148797aedaa7371, + limb2: 0x35945f1f04759f9, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xcdf246cd412112f7027aa07d, - limb1: 0xd8f32bba1d6b187f67c4eebe, - limb2: 0x18f26eb941739472, + limb0: 0x3644d9805ef988893422d462, + limb1: 0x22a2ea597968007d972fe22c, + limb2: 0x2493d437ebf2e3b, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x7fb3b84ef775a993bfdd09f0, - limb1: 0xcd0c7111312c941393548e7b, - limb2: 0x1cf06f00842440c1, + limb0: 0xb2548e88ada83173883a9998, + limb1: 0x3db68e5cff58810e88fe2d4d, + limb2: 0x4dc43dfa7cc836c, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x7fb0ee39fd9c4724c737182e, - limb1: 0xc5d096de8d49a10b763109be, - limb2: 0x2be8e578c6670b0b, + limb0: 0x9e475d086b8d4765d196be1d, + limb1: 0x7817e1fe7f57eee100e0d241, + limb2: 0xe465cedf944bf88, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x7ac775d7c637e32c92393ae, - limb1: 0xfcc730760f8f872fdf4f371d, - limb2: 0x284de99ad0be6309, + limb0: 0xba50071b337353e99d2bd27, + limb1: 0x4954d62b6bc9a8b8a8bf49f9, + limb2: 0x13d19496594970, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x58b92d2ecd2a2d5029a33fb8, - limb1: 0x9dac67372abb2dda66572884, - limb2: 0xf8233797514202a, + limb0: 0xa5406b22734ae9a47e839dac, + limb1: 0xd11e68143730599ee6e580eb, + limb2: 0x2c4eb2eafbe3f289, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xd9f2d3cd53c621258cec66e1, - limb1: 0x36a6f4b16abf4fe10aa7183a, - limb2: 0x2c7eb01da97edadc, + limb0: 0x1d47421364d58438f2223895, + limb1: 0x4ccb29b0dc593c9724b3ccf3, + limb2: 0x21ebe2bceb913604, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa3e3bf89dd0695b9b10a2c82, - limb1: 0xb8eef1f3e0e4aa86a2bb0889, - limb2: 0x2159164cf99a18e2, + limb0: 0x5705d188b4acf4fb84200715, + limb1: 0x402924aa8344ec5a36585096, + limb2: 0x21517ea49478bda6, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1cc952350e673d4f5b07716d, - limb1: 0xb2c57e08af807a7afea0e93b, - limb2: 0x1460a8f6e75d1f23, + limb0: 0x9cff434805348bb2c0f8c9c8, + limb1: 0xb682f758bf63a3c8759506df, + limb2: 0x922d4149def37e9, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x8994b58c42d391cf8b150719, - limb1: 0x58e1076265c31e0e46d977cc, - limb2: 0x264c02bbd313eff8, + limb0: 0xfc82bbf0bfa61c5d5443b677, + limb1: 0x7f913e7721ac537ff6cd95a1, + limb2: 0x20770717801b5b93, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xd1eafbfe3881f1a433c0b655, - limb1: 0x2b15b10246ddb5f3116a9f51, - limb2: 0x2c46dc7d501f761, + limb0: 0x306ac2ff1f3824750e7ddfff, + limb1: 0x41e2e35bf871a2c5629198d4, + limb2: 0x8d0ef18a421f002, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x4af42684ea84d31c0a940891, - limb1: 0x6d2ece721e83bd932aee1141, - limb2: 0x21958ab4a2074aca, + limb0: 0x911c19468f8dcfbd644efadd, + limb1: 0x9a1f33f8eeefb8b4a8183d63, + limb2: 0x2f98d441bdeff8e1, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x88917ef208e05825cc9f2129, - limb1: 0x9055ddf9b8d868e3bf91da8c, - limb2: 0x8627546b7fb3cdf, + limb0: 0x4d90774ed321ce563d469ddc, + limb1: 0x4d0dbf5cbecc275488199472, + limb2: 0x18bb709a2a81b5eb, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3857ea0a05fc673e22eb08c1, - limb1: 0x484183c8c8324c17f765a426, - limb2: 0x2fea348db4145319, + limb0: 0xdd0c595948daa77dff64e96, + limb1: 0x6f1aa719151ff1c03fb4f879, + limb2: 0x2f493b288e3b52d8, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe8c31c46a133375b97510904, - limb1: 0xfaef300d6e976c0dbe6ecdbc, - limb2: 0x2e1ef14a067cca94, + limb0: 0x76446676d1673c54eaf4dcf9, + limb1: 0x5bbadbc511f70ce2d16c1e57, + limb2: 0x21e14da6042ea5ad, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x6a36d41e67245dcdefaceac5, - limb1: 0xd9bf09aad345166d484d4be, - limb2: 0x3f1247ac5e369ef, + limb0: 0x700da91e340260a16202a3d2, + limb1: 0xcf967d832b68b249082d05f3, + limb2: 0xf79aeca75191056, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x4eb5ee737aad432fe0a11a7e, - limb1: 0xda0a6862efb37debbfbcf68e, - limb2: 0x2488d805d2eb6f6c, + limb0: 0x4c46a53fd645a0e84baa27b9, + limb1: 0x81b59388916b35c7b9c24088, + limb2: 0x2c17925b811d5ba7, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x8ca7ac13d4e448946d421e84, - limb1: 0x9df1e0125c036e67d2af9446, - limb2: 0x16e4239f0fc3bbd9, + limb0: 0x51bbf09c10e11397a36b4bcc, + limb1: 0x8ff181f8828b475457925c3d, + limb2: 0xfbcd115cc6fb3b8, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x697da60ee61ed371ce5f0ead, - limb1: 0xf5aaa4efb8db17c041528e85, - limb2: 0x27f1442457994913, + limb0: 0x5b26d4b74b938589d34d211a, + limb1: 0x2a885c458bcf17d6f8d668bf, + limb2: 0x1ef17c7cabd2b593, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x1705b340d23bd624fe855a7e, - limb1: 0x407ed945576a63657055b03d, - limb2: 0x22536525ba3d6db3, + limb0: 0x50f41a9ac2b17d12b9996dba, + limb1: 0xca5f80706b641166dee34a14, + limb2: 0x6b1958b1447d5c9, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xdb0dff27a490b25f5ba188d2, - limb1: 0x82a6a8f80908da6c42a92775, - limb2: 0x2561973eaa8ac016, + limb0: 0x9c4d1cd6ad02ffacdeb4546a, + limb1: 0x356de4a8b4b828f81ca6dd7a, + limb2: 0x2fd93ddfa60cd7b3, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe21e8711780aa1a58f5660c8, - limb1: 0x6007401570a38734b27c188f, - limb2: 0x2cd70ad8aa59de6d, + limb0: 0xdf5deb6232443fb467cc8ab4, + limb1: 0xfd53bc17640b6c1982e228ec, + limb2: 0x300251993b905c07, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x37f180baee038e71d5d068a7, - limb1: 0x28529b3d13c1fddb0d07f6d4, - limb2: 0x1f4e9112a0d14873, + limb0: 0x1fd2b9c17fcb434f1392196a, + limb1: 0x5c76c0e011cc7a07328a5c5a, + limb2: 0x78507009929b471, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xe94fba629c424c99531a2508, - limb1: 0x26e077d71fe414db02571457, - limb2: 0x1f9e1f02d377827b, + limb0: 0xe67fe7a3743374199221b08b, + limb1: 0x7cced11bee5ab662dc44e9b9, + limb2: 0x62bf55b33935ba6, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x3fe1fbd087f921b9b45039c5, - limb1: 0x399576ff097634bef3a36087, - limb2: 0x218a5ecfd22ce30f, + limb0: 0x9c167f32deca9b96549858f9, + limb1: 0x57cc9dd5116d27ffd6c10448, + limb2: 0x255d36c779154ae4, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x26d1188f4a1550af9110366c, - limb1: 0xaf8d50ff033f911449e10c52, - limb2: 0x1c5b4fa0905edd26, + limb0: 0x58580b58b95a2e9105f9ab25, + limb1: 0x5cf0563fd7d1177a63f5fdc0, + limb2: 0x5f8f1cfc92be5f2, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x8f764ee0359c3a5186a8c6cd, - limb1: 0xfbd2f1c239037ca59726e45c, - limb2: 0x2d135aefbb7cf95a, + limb0: 0xdfa0ed91b27045e16a93f3ac, + limb1: 0x47ce01f997b77f01376eaee8, + limb2: 0x12d7672f445941d1, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xf00b6fdcba502a90c3a0a9de, - limb1: 0xf60d2711e18905115fddff45, - limb2: 0x1a728af3133558c7, + limb0: 0xdb93676c04471336350c655e, + limb1: 0xb9cc7c1fc83ad4d7991abc5f, + limb2: 0x7cd8a2f4207f870, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x8a27ebecb537b83d34dfe0b5, - limb1: 0x75bf91e9f74a220d5da637f7, - limb2: 0x103aae86fd6c6b74, + limb0: 0xf6a54b86672c3c0f33747267, + limb1: 0x3037717cc23620e17557c4ed, + limb2: 0x13333f55cff4dc20, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xb0a3b0fb7444a1dfac7508f6, - limb1: 0xf2b9cc21dbb934b8a5a47a2d, - limb2: 0x1a8993891c93608, + limb0: 0xef037d97674d55bed644c5e0, + limb1: 0x8e0175ec1ba8eacb40d100b, + limb2: 0x1d35c40e57c35e81, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xad86ff4f85e25347f133726f, - limb1: 0x7cf0df3d94fd0e593d91658a, - limb2: 0x1939650f4d3b1eea, + limb0: 0xdf607de7f2b3448dc16e524, + limb1: 0x6c1011cbedd677625447d276, + limb2: 0x2b7325330800543e, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x52ffb3d98e2ab4ce00ada4c3, - limb1: 0x77bdfe82c9681151a9b923af, - limb2: 0x21854b6696bb976d, + limb0: 0x929ab9bccaa541963837c9bb, + limb1: 0xfbed692a47b26f060a4d0cf4, + limb2: 0xf323aba27be930b, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xf62fc0257122a7dc48587b9d, - limb1: 0x4a1c4b86e044f326d837627d, - limb2: 0x18af117b15727a5, + limb0: 0xde398837cc2d48cb85dcf780, + limb1: 0xb0f7fda30619769bc3dce042, + limb2: 0x2f535d5660439a21, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd784d65416f0ee51680db29f, - limb1: 0x2f3ab4af9c0b536663aff09c, - limb2: 0x2fd4e2f6eba629f7, + limb0: 0x10f242332137a3f7ff178b13, + limb1: 0xbb0031f5f1661e23fdf816f4, + limb2: 0x124ac27b5b2f85d3, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x67d46e23b0766e94fc6b79c1, - limb1: 0x312d526fd720ab405b1cf4b1, - limb2: 0x1ce4c55a7a848b84, + limb0: 0xb17e4b8e879ad9224e408e1f, + limb1: 0xddedea3d713e5c7b94596f42, + limb2: 0x1d0d5b7118065093, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x26aeb18757f0444375c646c6, - limb1: 0xbbfa2641667bf969b10fea38, - limb2: 0x4d36fdab7f2e723, + limb0: 0x662cd473d5884e55ff339715, + limb1: 0x572cb73949ae1030e25955b6, + limb2: 0x5405a0482edf8ce, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf468fffb4bf05747a4685533, - limb1: 0xd4fd8a6300e2ee087f502129, - limb2: 0xda942784b2b3411, + limb0: 0xa121b1795ac28885d81560df, + limb1: 0x1c6978c0045764f8cc24e06b, + limb2: 0x23b31069fa2a5d29, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa0ae06e13fe1d9e864afc0d8, - limb1: 0x45ddd46752f01e5812b489de, - limb2: 0x2699829223ccb332, + limb0: 0xb2717f803b6860c8706e03cf, + limb1: 0x2dac28bf58a109133a0da4f0, + limb2: 0xefdf884f1b4254e, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x35a1559510e8184d01bd0100, - limb1: 0xe5e2879f17737565c76c5a6b, - limb2: 0x61d0d3e76fc4d36, + limb0: 0x7a41dceafe724cb7f687b47, + limb1: 0xbb84e92b681ff0834784896a, + limb2: 0x5d924a6d7ad6f4, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x9471d1241364d18039236d5e, - limb1: 0xec97a822c0fcfadb703e8e49, - limb2: 0x2f68c9d741cb94ec, + limb0: 0x9e87877bbafc5ccd839e5dfa, + limb1: 0x60b4992ec8b5a3f4a3410a67, + limb2: 0x210b035b6067e9b9, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x26241c10b91ac4b0b0f380ca, - limb1: 0x4949bbb6f44de961a0400bae, - limb2: 0x1ad84a67489fef40, + limb0: 0x93d1cebd7d95336a5176c406, + limb1: 0x46c72c1d748bf585d8399b0f, + limb2: 0x271d8a3687eb5baf, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x6de0655e02e9772a3cc4b1d5, - limb1: 0x2d4a1c0b7d84fbfa47d17713, - limb2: 0x24004cd388efd0ce, + limb0: 0x2c78950a70160923b54341f4, + limb1: 0x37133f8c7602b7827f63288a, + limb2: 0x18b67bfa41d70f38, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x950e9f56a52acec9bd874e6, - limb1: 0x22dce48c65e6d60cb936c649, - limb2: 0x14eda08ecdf2485c, + limb0: 0x3a23f2c3ceff776f9843626f, + limb1: 0xc0aeb624fc860962ff20cab4, + limb2: 0x20fba862c5090aaf, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x260fb35a218342854cddd939, - limb1: 0x45f4d18c9e5641cb3ad28906, - limb2: 0x2cbb791cc2ed801, + limb0: 0x9fa673874ea60062a07129b6, + limb1: 0x4c8032e926d7c77d32ecbf68, + limb2: 0x169227d2f817d8e8, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xd8609ca08440423a114cd709, - limb1: 0x9a632a2a5822b9c25939be31, - limb2: 0x26796262628d0d, + limb0: 0xf2696cf64d649f8f11876c75, + limb1: 0x86f6c5bc8c25ff4dc31b7f6d, + limb2: 0x22b19c8107c2be13, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x65940bd03967422e48a8d8a1, - limb1: 0x60f83884d54510cac4a41d03, - limb2: 0x14a6ffc8a061b77e, + limb0: 0x9a82da2f5fac31c02a423cad, + limb1: 0x7d7ed10add605cf20c9f3f27, + limb2: 0xe5f3e6e49e8becb, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xa4ccc9201a608df6fd643a27, - limb1: 0xea1f3f0fdc27fdb1086931f4, - limb2: 0x25e1bbb8efc5dca3, + limb0: 0xe798a181c83637d960b7e5a3, + limb1: 0x7601987ec5e98d73e4f5fee2, + limb2: 0x5b59efdbe1fbf94, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x73ff56f57e7347e436f2437, - limb1: 0x997fee62ced65bfbabc12e5e, - limb2: 0x7806f89b50ffb20, + limb0: 0x686a04e5604cd1616d7efa00, + limb1: 0x9aba84bf3895f6800b9c125e, + limb2: 0xa2b423922528419, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf41334652b17006913469143, - limb1: 0xe3c1eee4f53d343aafa46ed3, - limb2: 0xbd658465f365011, + limb0: 0xdd7a7c9d8a08d99de1e52369, + limb1: 0xa8432ad16d22e31f2c7b1f5e, + limb2: 0x2170919625f9cf12, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb01354cb2a2f4bd7bd93d2bd, - limb1: 0xdb01cfd8e64f43f1ddebd7cb, - limb2: 0x67bd996f7a56a37, + limb0: 0xf8f235262c60b0a803cf50a6, + limb1: 0xeca663bde2df849cea4afe3e, + limb2: 0x572136520a3b75e, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4b7324c1790c6d5f848348a5, - limb1: 0x6f215c39415887a56a992dc2, - limb2: 0x5da307e002d7b26, + limb0: 0x33ab667375aee1f78ad52ce6, + limb1: 0xbd40f0b0fe2e0f71d916d4d8, + limb2: 0x1bc15424e945ec9e, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x9bcbb5e6233ab54a1f000413, - limb1: 0xefc6e06a1ec1571fddb815bd, - limb2: 0x3a49e3f48fbae74, + limb0: 0x1ee29f24716473e388768932, + limb1: 0x6571b107fdb61ad94bb0a957, + limb2: 0x17fdc3f1907aae0c, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xcbf2c378218f1ede6348ec79, - limb1: 0x35beb269461b45068a34797f, - limb2: 0x1c9b5c509173c12, + limb0: 0xd985a774ae2f18f0e1257d44, + limb1: 0x66c8433cde7c3ec0f9bd0acc, + limb2: 0x15b84c87968b1a87, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x8009db06fa42905e150b2d40, - limb1: 0x19282f75659d699ba25fcd42, - limb2: 0x5387002838b50e9, + limb0: 0x106791d8aad30bf7dd086028, + limb1: 0xd02358c4b70f145af5697c4, + limb2: 0x8a0cc84838da651, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xd0032bfee5723ee8cd9d354f, - limb1: 0xdd68b41d3214c94446d74abe, - limb2: 0x2889571dc171fbdf, + limb0: 0x4438794a71a90640b21957a7, + limb1: 0x5a864a4c72b9db3e5d471a45, + limb2: 0x1e74ef47f392c0fa, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa07e2a3a679e81cd25992b3d, - limb1: 0xbb76f3c8cb494bad34efb94b, - limb2: 0x63f4e3dc8a918b1, + limb0: 0xd7f18a49a66af9eb415c41fc, + limb1: 0xe3a4f38faba5e8bc7a91658b, + limb2: 0x6bdb1bd3b046d66, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xebab60132df4639027ad194, - limb1: 0x9f6f488a1f500be4b46185a, - limb2: 0x93153304560a944, + limb0: 0x109c70e42cd2865cbd3fefe7, + limb1: 0x641d9e9a6779205f87389a93, + limb2: 0x1e35249fc679f756, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x1f1cd248cd544837a743496b, - limb1: 0x6a18f1aaf75b9afb71e1e5dc, - limb2: 0x31caf6b134fde47, + limb0: 0xcc0b08684d17819704119d98, + limb1: 0xd83a7368d3d7a3d4373012b9, + limb2: 0x1d0cc19f89211769, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x4b862bcc5178de6fa48d5181, - limb1: 0x83e8f06829daaf24516b808a, - limb2: 0x90979a4c9deb55e, + limb0: 0x9ab12ca32b38e804fd82215d, + limb1: 0x4e414477995de5e70b79d096, + limb2: 0x25c01bd2493baf0a, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x34e8210ff636aa3c9c87c309, - limb1: 0x7b44fe9c6020fd0f79ff9173, - limb2: 0x2cbe80da0e3a3364, + limb0: 0x5b48e7320a40473df90c8ef3, + limb1: 0x47daf1b8a0e56759c61d20aa, + limb2: 0x2adb291fb70a6377, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x4ecee46025505db86f24d260, - limb1: 0xbec48d3446a0cc4a40e623ab, - limb2: 0x1529208642bd7479, + limb0: 0xd86aa709b1f9c0be8d0832e2, + limb1: 0x83c9b0743b694c0a481be2a6, + limb2: 0x240a38bed6025c2e, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x921146512b39e844be5b7767, - limb1: 0xf1423d88468d05db0e171ebe, - limb2: 0x13294bf5892dbecf, + limb0: 0x817d8cdde606ea9bc0f7337d, + limb1: 0x29ce91d4f9f030f7fdf03103, + limb2: 0x291a57a321f3ac77, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3f3491d9150013bcb4954f7e, - limb1: 0x6b0979ab4dcdff0164f6e4e0, - limb2: 0x2f81ed821040c0d6, + limb0: 0xe8b6336170d5015ed89f838e, + limb1: 0xef411baea5e6382e37704ee, + limb2: 0x1f8bc7c2e8128d72, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe092f16abadd9d3ac0eadb48, - limb1: 0x26404c221ddbfaf6c344113d, - limb2: 0x1d05e6add4fb7a2c, + limb0: 0x311023bc5d67b0a00f72eef2, + limb1: 0xccafb24e17cce90b13d0470, + limb2: 0xe9b193122cd9f27, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x4520218ab8caa7a2f8c28fac, - limb1: 0x74aaab7926d2b9a9096d0fc3, - limb2: 0x3bc78042de9c03e, + limb0: 0x1c8789efc1d800de2efd952a, + limb1: 0xa8b16981c5c9f6f1bcf3b5f2, + limb2: 0x51fe2bd59ac7588, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x44454c5f5921ad1049aa4eaa, - limb1: 0xa52bd87c00665fbef097896b, - limb2: 0x1532662ead6d360, + limb0: 0xd6b9125a479dcc43e1b527ab, + limb1: 0x7128a86c06ebec5923391b5, + limb2: 0x2199f61870c2339a, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb01393a557637be22634eb90, - limb1: 0xb09bda44164422789dc23bc6, - limb2: 0x1fcce3d51bdbd54b, + limb0: 0x29df2b33e3f31d720d28ff5f, + limb1: 0xde2fbb79dc18fcf0e2b7ca70, + limb2: 0x2268726918708c73, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3f18da9d670a1cbb8a8e1855, - limb1: 0x6ff9f6cae50627c0008785e9, - limb2: 0xbbcb0cdcec1710e, + limb0: 0x950f594c336dd20a28493e9f, + limb1: 0x97e78e456abe446f9732862a, + limb2: 0x2c8d13cc7adb3899, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x873ca315e7e265cfd2c0d3e2, - limb1: 0xa99264b093e15a4378a0b9d8, - limb2: 0x2cb36d45eca0dc0b, + limb0: 0x4b658f1e2155e776c10f1cf1, + limb1: 0x176e5471b98aa95f7201862, + limb2: 0x284a8054d4664ac9, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xbb76c24572f30a68f5ea9c6c, - limb1: 0xc8fed4f0ab5fd143309e0080, - limb2: 0x22821bda6435737c, + limb0: 0x49d68f0dec686f2e23b37e2e, + limb1: 0x63959c648bf4e07e3415d954, + limb2: 0x55b68b92a4d8f44, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xc2b074749618d81b1ac1c3af, - limb1: 0x1a51c829a385ad099a323d2a, - limb2: 0x2bc943880a2bca25, + limb0: 0x225953a6e4093ba414d79313, + limb1: 0x7c163fd5055cc55a0aeafbd3, + limb2: 0x1e5096e9f8147ee2, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x73123330ceef3f268fa77da8, - limb1: 0x376a78ff3b862b150573cf75, - limb2: 0x82f9dbdbed78ff9, + limb0: 0xaf1dce2917f7d9ae4d4c27d5, + limb1: 0x3fbda22df548f3ddd4230d6c, + limb2: 0x7135a5bd28c5f22, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x57fe35296296f2f3a5f17c69, - limb1: 0xde63949e16491a752d9b9c6c, - limb2: 0x12d8356e64e86a67, + limb0: 0x7f0d8d9a41f6d99018b3212d, + limb1: 0xcc1cb96c7a1d9123ba48335b, + limb2: 0x2634b539e7ba8809, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x308c50f3a182e41b261449db, - limb1: 0xe357f7962a9fb153bfa5fa23, - limb2: 0xde6532a20167c1a, + limb0: 0xdc9abbd6cbd2aac70ec13420, + limb1: 0x3a3627d7657ae34b3b98db1, + limb2: 0x2f536d32bf8dc0ef, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3e25b363cdfe9ed5fc053a4b, - limb1: 0x5c6188d3dec283ba8ae75a20, - limb2: 0x2af6b81055b3277b, + limb0: 0xdcf5782dc4e3b7784f942bb5, + limb1: 0xc645a4ed2e1f97fbebe94408, + limb2: 0x2afc9866b8f4c7a8, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x6747f641086cb55f839086ad, - limb1: 0x10db582e78919b1d63628acc, - limb2: 0x13c4ce4f2029e813, + limb0: 0xd966136ffb6432a43f991c0, + limb1: 0xf49bcc76d4a6071fe253b783, + limb2: 0x120ee3759afa9aa, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x985d6f16b17a3b1d2b7cea6d, - limb1: 0xc12d6562fb264c741387e5e1, - limb2: 0x2dbcab8dc4ee8fe0, + limb0: 0x39ef9b310e463fadc88b77b3, + limb1: 0x4cf7a111f951ea7861479eed, + limb2: 0x137d2c7054a83e53, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x80d5f341d650c39aefe67f4d, - limb1: 0xd8c884126babb54d5d446c72, - limb2: 0x27f1a2498322b7ad, + limb0: 0xbd29fec405f9d148fcfa20a1, + limb1: 0xc81366d21add4f05a12d01be, + limb2: 0xac4edccb9b9b38d, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf6198a751b2306f816778135, - limb1: 0x1983b31858080679a35c0c81, - limb2: 0x10a1a9d01b48e276, + limb0: 0x12ab1065c07b9e20590e6fc5, + limb1: 0xb21fefb8939ed4740c93fbc9, + limb2: 0x134734876164d74, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xcd82883803650af3cb46af1a, - limb1: 0xffb9f78c690d1decd972e1b0, - limb2: 0x15ffb9fb91e2403f, + limb0: 0xecacf773f854a4a9599e3e80, + limb1: 0xabc91052c0449dc87805bd13, + limb2: 0x3180cbc2e44765a, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x2a14eaffbbf1e559cfd67360, - limb1: 0x43482bd618631e75140b25eb, - limb2: 0x113450f35704c601, + limb0: 0x84b3c2c376c784e86b7a3c4e, + limb1: 0x7651a01a874d19a1ef1dbb1c, + limb2: 0x2be69f015efdd5c2, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xdd9991430f50e5a94be9b0c6, - limb1: 0x619793464a8691bf89c89db, - limb2: 0xf67b34659c381d9, + limb0: 0x1f11322dd8a6188568e1d0a9, + limb1: 0xf12946af7ba51c837aef4e07, + limb2: 0x22ac6f29dcfe0911, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x1a765a3205588060bae41115, - limb1: 0x4aa510131b3d37017c1662b4, - limb2: 0xf5c077dc83b914c, + limb0: 0xa6e485e48ee16bf0d2211020, + limb1: 0xd3a618a191a73b3d5b4013b1, + limb2: 0xebc45102371f873, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xd0e2db74250fba8710063aa5, - limb1: 0x77503757bbceffa2ffdf44e, - limb2: 0xc690f40ef4e65d8, + limb0: 0x3d8a2850b2f7e1672e90c51a, + limb1: 0x565559d5415611b92fb07ed, + limb2: 0x4b7c349d83bdb1b, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x987bd548f61ce1be69f2fec0, - limb1: 0xd9aa2e1c2f2a5bb53a7dfaec, - limb2: 0x7f7ef3cc977efc2, + limb0: 0x799085981eb26aed07c9c04d, + limb1: 0x8fdaafba43cd02dc71050a4f, + limb2: 0x20e6b6d20407727, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xeb4d79849acac6d7697e790f, - limb1: 0x83a6535d9af49a0b864f242e, - limb2: 0x2bc946607cf60999, + limb0: 0xa813fd9352256bf1caabf06c, + limb1: 0x69db3796a525cb1dd5946821, + limb2: 0x1a8e96237e37530e, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x2a90cc91d12f6c273907f421, - limb1: 0x2c465a324511ed232e5d51b2, - limb2: 0x16bd7eaf65f176ea, + limb0: 0xd8d37beeea49407382446deb, + limb1: 0x5548512badd85f7d04b04589, + limb2: 0x225ae49570ce2599, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xa06fb0edc3e44b91d937801, - limb1: 0x7c8a88164fd922e273a788c6, - limb2: 0x7e5efa7983188b0, + limb0: 0x2f297d1cf07fd527159140c1, + limb1: 0xce604541822f28fcbefecc8a, + limb2: 0xfac5b7608543c7b, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xd58db58cb6b4283d7db7e358, - limb1: 0x680418df8586042fc32b7481, - limb2: 0x1aa4e36dfd4b5906, + limb0: 0x6354cefbcf621d32e3e09f68, + limb1: 0x947cd1c6cbf416fee76e38a, + limb2: 0x1706bf7dc55de4c3, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x6fb27cd57cf1845bcfc4ae83, - limb1: 0xb8848dc440ac62c6a1102a2e, - limb2: 0x126acafb5b65dea6, + limb0: 0x602f6a989b55160638cbc4a9, + limb1: 0x16218ae87fd7369171ae24e7, + limb2: 0x1247736487199110, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xeee8ab0d8dd406a65c7a3be6, - limb1: 0xfd237878cb1dee1e250cbbb4, - limb2: 0x7d5b76b431829e5, + limb0: 0xf12371a2a9bf6abbd74e9450, + limb1: 0x600d5aa9b2e9b0556d9ed673, + limb2: 0x1e0c624a9c4864d4, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x209de2169b35544d63222882, - limb1: 0x5498450d0fdac73ce92c237b, - limb2: 0x10fac08662c055c8, + limb0: 0xe38f3d60ff37b083cd958a2e, + limb1: 0x348afb38aa49887a7ca1d476, + limb2: 0x5623c56268d62db, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb641c839ac418a6de8310e2e, - limb1: 0x4be1304c700b09ddb3688d50, - limb2: 0x15e31f2d8bb8ff16, + limb0: 0x354f11be32b0afc9e26f28ce, + limb1: 0xeb635fcc9cd44998e58c1a23, + limb2: 0x812028693437b72, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x332f1b7d2ca5de0c82e3fcaf, - limb1: 0x9690513e02d7897d7cbfc59a, - limb2: 0x1cb52321efdaf38, + limb0: 0x90c04d22cccf054f3715add2, + limb1: 0xfcd626e181383674c1f994d4, + limb2: 0x1e942478490b4f26, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x5607794aac9e1d0266fbce97, - limb1: 0xc6b4dddaf0a55330bdc48a8d, - limb2: 0x154ee39cbb1b6e9b, + limb0: 0xe97533ba44380e2715568943, + limb1: 0x9ab4e98a7220523249ededc9, + limb2: 0x50972f3b5feefb9, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xa475fcc92f85c05db4903693, - limb1: 0xdb401fe458a3531b92ebbd32, - limb2: 0x1fe5c9b8f6b78b7d, + limb0: 0xb477fbdcfc259bd59afa975f, + limb1: 0x3190d4f9ec4f69a932813488, + limb2: 0x1f01d9700487e724, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x58bd4581f4707efb14c63c71, - limb1: 0xb435094a4922fec344eb174b, - limb2: 0x282cf1747ebcad8b, + limb0: 0x46139c3f7c6f05a06177c357, + limb1: 0x46b5d7ec5661b667d5365a7f, + limb2: 0x2e06fe23af7422de, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc6a203816a560534cdf96a57, - limb1: 0xad2df53499b97eb3792ffdc0, - limb2: 0x12be096211eef440, + limb0: 0x94fbf5441945f311021c3f06, + limb1: 0x18b4ce7f8026ab73889b2234, + limb2: 0x2d3679eba7944a1f, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x61f05a3894ac940027210850, - limb1: 0xe0c4945a1e544d45045799c9, - limb2: 0x17c60c568afbf95f, + limb0: 0xfa28f6f90009b2a01d651de4, + limb1: 0x81fdea1f4de5052bb537429f, + limb2: 0x144ede10360f3d37, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xef635c0b73e9144f605bfb01, - limb1: 0xedc60d902a0c964c62c06b3, - limb2: 0x2dbd647dbe27280f, + limb0: 0x7b4bfaceb28e59181461037b, + limb1: 0xe6c0495ba5f6cdb2cb0f83e4, + limb2: 0xea5c3a89d3ffa02, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x54d7fea1239360b4e0a50f54, - limb1: 0x8d6ecf192e8a0b011cb43e3e, - limb2: 0x1e36f458e4c5d465, + limb0: 0x420103b9ddbe91260c158c83, + limb1: 0xc9203e6865899e5a2a30e2af, + limb2: 0x2b5aba609d610f78, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xf336c90e0b1f7e569e68cb6c, - limb1: 0x8720fd8562d8a6e54435f534, - limb2: 0x1e7b85f6c293fed7, + limb0: 0x436a69f4f990fb3712b0309, + limb1: 0xfbc03ced4e39c6b810b8e56d, + limb2: 0x7504ba0c348d9cd, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x6a80463599dfeea6440d0e6c, - limb1: 0x62e1e1f0280f48b208e8bd68, - limb2: 0x17a7b1040292e282, + limb0: 0x3be98907e3141e47f69fa9ed, + limb1: 0x86b45b1b2d1c198b56765810, + limb2: 0x10c98a12925341e1, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x1b37deb433d2db30c628d9bd, - limb1: 0xb7c00146b3eecbcd22093e, - limb2: 0x249ca14c7ce553b7, + limb0: 0xf42e893902a6be7b72e6737a, + limb1: 0xb927ce4be06b7a77f607781b, + limb2: 0x15c4a03e16bef3a, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xcca1918d9a7514083fc72984, - limb1: 0x90b55c800c4ad500376fd39c, - limb2: 0xf5f9241d69eabff, + limb0: 0xb5f1311686ffb89640b6ee1b, + limb1: 0x2067c3462bd984263a138ced, + limb2: 0x1a3ff5cf53114704, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xc4f3132c468923042ea455bc, - limb1: 0xe48c416f560fb53e8b502154, - limb2: 0x2613466f9a11ed46, + limb0: 0x6270e0c7f05e5ad40b36ab68, + limb1: 0x56c7c9e63f6f572ebc75f6e2, + limb2: 0x14a929976a871b00, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x3197655e53cd20626ec4772b, - limb1: 0x2bf012cc22e8ba15e231b3a5, - limb2: 0x211a2d76d389e0f6, + limb0: 0xccdbc0f9a758c5455a7b8cdb, + limb1: 0x434b662cfaf364096c8bad34, + limb2: 0x111a02303426ffad, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x3ed228b00a32e1e26d5f0662, - limb1: 0xd73d8b8735e2fed80397768d, - limb2: 0x2e4deb74cb98bf7e, + limb0: 0x168b67255ba9b491b0d5d93b, + limb1: 0x814266a772f4217ae77df2d2, + limb2: 0x11a1bb24ac650061, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x68c2498698aeb3f6d27ee2f2, - limb1: 0x4c0bcec6e06306db0f3b6587, - limb2: 0x241a62a2a7ff3048, + limb0: 0x77255fac6d87f6824306fff4, + limb1: 0x750451be6afb93aa9a98e8d5, + limb2: 0x141e5086c720fc55, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xf0cc14ec1cb361c1e43748a3, - limb1: 0x7952ea053a736426aeda0020, - limb2: 0x1cb39fa7fe13b7aa, + limb0: 0xec90fcfaef7c44b6bc34800b, + limb1: 0x8403de231a16003e7b3b364c, + limb2: 0x101753995c51cca5, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xfde5feeb8faf8266deb76a17, - limb1: 0x64656a265b2b8160655c8014, - limb2: 0x112fd2ef96af86e2, + limb0: 0x3340e49edaa90f52153ae86d, + limb1: 0xad3fd6f013db50cc97df4c57, + limb2: 0x22dc25bf4ea60b57, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd54150bf8923a2e44a03a376, - limb1: 0xd143605ff79b9c5f2d971842, - limb2: 0x22b824b36c288d6c, + limb0: 0x85cd9954c27f905d8fdeee05, + limb1: 0xff29b98cec4d4307a94f2a67, + limb2: 0xeb82cc272c2bb81, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xc97ee197894cbee5d1375e00, - limb1: 0xc5be2e570a45ca1d3e728695, - limb2: 0x5d49231781b17fc, + limb0: 0x106983f0c7d8c23f41d58fb7, + limb1: 0x7760ec3987b3560e443d646, + limb2: 0xe1333399353aab8, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x723be75d8a5b6c6d7410fad7, - limb1: 0xabf51364a090acbbf5b2b9a2, - limb2: 0x25c6740bb79fc8ea, + limb0: 0x12471c5bc8293f7c6b1efee8, + limb1: 0xc5d6bdaf4dcc37f406c8e306, + limb2: 0x87db8436d83d952, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x4d85e3c6a02f74022a99ac49, - limb1: 0x7e09c23c04638d6a265015, - limb2: 0x258e4b07476d88b9, + limb0: 0x9e1488b3c1dd2da41977f0a1, + limb1: 0x6a62751520b6dc3d75a5c4d0, + limb2: 0x21d5e17763941b44, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb845af8851c7a8b5d6523950, - limb1: 0xb656d28488e151e723789bf4, - limb2: 0x2daba3811b77ddbc, + limb0: 0xfbcd353b8515bbfb02c73087, + limb1: 0x5367fadcb72b95fb3db73884, + limb2: 0x123dd1449c528e99, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xd63f3d7cd80a77edb230c118, - limb1: 0xd4e7ac70ac8cfad57bd7425c, - limb2: 0x1be22fb23dbb78de, + limb0: 0x3db5b08b8785443fa792ca24, + limb1: 0x145e5c0aa3adc26b0519f5c5, + limb2: 0x1dc38be484ab463d, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xb1e65d0ff4ec1c73dc93ea72, - limb1: 0x357a2e1bb8f20a972afc9814, - limb2: 0x2ba904b0df948de7, + limb0: 0x824f3ed6060d8bf3c94ddeb2, + limb1: 0x39aeb2af9c3fe4bf96acfe0f, + limb2: 0xf192a523fa93846, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x9dbdabbf04b6426d6367b613, - limb1: 0xfe744bbe1121bdaeceb78999, - limb2: 0x177c2267c26e2db4, + limb0: 0x484023de9aadeed5e6f5f48d, + limb1: 0xcf02896fc92d2afa3d3ba28a, + limb2: 0x1c3ad32c57d5b93f, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x1f17b852672236df4eff0191, - limb1: 0x64f6151bf63b65b2bd13c5c5, - limb2: 0x2b17e9f5f66ec18, + limb0: 0x4d1450408e24c718f0712c78, + limb1: 0x262879adf9e86ff490d27b27, + limb2: 0x35197264b33e269, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x37163100bf3f8d1ac8c3ce9, - limb1: 0xe1fd1e43a5fe0bd9cf300acc, - limb2: 0x2dea0f29e1a948b5, + limb0: 0x2b0ca43606236a3d8bf635a2, + limb1: 0x7afa05931970db2b5ed8fe24, + limb2: 0xe30c64fae61fdba, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xda1891e6fae50a4fcd7c1efb, - limb1: 0x7ccf962002525e580d1dfba3, - limb2: 0x2d417d8fb0961d2f, + limb0: 0x709440d7f7851a26c6f1bd23, + limb1: 0x92ef15d3a1065a5c693c7ab7, + limb2: 0x2e4d5d29e92dcd28, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x9b449081c96a7b6cd8afa4c6, - limb1: 0x3b488fd36a053c43bda1f43d, - limb2: 0x2b6935952ebb052d, + limb0: 0x640ef87d876e602cc320c25d, + limb1: 0x11b286320c46ae67aa646d06, + limb2: 0x1ea5a4500255c57f, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x3d9e005d071c12def2cbd712, - limb1: 0x5243ac0e2c27279507bc17e, - limb2: 0x62a5cd7d66e6245, + limb0: 0x695af09c34fb0082a774b5a4, + limb1: 0x71acd44c8cba23d8a9463e56, + limb2: 0x1fd78c8b8b805965, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x9a28bd7c9952182a46c738f3, - limb1: 0x3fb4a2da8dc3ebe6ce36cf88, - limb2: 0xe9b9152b140f763, + limb0: 0x710329b46ee3cca7802f1c15, + limb1: 0xad505d3b85159b6b6d2fe2a3, + limb2: 0x6c07788094145cc, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x2de172cb864798f4dbee10be, - limb1: 0x6fbf6332b1f8f653dd449862, - limb2: 0x1dce67ce75484b79, + limb0: 0x5afd846855040c4c73e6c0b9, + limb1: 0xd12c14db4bdef1c4ffd78036, + limb2: 0x1c6d4d0e535f424d, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe336c048d0aa7a2b0d83d05e, - limb1: 0xaaec6b5d981abb8253d349a8, - limb2: 0x10f20943376b2d1b, + limb0: 0x5984377fc371bccc5026813b, + limb1: 0x32e92d5aaf750a89fd1b12f8, + limb2: 0x29ff165950e94b1e, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x2acdef558a557dde8c4f7461, - limb1: 0x3053253d194745b7a4ee9499, - limb2: 0x25257e3cc0789512, + limb0: 0x1004ec012899b86f5f0bece3, + limb1: 0xd4e921330ee0cde7fd932546, + limb2: 0x2099ecfef629c432, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xf5b71139f129ea9b4ceb537, - limb1: 0x8de9daf98337f77e21884f61, - limb2: 0x94edb97f8967bf0, + limb0: 0x74e2e6630e0bfb46b5f43ac7, + limb1: 0x3351b99708ac374791413e49, + limb2: 0x73ada8fb997971e, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd116eb93778b1c09f6f394df, - limb1: 0x51992b4c9f1ad702cfaeab84, - limb2: 0x25153c0ebf11e856, + limb0: 0xcfbb39015d8e548332f5318a, + limb1: 0xbe1fb3777d4c4e8bd8fd4dbf, + limb2: 0x2dcb6c6d8dee48bb, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xfff046c11f8271eaeafe8fde, - limb1: 0xd06c94c838de55faa1ca0bcc, - limb2: 0x16fb3d9ee11ac7b3, + limb0: 0x7d890bef8ca9982a01f837d0, + limb1: 0xb9ded7c565fae3fad11059af, + limb2: 0x66894b1e7deb475, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x6152ae980011e6c6fe8fd053, - limb1: 0x1ece2ab13e7e12ea51cb00a1, - limb2: 0x1cbf684a9c876bac, + limb0: 0xd446a7afc7cd07faf465ad9f, + limb1: 0x9080fd1cde8c67e151c91398, + limb2: 0x4d6e90af2aa3391, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x57078c36ab21bd3389186922, - limb1: 0x6fcc9d2328c2777d4bcb6092, - limb2: 0x78dddb8efd28b00, + limb0: 0xb3c8052d5f0f9c57db578d5f, + limb1: 0x7e8ae079f47da836b2a44d03, + limb2: 0x7371edd16b6fdbe, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3184a75c9f02b6e21f7548d, - limb1: 0xc49edc7b5bcffad92d855e35, - limb2: 0x1cf34c1e540e05cd, + limb0: 0xa503d726958bd3443815755d, + limb1: 0xa3cd4b764f1d25bd41622f8e, + limb2: 0x957526867ac7f7f, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x9118c445b89081a945b64669, - limb1: 0x6f54d322643282fd6a71cc71, - limb2: 0x1291fb7829dcc5d6, + limb0: 0x5551480fd58874b58f8464e9, + limb1: 0xb652baf9a1fa3a56df3a486f, + limb2: 0x7c5b9e3875ef9c3, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xb69b96ca95302ae1e6819fb2, - limb1: 0xe70268afd4fff90b2dec54b6, - limb2: 0x24ed08be5110415d, + limb0: 0xe029f2afe7b07d794d9bd202, + limb1: 0x944d9aeafbf9cac459b807ca, + limb2: 0x168a20f188aed947, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x60c06c06278903d32e1c1dd, - limb1: 0xbdf9b22f754f545a5bff1656, - limb2: 0x1db72793aeafb703, + limb0: 0x2e4f3d36e031905cedf90bd8, + limb1: 0x7b8695069c77f4ab17c51418, + limb2: 0x1ff702075493b595, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x4120ff414537e9f5dedc6df1, - limb1: 0xae449ea348589d9036d3fae1, - limb2: 0x119f590f6ced6b3b, + limb0: 0xbad7d92531a6b8ca3e6729bb, + limb1: 0x1d4bab64109fa849916d7862, + limb2: 0x87718955db44473, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x3ea6379669f4451170514d25, - limb1: 0xbaff4b52a532e7887be9f995, - limb2: 0xa501e68466ecf86, + limb0: 0xb1593c7c1c9553cb2f37c66f, + limb1: 0x86b8f3861393a4f00bda3d09, + limb2: 0xdf8ef8a4e4bc8e5, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x5bf9bd737e20fce210bd4798, - limb1: 0x1dec5db87cc6fdd2c0a0f21e, - limb2: 0xa6526eee26a2a25, + limb0: 0x5a37aa07524891bd1124beca, + limb1: 0xdd94b3d5e966a2f96ea890a1, + limb2: 0x12dd8b175471742a, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x8261a65c3c0745f53dc4f5cd, - limb1: 0x87cd0149cee1bacfc4a813f6, - limb2: 0xbdd3824d3d8350e, + limb0: 0x73f8518ee9bff0d475189546, + limb1: 0x20662103d23fb47f1c7ccbae, + limb2: 0x16559dd8c6852b5c, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x4bd870b5296ac26458bd2d61, - limb1: 0x8832028d81f2fd50b4be5d2a, - limb2: 0x29a4764d31c2b749, + limb0: 0xce33cafb6c44018a978e1075, + limb1: 0xe66c368ddaea13ec785eee22, + limb2: 0x43db9cbd7ebaf41, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xd9fcaa87fe8be1e7524220b1, - limb1: 0xcb588da0dff5f9e307df5a5, - limb2: 0x176ae32b11b2de80, + limb0: 0xebd89077ef4cc74c19f05d99, + limb1: 0x512e8cbc5ae3a76c3f86f0b3, + limb2: 0x28795173d922b4cb, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xedb5d5245fabd985bc879b06, - limb1: 0x63b555c22b4d688b8114aaf2, - limb2: 0x208e0fc200fec1e2, + limb0: 0xcf5be2f52e99e40866c76b5d, + limb1: 0xaf0be8748c310f31031d58bd, + limb2: 0x1ee2608b00e8f1b5, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xba55323e2d07b977d1952038, - limb1: 0x90cec43ac98ff50b939ab02f, - limb2: 0xf7d2a7c44201e00, + limb0: 0x2e1af0ef6c35027d37f7ba49, + limb1: 0xb6b42f6af0509c1d68a89732, + limb2: 0xa98193d539449dd, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x550c8edff0da404b81b73c79, - limb1: 0xf7cab720ff1ddf69c37b24cf, - limb2: 0x300458eb5ead6a8b, + limb0: 0x11bad88e22f74fba773cd937, + limb1: 0x18abea473a1b73a6bffb1179, + limb2: 0x2b22e3359fbf234e, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe67729889b9ad72f5729face, - limb1: 0x256504e59555f13e5528bea5, - limb2: 0xc5115e7c69e95a5, + limb0: 0xc4f474a229958f6a80ed4db5, + limb1: 0x3e02c3851be1452d89a57253, + limb2: 0x2be129082a85d4, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x5bccbce7a7db3af4ce8dd122, - limb1: 0x16a9b34d48f90e024962aeed, - limb2: 0x12af45dca1192e18, + limb0: 0x5c5d123c93022a6446c18520, + limb1: 0x920144aa621685cd4ebfb8da, + limb2: 0x1184d2f174d06a1c, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x45e37e27a12142b3d6ae7939, - limb1: 0x87d3dc142d5372212c5df406, - limb2: 0x382ac921075275a, + limb0: 0xf5aed20ab888685a7e344383, + limb1: 0xce16bcaef98723e85b2bccac, + limb2: 0x127454a670b7de23, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x52d5c460fba9af20cb9fb06, - limb1: 0x650fa3d4137649fa35ca77a8, - limb2: 0x1fc24de526ce7f51, + limb0: 0x401dcb31391c44dfd6bf1321, + limb1: 0xeffa6f65e05c1055966b58f5, + limb2: 0x2607a634e947de63, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xaf8628f894c87b36b26c5026, - limb1: 0x68f9180439ad8d02f15be11a, - limb2: 0x1790fdd94f27c546, + limb0: 0xbc85d87a2fa7c44a3fd57898, + limb1: 0x349f7a3f192c795f6d1e96b5, + limb2: 0x186739f9a5971884, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x74886bf98709b777d02b8784, - limb1: 0xd13fb17524962b62a76145f8, - limb2: 0x247abc2fede3afa7, + limb0: 0xb5392edab9ee9d43c78e57be, + limb1: 0xe0c328a532e02ad44205c0bf, + limb2: 0x2b3d08639d867aa8, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb6e30c8116d312ca043e2311, - limb1: 0xe68ee703ef27762cbde9a648, - limb2: 0x10943a295a9b168, + limb0: 0x51f15b88921ebbc19258e1e8, + limb1: 0xdc3a704c9a5db4cba8e54c1a, + limb2: 0x2c09744cae686be9, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xcd29cc2a98d9e7f23710ab4b, - limb1: 0x708829b15a02c3a3c780192c, - limb2: 0x8b8843bc2b6a6a6, + limb0: 0x85fab234db612b95380338d2, + limb1: 0x63060672e7e710e38f8738cc, + limb2: 0x17a3fbcc4594d6cc, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xa6570c8b0a98e46bf6fa0d28, - limb1: 0x848fdbc9656fe436afcdfbe9, - limb2: 0x131e31a3c565cb1e, + limb0: 0xee48559eca0049469ae67444, + limb1: 0x6be6c8d61667ae9f38fb6da3, + limb2: 0x2a72af252993fdaa, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xb0afb5140940975b54eac3c4, - limb1: 0x32f128135ae20f705efa8b9f, - limb2: 0xc42e47fb05215f4, + limb0: 0x9b954c8d205f3d08ab412671, + limb1: 0xf9026074cfe83084ccf36bad, + limb2: 0x10cfc50ca9bf7c53, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xa3ccac902540f25dabe56f44, - limb1: 0x90a2fea1d2ec52ab42887541, - limb2: 0xb4629b28a481674, + limb0: 0x3b8b7d0f3c48bf3ecee7c90f, + limb1: 0x46f312fc38d0104f87645831, + limb2: 0x27478a7d46823db5, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xe7858cdecc40cfb92b2401cc, - limb1: 0x1ff1bc402a466f054d8cac4a, - limb2: 0x255b92d472a7e8d9, + limb0: 0xe4eeebd2a71bdc2dd94f4501, + limb1: 0x4d806763c166cacf95611192, + limb2: 0x27b9d452dd21390a, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x29baef17341a11acfffed7ee, - limb1: 0x8bd82a3f7dbe942329107319, - limb2: 0x1ece124f9a599f8c, + limb0: 0x7dc8d2572afa6a74a129cea5, + limb1: 0xe3a4114d19c7eb36f11639fe, + limb2: 0x24c51e6955a2ae84, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd9f4ace7b54227b29ae71aa3, - limb1: 0xa1b7fbd76a4335ff020e162f, - limb2: 0x1a8ff1a48ee836bf, + limb0: 0xefd9e082c5746db05635153b, + limb1: 0x2ba57196f78750542339a70e, + limb2: 0x2099c8c1ba861719, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x95b834f24f82b22574ba8bea, - limb1: 0xe77d70c43c25504adf17516b, - limb2: 0x24193cd705e9bda9, + limb0: 0xd7fa65b08e3906db8daf430c, + limb1: 0x3c3a225b122e5a8f3d9f91e6, + limb2: 0x1069b17cf83a6a0f, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xb2fa2e7ba128cb1ea2b165a, - limb1: 0x1ee4ae60791ed5e7df580dc6, - limb2: 0x74791a4a1631cf4, + limb0: 0x18043da16b3b1fa5e793866b, + limb1: 0xf71881cc62779663a18b95de, + limb2: 0x299858b6ba47a9f4, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb310e65310e0c1a9017e6aef, - limb1: 0xe5a67dad908cadad0de00ae7, - limb2: 0x2a6be1cca1828046, + limb0: 0x78fcf8766902d6397277448e, + limb1: 0x60f9d439a6157a2a6e919d84, + limb2: 0x1dc11665780cf561, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xbebc64d8f0f32775fbb5a97b, - limb1: 0xde0a0779903567d8bb9668f4, - limb2: 0x2552c4ebe0adeef5, + limb0: 0x65759795e874e6ed11b48b84, + limb1: 0x707867bd92dfa96b14a3f295, + limb2: 0x21f531cddd767e5, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x43f2caa64d30936f9fa19d2, - limb1: 0xef75488415b994e334809cd1, - limb2: 0x1d5e5c7d418a68e6, + limb0: 0xfea7db83293a1a9a0de70c9d, + limb1: 0x14cc899c3900790eb7b823cc, + limb2: 0x17b996521dc3c9fe, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xbd6857f47c856b060c011db2, - limb1: 0x2e22c150c2190884d81ba62d, - limb2: 0x1c9dc484b11ea61a, + limb0: 0xffedd7f4e126bf4bbf1a248e, + limb1: 0x387ef26f518e43e89fca3713, + limb2: 0x1f47a0c6867741b7, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x231384a55b6e9e88d91cc1ac, - limb1: 0x9676fe22be22b4fe45183f5c, - limb2: 0x14816b65a9faf753, + limb0: 0xaa0f6d51adb62fa60c879730, + limb1: 0x5045e0ea8759620506a3418d, + limb2: 0x1a2664cb947cafc2, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x67812118b8d6bf7988e4da0e, - limb1: 0x8bdcc75b68aad55ae1a84888, - limb2: 0x2097cb698bb25045, + limb0: 0xa7d91e19db4c6e7971204e09, + limb1: 0x744df1e55ab21c1701c75636, + limb2: 0x2bd39a1de2eebf67, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x838a687940a441fe0740527a, - limb1: 0x754899b50c61cedb665e9632, - limb2: 0x2b607e349e7be43, + limb0: 0x505482fa99bd739d957171ce, + limb1: 0xfd79783e4ab631be6eac383, + limb2: 0xb07b53f5480990f, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x170f72aab758bd06f53dd36c, - limb1: 0xcc6deb0d7ef4a91551a0ac17, - limb2: 0x14f8d8e3d4061ac6, + limb0: 0x993ed304e914a00e9df10c9a, + limb1: 0xb9f4ec206f6d35bffbd26766, + limb2: 0x1d9686120844677f, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x6127f1f48ab447f8b299af00, - limb1: 0xe4bf9f72cad5bf2b9ef935e0, - limb2: 0x21413b30adad2eeb, + limb0: 0xbf51c45f5a9e41110faa08c3, + limb1: 0x2af2dcfe4beb5fb088c36c0f, + limb2: 0x208f72be1f92c348, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x4ce9e3cb73938426309a4c88, - limb1: 0x90c3c2135d058173d9bec214, - limb2: 0x2fa65153b4d03b95, + limb0: 0x673933cfc436a2a84d099144, + limb1: 0x18632ad564c68b489176bc4, + limb2: 0x25e81a277944f8d6, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x39d20f6bf2831ec1bbecdc8f, - limb1: 0x15c141ff3cb8a0f05d32d8f1, - limb2: 0xd4d92d620fc3cd3, + limb0: 0xcef15b8d535b290f1fc408a8, + limb1: 0x270e87279a156505136cefae, + limb2: 0x1bb93af44eabf196, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x809132db90061063bf4977d7, - limb1: 0x767a976977a51c9e8f7dbba5, - limb2: 0x157b40cc9cbf8c6a, + limb0: 0x2a1311eec4782b2582075494, + limb1: 0xfaf9b237401387b213593a8a, + limb2: 0x283460ee34f7d1f4, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x74ea71503f4d439c0d22a38d, - limb1: 0x8430005f55cdb863e929a01b, - limb2: 0x27098bf43230c913, + limb0: 0x2d21280eeab000bec0ff0763, + limb1: 0x75ece57c5d85c503f731c081, + limb2: 0x13e213668bfca3a2, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb12a878f4575e1b8197474d2, - limb1: 0x68103cfd5a437c4f051d578d, - limb2: 0x2e8b35494915952a, + limb0: 0x35758da6281a9bcafb32489f, + limb1: 0x1948af7b6289a34b3e1214c8, + limb2: 0x26875bd5c1016315, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4c3b6707efa9d3fe82f0c45f, - limb1: 0x48f14d8768c12ad854544eb7, - limb2: 0x188e6e8cbaa65971, + limb0: 0xc2c3da41daed8840da54290d, + limb1: 0xa3377644e9b1b18de327daeb, + limb2: 0x31463fb3f5ea8d8, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x4227deb8fe5b68857076c2ab, - limb1: 0x5135f6095fe7049b6847ea95, - limb2: 0x172a309695981496, + limb0: 0xc46ca167c8ad9bf9c0f5b62f, + limb1: 0x5af90d6ea8483b491308c2ae, + limb2: 0xd6bd7fb0c51a942, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x409dabcfa6842620ca798807, - limb1: 0x7484bfe7935e6d313d845ba5, - limb2: 0xa11d4d2f3628dfe, + limb0: 0x2353e782211186d7ae975b09, + limb1: 0x1392704996c6a7342c18216b, + limb2: 0x1dd3ddf4f009ad61, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x4305da39327d1f735a46daab, - limb1: 0xb1cac1222cc1ea2bebad610e, - limb2: 0x290d2ee385ad6970, + limb0: 0x3129182ea53958d995998f2e, + limb1: 0x48a0f1e7b2c50da3b1cec5fe, + limb2: 0x28e9dff57b35fcfc, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x6ddf2cc66c692ef268441d2c, - limb1: 0xd5944da8b1e135e2330f0efb, - limb2: 0x10ab4944c3f767, + limb0: 0x6b6cb631109931a97f7f05f5, + limb1: 0x4846f93897fb497abd1b18a3, + limb2: 0x1606b2503b7f4dcf, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x54d43be5f53496c9e887c939, - limb1: 0x50697341b8a2a346f47473b4, - limb2: 0x95c1db937bf3cb7, + limb0: 0x450192185d433d86e1d53a49, + limb1: 0x397a84974c957e4053ffb708, + limb2: 0x503ecab96c86ee0, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xfda199da460826fd313e8c4d, - limb1: 0x54498779b8e89693e6c5b801, - limb2: 0x303065624449a537, + limb0: 0x81e7a4e71a277ef928a3a4eb, + limb1: 0x66bb99200b64389f0d1ae6c4, + limb2: 0x2406da858af6539d, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x2209412710137cbcd771cca4, - limb1: 0x87e579ecaa6ee417cac90f88, - limb2: 0x304d825d836c7f96, + limb0: 0x25eda63726db38efe8a0013d, + limb1: 0x8ead12fda0102f836b6d4817, + limb2: 0x154c0b515d8161ba, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x39388ff9e076e1edefaac31a, - limb1: 0x50d5f63b5fc47f6eea698e5, - limb2: 0x167d285acce32737, + limb0: 0x9ccfa531969a6740ec6b9bd3, + limb1: 0x7c5a3d5c9182016640383fbb, + limb2: 0x2f25494b6ed8aba2, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xbeccc885e472048a07f2bc35, - limb1: 0x4c34f219ef1a4eac33b05d5, - limb2: 0x120cd5fbb3f90a31, + limb0: 0xf643df59373a0d29e08fd779, + limb1: 0xe37eee06fc5aee4251ea9c6c, + limb2: 0x44adad5df2b9545, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x3b9d52b67bdc7b758e550b29, - limb1: 0xf19b699cf2b400fb4f613706, - limb2: 0x200903643c3ecd96, + limb0: 0xe0374cf78a6c2b9a0749c83d, + limb1: 0x90be634d8d360066fbeee1a5, + limb2: 0x12d96f0665847763, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x39ba019a6272d1a8b0301e3f, - limb1: 0x9376096aba8eb5343f75e8d7, - limb2: 0x252e09ae1797db3b, + limb0: 0xc4f5ff552e48c8ec22851fdf, + limb1: 0x72c5679deef07b1665dbcf46, + limb2: 0xa314ebf11826167, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa45e153c3b8d1b36700dda21, - limb1: 0xcbb2f3c86f4295f8d045d4ec, - limb2: 0x299e61a6a44d25f9, + limb0: 0x6ace38504428dc9fa470075a, + limb1: 0xedc33cf7bb49ed9d179d8944, + limb2: 0x224992dc2f40a28d, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xc69543f64244b72419da5c7a, - limb1: 0x253bce6731ceb41acdac93df, - limb2: 0x2cdedff80f0e784f, + limb0: 0x9abbf8c47921fa0d157e4f8a, + limb1: 0x3070696d31e61749430a8dde, + limb2: 0x2b5812affbe50455, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x104c15a89bb65552fdbc3588, - limb1: 0xe6274772d2798b188b8f93df, - limb2: 0x1656a44912c003d4, + limb0: 0x1b2deb65e6cd6e95278f9acb, + limb1: 0xf45e60ef8dc98a50d2950065, + limb2: 0x2bf75f7e698016bb, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xfed770c50ae0918d67b25d00, - limb1: 0x33551093ad3ed7419d18459b, - limb2: 0x2e306d07631e2135, + limb0: 0x6bb295cd090767d52697e19d, + limb1: 0x5ebc093652481e3196d21fb, + limb2: 0xc8afce8657e5a8b, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf903a07dd578cc7f33439954, - limb1: 0x9c2b7556b18a02307b2aaa22, - limb2: 0x6aa4a23a045612e, + limb0: 0x59b3585a0a77ce3fb9aac913, + limb1: 0xf0f0f95d64f2105141b37e60, + limb2: 0x6f654e862cb868, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x9f703fbf7a5a40a3beca20b7, - limb1: 0xd2345640d98c759b58d23d79, - limb2: 0x2ab967c5d1b64fba, + limb0: 0xdf7d2e396ba48b7431dce3cc, + limb1: 0xdae2b640ef72378f664583ed, + limb2: 0x2058731bc20b7f5f, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x906ff5d16df5dac793edf9a0, - limb1: 0x822b2b0776320181ec0b2af, - limb2: 0xaa72f61beee11d7, + limb0: 0xf60681806f7cd3c5d650cf9a, + limb1: 0x446f2c0eef55f362ffde029b, + limb2: 0x615f41fa72a3e6a, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xa77ac0d967c66f3990ec11e4, - limb1: 0x71f6106d5431382f35056141, - limb2: 0x35eaa763f64fe59, + limb0: 0x18563b000710b02f21fc897b, + limb1: 0x9f47d2c2030d29930167ddc3, + limb2: 0xb23730a1e76067c, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x404c55351a4b5574ab9bd81e, - limb1: 0x64846c33a3889fcbf53324dd, - limb2: 0x2dfd7dc89da8cab7, + limb0: 0x6973449ee17d841969b6f992, + limb1: 0xae318219547a2bc9526675c3, + limb2: 0x273675f45aabb181, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x2ca4d01335df0c5aea09a549, - limb1: 0xdf30348eb0cb11eafb537578, - limb2: 0xf089e2afd4e2598, + limb0: 0xe09c09be912c560736bb7a64, + limb1: 0xa8b03b6bc32ac4d5de10dfed, + limb2: 0x2e8ed53929190795, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe105e89030d0b13729c13f57, - limb1: 0x53c0e5a116140592fab8cfe7, - limb2: 0x2568156231a35bd0, + limb0: 0xf9cd86063e8ee5ee30665d3b, + limb1: 0x45b2ad8e99657b83a7c8d47e, + limb2: 0x5843c93ab805f25, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xf46bf2d8ad19f6fe1be44d95, - limb1: 0xe5280cbc146092f800489075, - limb2: 0x152746346523b33b, + limb0: 0xa58586e4453dfa3e754c03a6, + limb1: 0x1292807e85c1e2eaf212e7c, + limb2: 0x2d8b52a1bef49ed8, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4ed7b726bc13ee9bb8cabade, - limb1: 0x42e95d91e99e50360369eb85, - limb2: 0x2486594633f287b, + limb0: 0x48cc6bde889390a76dab9114, + limb1: 0x206ca53d2ffd0464d3cfd1d5, + limb2: 0x2c088a7282d93652, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x43d6eef97b1095f3b07d1518, - limb1: 0xc9c7bc07d47ef431221d96ec, - limb2: 0x2667cb5c3505ff7e, + limb0: 0xcc7441e2d026c7d1b9eedfda, + limb1: 0x7c64c4579b62c9be2e04d708, + limb2: 0x58a396e46f856c8, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xc80491882788bda6f09e60d7, - limb1: 0xb5d149b2d8debb4573583e00, - limb2: 0x182db6bca3bf95a6, + limb0: 0x416469b6156518be70e78205, + limb1: 0xce1fb15056a0ae1b22b9e901, + limb2: 0xcd197f2eb261b54, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x4d159ffbe55c63e320538535, - limb1: 0x16cf34185c96b279bbf3f386, - limb2: 0x17e5c0c00f49b833, + limb0: 0xa587c73a85d26588840ac6b3, + limb1: 0xaa6ae4fdc9b6d812e447b5d9, + limb2: 0x42121a611a18ca1, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb4d6b1c8b058241f58f61aa3, - limb1: 0x3cec1b63db0578eb9d5e0da8, - limb2: 0x2448fec9b445849d, + limb0: 0xf8231bda77de9f749444b590, + limb1: 0x36f2c6a5047e906b19197883, + limb2: 0x2a95570aefef6fdd, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3c00d089cc38fc346b931c10, - limb1: 0x489bb3bcd53a205ae3a82d4, - limb2: 0xf10315a062b38a7, + limb0: 0x4a2ffa1bbcdbb5852335a0e9, + limb1: 0xc3721f0829d053b66a4581d4, + limb2: 0x19e960ba23273bb7, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x19a56df3979f269076b31f65, - limb1: 0x505850a4fad28ea397ae138f, - limb2: 0x901830b18ae5490, + limb0: 0x447c841a3d0c942836506d29, + limb1: 0xdda14e8b74d79933d15fa4f9, + limb2: 0x2058343880518f82, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xf7b6df2cc82fe2a358ad67ac, - limb1: 0x44599f76297b3c139dca85ea, - limb2: 0x21aebc43283a5758, + limb0: 0x1db8afc75cb2e9c548212635, + limb1: 0xee197a2bd831ea7c0de8ef7c, + limb2: 0x1117933b96c0cab3, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x7508ad1b120b2493a977fd1e, - limb1: 0xc484bc659a62fe199624e2ce, - limb2: 0xd13751cfea53c97, + limb0: 0xce2361065147c71dfa788062, + limb1: 0x9f0e6b3f4f89335002641f53, + limb2: 0x15b9082a7385d8f3, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xc39b7dee1db1064044c50950, - limb1: 0x74a10d9a37f22499acef8794, - limb2: 0x10987631cb9b9d8c, + limb0: 0x808b1a679ec55059cd73ca9f, + limb1: 0x4eb43382ef1c2ea67e19c91, + limb2: 0x2537acce4331472a, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb93edac7e2c1e9ccf74d81df, - limb1: 0x5fc2b465b3290fdafd7d3595, - limb2: 0x70be8453a860134, + limb0: 0x60d90bf17d59ec750db51f2e, + limb1: 0xd8418c5eff54a532ade92508, + limb2: 0x1b33397457d1c69f, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x120ecc5bded061005788d256, - limb1: 0x6cb132ca9df710448e2a6e43, - limb2: 0x842133bf2bdecb1, + limb0: 0x8efe540b9f744cc610fa1508, + limb1: 0x19a3c516c25586c20bc4ca48, + limb2: 0x265dfa7628641ddd, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xf765b6021dbd053433022677, - limb1: 0x3c4af2e8a167b5b0510e1c60, - limb2: 0x27ddf0d47591a515, + limb0: 0x9bd3922181c6704a675629f, + limb1: 0x2bba401013b08e2cf10c4441, + limb2: 0x493daaa605be8e1, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x2b500629b5cd6d2700419389, - limb1: 0xe68ac25440b87b24a8893c84, - limb2: 0x159e6b3b7899e57a, + limb0: 0x3ee08e88caf981d9d689e0a0, + limb1: 0x75e53c05b781283d8c8d26bf, + limb2: 0xf5c81c2ebf9ca90, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xce1b3a80d732f83cebb0fd2d, - limb1: 0xcee84f32d537540d0f146f81, - limb2: 0x251c4f20a773829e, + limb0: 0x7389a19a4702ea93f76c4603, + limb1: 0x98286292efb222ba1d30fde8, + limb2: 0x59ec058706232bc, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xdae225d9af7aebbdf833ff19, - limb1: 0xa67e2cba0baa8e62204fb268, - limb2: 0x1d6548a008b22b9b, + limb0: 0x84bcf4c051af1cd6e848c62d, + limb1: 0x78bdc202643db21d6865c389, + limb2: 0x21ef7081855d3c07, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x468af576cdc6465ed464f714, - limb1: 0x1aa0a9927d55768f1bdccab6, - limb2: 0x2c5968e341b037e7, + limb0: 0xc1cff07be9ed830b6abf1299, + limb1: 0xf3cc5960396e3baf9745d03c, + limb2: 0x98058619b1463a, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa8548a668b01fe6691e54f56, - limb1: 0x261d12ac8f80b2675cc97f67, - limb2: 0x10c8275054a1db35, + limb0: 0xca40f2dc1724ddc32cc4d1c0, + limb1: 0xe6fe046f47c7792342f12e8a, + limb2: 0x35ea504805c0717, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1368e8209177795d00bf3b87, - limb1: 0xf1e90525a699b050183f75d2, - limb2: 0x24a1f20e31545f2a, + limb0: 0xff136d27019a56db104ed13e, + limb1: 0x698528a4be7a08d772f2d250, + limb2: 0x2285d7b8c726470c, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xa9c67608664264ce24a5d633, - limb1: 0x6a5f0f824be130ed510de66b, - limb2: 0x18bfc318aca9adf7, + limb0: 0x40a5e63afa665eb74309204c, + limb1: 0x4880067d5219825bfb793b3, + limb2: 0x811894701d7766e, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xd82ae0486cc46aa7138bd62, - limb1: 0xcbe69a9684a883e227dbf77a, - limb2: 0x25a8db781a8683cc, + limb0: 0xd6989cbae371158c254ed469, + limb1: 0x97753f3c7c434da9a193faa5, + limb2: 0x46bb2676553312a, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x6ec51b98736c9292f0c38e31, - limb1: 0x5396fcae9b36cb607d12e537, - limb2: 0x2c4149d2e5a8c33d, + limb0: 0xfbe7c34534290895df1f45c, + limb1: 0xb32eddfcaeac195007278dc4, + limb2: 0xf5d8a0f1b19785c, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x80872290ed5a89fe046a372b, - limb1: 0x3fa146833eb1f167fc250a95, - limb2: 0x1a1dd3725ffed9ff, + limb0: 0xca3e0ba40d027aae31f4b0ab, + limb1: 0x36c419257ad0242f110caf25, + limb2: 0x1873cf510531d72a, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x171195de05b44b4f0651338a, - limb1: 0x422e6286759d0d72b21484e8, - limb2: 0x9dd32c2adace017, + limb0: 0x67d103d7b22bb19a0aa8f2ea, + limb1: 0x48ff1a57be11540d962ebb34, + limb2: 0x2f5de7b15b1aaa62, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x5ae5843341cb27874fb1c1b1, - limb1: 0x2a24a124861ccb87854a1b7d, - limb2: 0x12e9eee1c23894b4, + limb0: 0x79f31fc8b0a32d0fae8e41c6, + limb1: 0xd17de62e68d523850b848ea9, + limb2: 0x2341a035c21df39, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd37d442996f1deae2b0576ed, - limb1: 0x3d9cd40ada10652e3885d0ec, - limb2: 0xeccf7ff0554e4b5, + limb0: 0x95e97240c14b0bbfc35ca1ce, + limb1: 0x2f8d5e3e530e6bac29197387, + limb2: 0x1cece1271d4b632e, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xf014490080c69694971e9b6a, - limb1: 0x553b396166961bdc93bb0dcd, - limb2: 0x20221e786b1e99a2, + limb0: 0xe0ef825af3d69ef42d3d7ad3, + limb1: 0xee1a8d6309bf8eb2ff05be1a, + limb2: 0x77d40bf47f871e4, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x843b6fea2e6ad30d5126a789, - limb1: 0xd7e1a631063d2bf78deec8e, - limb2: 0x2ac233a88109aafb, + limb0: 0x6b1874c62ce3c24df3c663dc, + limb1: 0x584c0170b448a56aafd60a1d, + limb2: 0xf67f8c062fb245f, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x9de0d14948b8146ec147b016, - limb1: 0xc054d27c28c85ae1af716991, - limb2: 0x221f2a9d88e7cb86, + limb0: 0xe683f9d9567ae7c709e33f29, + limb1: 0x805186d0a654f59d68d9d72e, + limb2: 0x15414fd26b182bf, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc3c683794e83952cdf366b7b, - limb1: 0x95057f6c85cbb532b11c4adc, - limb2: 0x6e63e5f32473834, + limb0: 0x301726e10f061bec392ad550, + limb1: 0x655a479fcc6d5e9cce879f2d, + limb2: 0x23fb25b400911619, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xabe225c55342d02ea36cf7d1, - limb1: 0x8869d02a963e9d105de6630f, - limb2: 0xe85bc612cd43391, + limb0: 0xdd508b98c30dffa556ad91a9, + limb1: 0xa4180c7a5928d41a87763709, + limb2: 0x16ec1cc21fa0b501, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xdde6a32dac4a2c3259f32f55, - limb1: 0xb1226e4c8bbd0f5c966383f5, - limb2: 0x37432c8880f7858, + limb0: 0xe415c5e8d353c9f2ded56ae, + limb1: 0xfe1cef28962c0d481464fbc5, + limb2: 0x29d4b3dcc4af2297, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xddf8bcde168d877fc489145d, - limb1: 0x91d9db0ec9f51dba0afceaf, - limb2: 0x2048a8c3e1177c5a, + limb0: 0x18691e9eb855bc2b0d1e354a, + limb1: 0x2061830bf79b0786aaa2c3c7, + limb2: 0x61f982d29fbd0ab, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x73f62a7019abaf424ee280f2, - limb1: 0x5d2d7fc45c0dd76db25c3a8, - limb2: 0x128b1d37521d0bf8, + limb0: 0xb5d60bbd04b0d6febdc4666b, + limb1: 0xb0c7dab5aef9646267cb2ede, + limb2: 0x241ec2c047bd05d8, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xba86ec47f4722eda3b89059, - limb1: 0xb8e60b08273e4e67e4b28e4d, - limb2: 0xed04b37b62e6b7, + limb0: 0x6b0332d0d603ccd8b1d397ce, + limb1: 0x3b7fd555c18536cdc1e8231c, + limb2: 0xffbd7858597245b, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xbcd3a1124eada06c019e3c77, - limb1: 0x3be787d099c18f8ef172f626, - limb2: 0x5e7b1c9712454b6, + limb0: 0x58ddc8f7ffda605567e5d6de, + limb1: 0x12caa16417ceee6cf416ee50, + limb2: 0x1906ebbdc52a295d, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe0a35a51978440214d222e09, - limb1: 0xe1d7b69c852dbf05d4e411f5, - limb2: 0x289a3442718d89a1, + limb0: 0xf5dd512d399efdafc777c83, + limb1: 0x11055290d1270cf303faa402, + limb2: 0x297582bf64dbabc8, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xb18e26673f0d288a2edf374b, - limb1: 0xd3e69a3a2f7dc586870b538c, - limb2: 0x295bfb7cd5addb5, + limb0: 0xafa2ff765bb810bd11dae4fd, + limb1: 0x94ef4bb93f31a27dd8b9ab40, + limb2: 0x2d8fd2bba48b406e, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x915acc69addfd575e6107545, - limb1: 0xa2184383d894fc38ecbc1b5, - limb2: 0x196efa4624afe181, + limb0: 0xdfe1f54bc5d34af032a0d1d5, + limb1: 0x29d58db84fdfb12dc04b4843, + limb2: 0x629c19fa0229ddd, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x73cc04b7815266d2d0aca419, - limb1: 0xe774b5a6bbf13367b39ae3c7, - limb2: 0x23738c227561ca44, + limb0: 0xa1c70f77691d219bc44b6f3c, + limb1: 0xbefd9e5bea3b078f52ed3740, + limb2: 0x272b5d4e472f3d68, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x10eb34fa1072ab6e1b59439e, - limb1: 0x8a520267209e34282dd9ab7a, - limb2: 0x16d971290a19fc6b, + limb0: 0x83119e4ebb274e8cf5140f52, + limb1: 0xd02ed6aed9c50a55516b4e84, + limb2: 0x1fc510dc1af1cb78, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x471fa3d19d3675856a5a78e4, - limb1: 0xcfc2cf716c5868e5ca6d434c, - limb2: 0xe338212c6be67b5, + limb0: 0x2934805b6035a8306b5a832a, + limb1: 0x10b63f9955b34f71c76d1e77, + limb2: 0x1050588397064100, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x30d7776b4ce0300e7ebda974, - limb1: 0x3042514c0c3a60c975afb834, - limb2: 0x28dcad55d053f6d8, + limb0: 0x811d4c56f992744bb64e8a97, + limb1: 0xd21e2a93ced7fdbeffc14d62, + limb2: 0xe9b8fccef818567, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x7ba14b61f08fb92c4deb7b3, - limb1: 0xfd111f8897cdf50838b532c0, - limb2: 0x255c42e457422403, + limb0: 0xa388ab3ebac25e831626d834, + limb1: 0x5fc0accb411d85d69c7fb8ab, + limb2: 0x1cb4937b307c696c, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xf93bb6c611b4e5d0f6dde5fd, - limb1: 0x2d8244c244e427a425470824, - limb2: 0x1179cb1c16ce4975, + limb0: 0x7d4a547141753263f69a883f, + limb1: 0x8b376ba558dd65f876d5d4b9, + limb2: 0x24655aab406f70b0, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x291dffdc4db41e8346edbd9d, - limb1: 0x28da3f3de7dc78c9762529, - limb2: 0xa94cb1235b3686d, + limb0: 0xd1718885ac64905c5284cd35, + limb1: 0x9677463fa5a48ca4bc187eaa, + limb2: 0x289be58a3c591546, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x741beef7f740bc6f76f24139, - limb1: 0x6d73274eab70165a491d907d, - limb2: 0x1f8c4789232e5148, + limb0: 0xb479ae283038d5d8650f0713, + limb1: 0x75e493f7ca052541a465455, + limb2: 0x13ae926e1d68e59c, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb5afed7d2b43af9f42bdc5b7, - limb1: 0x42920b45a4aab464be367350, - limb2: 0x52481bada99a834, + limb0: 0x69a4b068ab96472abb0d6203, + limb1: 0xed557f3b47bfeaa003174a33, + limb2: 0x1ec8dc1c229c1501, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1559c8b31b054e07b0dffd8f, - limb1: 0xf47413f284cd03ee796db0a4, - limb2: 0x119b2c0d45ce6f6e, + limb0: 0x44592fefe8271045538ebffe, + limb1: 0x65371ea7eacfe83187dad93d, + limb2: 0x18d376b9b08a464c, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd0eb52a2bfefad25c78cdeeb, - limb1: 0xbfba5e02e1072588a7334b7f, - limb2: 0x278294bbc4129984, + limb0: 0x1f4e49cc82aa15e570237c73, + limb1: 0x3c12317fd2ff4ea3f2705d9c, + limb2: 0x2799501380d08162, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xaa308bba9419ff12e0bbcd6c, - limb1: 0xa8a297cddedeeea22148a245, - limb2: 0x1600784b213705dd, + limb0: 0x4151fefad30eb8a549440092, + limb1: 0x4e345e010b53f1facca898f9, + limb2: 0xb5f84a89ae55874, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x78ae650dd075ed34538bbdbb, - limb1: 0x2da9f2bfb0f2cbd83ccb26e4, - limb2: 0x261208420786151f, + limb0: 0x4f15367df9a6b065df0ffcf0, + limb1: 0x3c92f5fd9ff98be62d5c11a2, + limb2: 0x27a5f4eecf54fb4b, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe29142a813716e83a5ab46b, - limb1: 0xe52f4ede3d0871fc91174aa9, - limb2: 0x66d502eab73f111, + limb0: 0x6f9e32c6be3dbf23a3f694f9, + limb1: 0x4566743003501ff90bc2fcc2, + limb2: 0xd2acb44a8e2ec61, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x6aeae0f538bd9bfcaf0c8de1, - limb1: 0xc04f54be5f5c3aefcd1ccc31, - limb2: 0x5bedc208565b5e1, + limb0: 0x3c6c36315e09e82ca050bed6, + limb1: 0xb9fc01c0482d94c75d5f6242, + limb2: 0x252cfbb88ed1c486, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x65cc85d6583cd1041fb0536, - limb1: 0xcc2fc1eeb492019da18689f4, - limb2: 0x28966afe90fe1e85, + limb0: 0x55aaa89d5231b87f8cf75821, + limb1: 0xad382b6e09dead18c5d9c087, + limb2: 0x5ceae64f6ede765, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xdf2b8bdc7b6bce3c42b23459, - limb1: 0xb759cac5d1de2fc54de10f22, - limb2: 0x25b8dd37c5ccc96f, + limb0: 0xd7bfac55e82bacea45e518b1, + limb1: 0xc205ea62c7c9f80eb19edc04, + limb2: 0x21d8e584d5e09a8b, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x1aff6880b81abba09c6d1f8b, - limb1: 0x3dacf2105aea95e3168fc65a, - limb2: 0x15112b2df210c79c, + limb0: 0xdf672fb96c756590bd5a39d7, + limb1: 0xe0d70414b121aef6b19fd4b6, + limb2: 0x2584eccb621b3893, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x881e34225b5f6bb4a8deabe4, - limb1: 0x8ce17c8cbe0f6928e5efe0e7, - limb2: 0x2610dd06bd95e6f8, + limb0: 0x9f3d5407412eff8a16b6273a, + limb1: 0x591fcceae3788e83d6b719f5, + limb2: 0x1b2963028531f45b, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe5587a4530c62858c8f543cd, - limb1: 0x507b79c5bc11539d2b72d65b, - limb2: 0x1715e822dca43ad0, + limb0: 0xf2b1322f5d6653cadf42f345, + limb1: 0xe57685fedddc9a0786dc401d, + limb2: 0x198cc100df2dea75, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x39798dd3f1ad3427d9f23c79, - limb1: 0x187713d83c78015cee4a4df3, - limb2: 0xd2708abba95d860, + limb0: 0xa564bd4501a850092073f65, + limb1: 0xb07ff2e93880d676b4455532, + limb2: 0xc2499fb90cdfd1e, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x79c8ac89032c6cc4c84a3517, - limb1: 0xac1216a341a6b0badd606da, - limb2: 0x5ca3012dc886b26, + limb0: 0x954bf81acc0fecebb611ac41, + limb1: 0x12467450d79fb7c0e1c0965e, + limb2: 0x1afa4ba98f7edb4c, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x94d857ccda9e6be2efd4ebe, - limb1: 0xc363ae0d502a2eb68ba3f914, - limb2: 0x145e5b5d0cad3158, + limb0: 0x612d63c3a0bb223e3964a5c6, + limb1: 0x9cbfb6feb6d0d3bcd7fced38, + limb2: 0xa5498fcfdfadcd1, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x325b1d31628ddbba0803cc41, - limb1: 0x75b7e944db98ceb393643919, - limb2: 0x2717d5e3a1519f07, + limb0: 0x1fd27773c46567f671d7783a, + limb1: 0x5d0db0cca5323dffce2223df, + limb2: 0xf2bc13955319d94, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x54ed2360dec821b36218aae7, - limb1: 0xf85e98716f6c7db4c9171a3b, - limb2: 0xb04b815461779a9, + limb0: 0xd3f5711d881025d89e0064fe, + limb1: 0xd76bc9e5d79a2c6c330e84a5, + limb2: 0x1c28c7a4971f5dd8, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x7a8332de45f83c1ab9244d55, - limb1: 0xa714b23714da4f13db886db6, - limb2: 0x21530674ed55a962, + limb0: 0x6125b1e349295b863651ae95, + limb1: 0x928c3bcf9986d76e5591261b, + limb2: 0x13f83f9e1b233a2e, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x752dc934df65b38c5590bb0b, - limb1: 0x17a9921f1e0e9019e18dd9d5, - limb2: 0x1c98e2288b9748ba, + limb0: 0x91bed47e585afc63a46e3764, + limb1: 0x4fc95a8a15eb08ff187a8601, + limb2: 0x15451da53b259035, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3697e9ed25a11f6f63cd3f2b, - limb1: 0x1cd0fd18adb6dbe7c95336f2, - limb2: 0x20d5081f906ba9c8, + limb0: 0x1fa6dccf30293a9d5b74aa9c, + limb1: 0x59dbb0c415781492faefde4e, + limb2: 0x11e7c4ab50910f3d, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe0cae8326a28ab5003d5a56f, - limb1: 0x8a82aafa816758306aa680b9, - limb2: 0x1c9d52c0330e8a47, + limb0: 0xf275df9663c41f755856fbec, + limb1: 0xccb71823a7bac3beef957a80, + limb2: 0x214e700679bfe89c, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x290fee5401bf363c39484f0a, - limb1: 0x81a0fbab52a6b9edd8fade1, - limb2: 0x26869316b832369a, + limb0: 0xde1874f3d916db82fc458178, + limb1: 0x6a1862355d0d354ee276c1f6, + limb2: 0x2dae091f643c6c34, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x2dea5473359fee51cb2e0702, - limb1: 0xb231af1bbfa2bf52038133c2, - limb2: 0x111fbc860aaa20dc, + limb0: 0x9824e54061f4c27a1fbda5fe, + limb1: 0x58cfa62470ea05c32d0a18f, + limb2: 0x10b21bc91e43bae1, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf11b709b49dbb30d02ff1d0a, - limb1: 0x8eea8f62019cf36e6701235f, - limb2: 0x1821e4e8e4c02c75, + limb0: 0x58446a2dfdc4578ba00dc79e, + limb1: 0x9d3f0741f761858f41e8eb01, + limb2: 0x23cf87b57935047c, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x137821e1d5bf35628ba35bf8, - limb1: 0xf5d47e94f894b499145b6026, - limb2: 0x2106fcc1f425b265, + limb0: 0x9c002e20b057804c282d4af2, + limb1: 0xa6617003a1a5ba5e825756b8, + limb2: 0x1c547a1aeee63e2f, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x6cc02b9d8a922c99ea1283e3, - limb1: 0x71d0944653d0c8c455565a25, - limb2: 0x1c1a4c6035238785, + limb0: 0xa538146311835f459a7118a9, + limb1: 0x30fa2b38529f29ab8b3c9b05, + limb2: 0x2bf4983e1ca6fb93, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x44fa0839d88b31d04c19b8d6, - limb1: 0x97a9bb1fd404f124fe4ee6a5, - limb2: 0x16a0fffa55b4b778, + limb0: 0x2bf293c1fc289dd1a8262d0e, + limb1: 0x3a4cd8c98f5f340922f50805, + limb2: 0x38b1e2722bf0375, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xbd1c68db288be88835fac486, - limb1: 0xd7d1b2ad10864f16a77c965d, - limb2: 0xd3c84c5ab3997c2, + limb0: 0x17eb9bf6753bbdaf2c07bba3, + limb1: 0x5dd421ea0b5fddf3c9f28fc2, + limb2: 0x253fa6f8cb3422f8, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x1cd683fe4fed3b51f7132d49, - limb1: 0x51dc3c80877df4adf903e18f, - limb2: 0xf0ee5a7a7c8974, + limb0: 0x6d5c0089806dac1749e81065, + limb1: 0x11f2f459028952852147bbf, + limb2: 0x19f9978f897239c9, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x143a6ee69765b53a86a0659a, - limb1: 0xcd52cbac21a127cb0bdb4f40, - limb2: 0x1dbb3e12d27bcf19, + limb0: 0x46911116650a70f01f4b5208, + limb1: 0x291f6595f569862372fb1efa, + limb2: 0x8c6742965fd07e6, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x10b4706e6a72cc61e6eef3f9, - limb1: 0x512e3dae64a823050ffdfecd, - limb2: 0x2c3110ab08aebf6f, + limb0: 0xeeec2534bac6ca98f5614909, + limb1: 0x95115d565c60587616b3d78f, + limb2: 0x174a7c61a23bee93, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x637471c20438aee78e52d7c3, - limb1: 0x9bb739bd0c495b25e482ff84, - limb2: 0xef84ea7df45d4c7, + limb0: 0x66fd0327fe0939b1b6091d1b, + limb1: 0x20a179cbeb891607a0f44e6f, + limb2: 0xd43a857ef40fcbd, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x60da00cd2814ced4110e5415, - limb1: 0xebf545b23b2f4274fe54b12d, - limb2: 0x18c564cf9cc44c16, + limb0: 0x9a5f6c065ff342af4a8ae5ab, + limb1: 0xb36ec87166bae8eecbabce0a, + limb2: 0x1ac54fdd3709d341, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x656c66336c99aa472514040e, - limb1: 0x832a7a79af094744a8042a3f, - limb2: 0x15c230d2750c6a54, + limb0: 0xcb06f074c3a813635bf01bde, + limb1: 0x7e3d195ddf329056a2fff9c0, + limb2: 0x2317b876e54e17e1, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x90c708be1e4a9294d5a8ce5c, - limb1: 0x6c8f0525588b2fa1610b32d9, - limb2: 0x17be7857b9522ad7, + limb0: 0x7723296f355225e823464314, + limb1: 0xb5fd39eeb9fca505c96e294b, + limb2: 0x2d23aa3ee89a53a3, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x8fe07615f957f27e58e3372f, - limb1: 0xbc0dbaf177d7a644f61e06ad, - limb2: 0x5d6beb714f20045, + limb0: 0x4e1802d83a68e145410ab55a, + limb1: 0xc52d87b385eed23a8ffa9060, + limb2: 0x250f342251f63bdc, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb4a1dd92c86dfa5c3e13c8ee, - limb1: 0x6d65673e9aa9b30ebadcbac2, - limb2: 0x17ec77b3f4f4e45c, + limb0: 0x22cd7ec9ee30a69611a42364, + limb1: 0xa62b77e37df83b3b8111f30d, + limb2: 0x10cfdd8fb09b60cb, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa16135910cb7289da06fb7d7, - limb1: 0x4fb5f3dc55e9cd078827953f, - limb2: 0x2d3136a29a9898c3, + limb0: 0xcbd6ef45da3f4224a2be64da, + limb1: 0xb995db4063bad397c8fef31d, + limb2: 0xc0f4e26c1d9ceee, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x23e4a4e757648ea30d404dd3, - limb1: 0xce7a7c679b9a305bcae81353, - limb2: 0xcd418be8736f7b7, + limb0: 0x796023377d221ab470f1dcb, + limb1: 0x1026384e0a1e7c004bf1ed82, + limb2: 0x280c048954d4399d, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x4bca506e3d6e2457d6ced82d, - limb1: 0xb6450ce562582acd18d94a3f, - limb2: 0x294c9a3aa9af73ef, + limb0: 0x272159be4436122d7857995f, + limb1: 0xcf6e54550d2938d10302f417, + limb2: 0xf46b4f0f8ec4434, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x1cec032aac2889c895dd7c4b, - limb1: 0xd2a63ae520a07755f754cd26, - limb2: 0x206e12677d554b24, + limb0: 0x67aecaea3c7c0652c81947a0, + limb1: 0x732ecb9e949089f45404930a, + limb2: 0x2743035ac35490ab, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x492e57a5bbb29a9a58cd0c1, - limb1: 0x36469a8995b991aee77dce64, - limb2: 0x2caa4b3570e23ea6, + limb0: 0x6b5a1c6e5fd1d5187d38b95a, + limb1: 0x64a47f9ed1e4ce44e829c9c2, + limb2: 0x2ab70834b4d0c4f0, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x99853a6e0642e1eed586878f, - limb1: 0xbe8fed420987c530750cc3fd, - limb2: 0x89ac9ec034c10ea, + limb0: 0x561289f2a27d7b28c1f5f257, + limb1: 0x9bfc7da6974110e58b5128c, + limb2: 0x2ae3cba2e11a7776, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x12aa624bacd5f0df175b45d2, - limb1: 0x2230877036c89d6aa2722cb5, - limb2: 0x1d73cd12ab614416, + limb0: 0xaeb175b28ea1bb52b63b1625, + limb1: 0xd9b5dcd7485e0a2997ac0a2f, + limb2: 0xc234ccc6d211bd2, limb3: 0x0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xa813d69ae52922f5eb971fed, - limb1: 0x9973d5d966048e7e89d55ea4, - limb2: 0x2afca4f8ab74e270, + limb0: 0xcab86cb64b149c097c88c87b, + limb1: 0x8d974c6f94f99dc5c4561249, + limb2: 0xd98f2e15f5df10e, limb3: 0x0 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xe7c77abfa56382459f5bbc1d, - limb1: 0xe95f8755435a6365699c7b09, - limb2: 0x2f9b283687173116, + limb0: 0x9d358d2371420b269e3a44d, + limb1: 0xc2a9f0875935ab944a6642bc, + limb2: 0x1610ce6baa512656, limb3: 0x0 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x607281b78d2d8ec96fdb3587, - limb1: 0x635449ac94758ebc30bbcc55, - limb2: 0x163b1619127dd84d, + limb0: 0x5042caea63c062cca51e8e85, + limb1: 0x6723628c461c14da7f427a5d, + limb2: 0xf7df492a9447af2, limb3: 0x0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xcc232fdc9c5a39941bcbeca2, - limb1: 0xc07ffeb8a8615cfceae521b9, - limb2: 0x2d3dc73a8f788101, + limb0: 0xef1bff986cdfbc39040b9a78, + limb1: 0xb3e1f9452951eeb42a1f8f45, + limb2: 0x75b67b6fdb2aa03, limb3: 0x0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa71283147ac59e28f6bc858c, - limb1: 0xa845c86a535de5af972f311, - limb2: 0xdc5c250347597b, + limb0: 0x117f7ccd123d0f0d0709acab, + limb1: 0xe4a9bccc26771a3d2df192f1, + limb2: 0x46eeac5f27dc084, limb3: 0x0 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } @@ -7089,296 +7089,296 @@ mod pairing_tests { .span(), big_Q: array![ u384 { - limb0: 0xbbad6d790f625499a661653c, - limb1: 0x6608b2eac8d231ac63e1a9bd, - limb2: 0x28e357f9239b7a9b, + limb0: 0xd0f2e424bfeafc1f6f500912, + limb1: 0xa41c6545789097521a247939, + limb2: 0x2e5b1b5aff1a6479, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xd4008787cabf77ca3956fb26, - limb1: 0xfb95b65ee83a93e2ccf61c20, - limb2: 0x8b370bd962abe75, + limb0: 0x3ebf88e098d0d20cd73b7b07, + limb1: 0x97fac7725887ee3ab8fe2b84, + limb2: 0x23ba6435dfb1237, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xa70f7512749e3f589f9d83c7, - limb1: 0x782e4bf571deb67b29ae4849, - limb2: 0x2ed55a1749b7cf93, + limb0: 0x3b0ce206f268f7e2895b88b9, + limb1: 0xbaa959355f438cb4174f5892, + limb2: 0xec61d988eb485e9, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xb8d8a0cd34d50001ab613707, - limb1: 0xe2cd9f74824cd58c3716368b, - limb2: 0x24357e307fcbf1b1, + limb0: 0x6fcf60ab2649dac7075d1381, + limb1: 0x5ba80aa57b3232f4a1779a71, + limb2: 0xd85ade5fd4e4582, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x1f4f3b9863a41559fbfec0ba, - limb1: 0x2a15bbaeba63d57c47cc85c7, - limb2: 0x1d40c0ca9a6720da, + limb0: 0x80c80fb53698e4adddad201b, + limb1: 0x351d69b0efa90e59a0060636, + limb2: 0x64053ffebef939c, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xc2830a319da9f183372e390b, - limb1: 0x8da53880ff82bd3fad16d09b, - limb2: 0x2e3f5424a6449b5b, + limb0: 0xef332958d6fb896721a76f38, + limb1: 0x85620d3dab6b29888cc56fbc, + limb2: 0xdc79c80f3c32d63, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x713220c2731dc3b25d4d3fa0, - limb1: 0xb2806369e0c06b57a7db117f, - limb2: 0x2f62ed28792087ed, + limb0: 0xaa75d0d4fb4e744f8ebeeda1, + limb1: 0x2563ad4277345567e6e4c7f, + limb2: 0xe9039ffd629f076, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xa2f5dc5b9ae262df51df82a9, - limb1: 0x40581989de456074fae78e38, - limb2: 0xccd4a77b5bd2d84, + limb0: 0x6a2f7fc8f2d1db80d80ecdfb, + limb1: 0x4dc0911042bab42f2d158f15, + limb2: 0x979c94fec03c73, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xaf55f18968da77915ee4f75d, - limb1: 0x6a3156b790798c2fe09fc499, - limb2: 0x11cd2694f8eebeb5, + limb0: 0x7e58206ff69c4490f90b6804, + limb1: 0x2f6c28031c2f671e48808dc4, + limb2: 0x612c809bf300da, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5e7ec6759039fb117517060c, - limb1: 0x7a61cede691e0ffb7ccf06cc, - limb2: 0xb0dc676238823e1, + limb0: 0xb46c81cac34c8c149983b43c, + limb1: 0x75fa8d0b30533ae642dc074b, + limb2: 0x2189f3537e9132d1, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x64df5d7d1473acab9e422af, - limb1: 0xd4e616390c71704b98890380, - limb2: 0x111c2134d2fa4d32, + limb0: 0x42dacae74e3750f424fee36, + limb1: 0x2d4b3d5a943f935c98d6325e, + limb2: 0x2a94447eee8d8d5f, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x2a73dc5fe8d528fb02c1db6d, - limb1: 0x80add0184189e9a27657a398, - limb2: 0x6394570eabb9dbb, + limb0: 0xdfd48dca23af88ba8b33f4dc, + limb1: 0x59cfed1fa78c51ebc92c19de, + limb2: 0x1a975314abe57f53, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x6c106aef6dfcd7f2cdc4a99a, - limb1: 0x73f98ae63cfcaa3ba2f5b7e8, - limb2: 0xf4c8d7e805ad32e, + limb0: 0xc112fbd6d99d3762f1c6a9f4, + limb1: 0xb5ebd344e75c0a8bb26f1d18, + limb2: 0x1cee29c05855ae64, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x4499e0cdcc3bc6478e456bfb, - limb1: 0x374b24f5db3620128ce51b35, - limb2: 0x1e784a70881ece0d, + limb0: 0x5838dd43e7bb7f42624cf28e, + limb1: 0x56781265753cdf8b34c5a82a, + limb2: 0x6a353b2e9e1f7de, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x7c1d73f150eb90f503355787, - limb1: 0x78207c7ce8df94fded5f1517, - limb2: 0x2ad25cf398917bd, + limb0: 0x4297ba35cd0458378ebe0849, + limb1: 0xed9facb6a123b0ff06dac714, + limb2: 0x4d11dbdc356a72, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x11dd6ad80a3f0006e5ad075d, - limb1: 0x1c4d55ace4726174286b6a2b, - limb2: 0x1143a1b429ba4af0, + limb0: 0x3e9c720f9b26ec78d4616975, + limb1: 0xb161d87d3191d844bf162530, + limb2: 0x1b649a1c6b6b2537, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xcea889c62c5a900267809036, - limb1: 0x63f82aeaf408c589c8fb2030, - limb2: 0x2b206808913ad114, + limb0: 0xdc1bf1114f957c105ca98854, + limb1: 0x75e436adbba05a8a785ed605, + limb2: 0xb6b982d4f76677f, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xcf2482d7aa56e229f4b4194, - limb1: 0x72c35c178dbcad8029e66754, - limb2: 0x13e5b41b0801cb45, + limb0: 0xe0c32cb1678a220c88cee037, + limb1: 0x176237593fc03fdbf78442ab, + limb2: 0x13018ab47f24c3ee, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x8219c4777b25e57040319d4c, - limb1: 0xa89fcd514c51bb86a0aa8839, - limb2: 0x18acd75802c63c97, + limb0: 0xabb8b770fc75e1457c76484e, + limb1: 0xfa484e60e6c5aa7603c1a622, + limb2: 0x1956849c2aa73724, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x40b402af3f7c6dd7637fbec3, - limb1: 0xadfcb3609e2c7e171409957, - limb2: 0x2dfa29ece90b9698, + limb0: 0x71ddd485c7613c068f50a559, + limb1: 0xd4b2342f9ce080dc046f9eb5, + limb2: 0x630a73395319489, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xf319ef2efe360598cc599e2e, - limb1: 0xb899601e26ef32ec13cce4f8, - limb2: 0x68e871fe2c394c9, + limb0: 0x9d451f3743bcb6281e1a1b18, + limb1: 0x38bc0909846b5564055ef7fb, + limb2: 0x144847aac219cd7e, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x875b6e907bcf39957acb8868, - limb1: 0xcd58d1b64f3daeaa3ddef7e9, - limb2: 0x6fe470e2a6979f2, + limb0: 0xe9142e859a604778c263036b, + limb1: 0xbccd6af3727ec4411e952a4f, + limb2: 0x18ce82436ee4003, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x2c0d60c00e15780fc4e52b32, - limb1: 0x74be08962a2b02676ee86024, - limb2: 0x25496adb219668c8, + limb0: 0x465262176075ec00170296d5, + limb1: 0x20516b4023f5d7d51335da77, + limb2: 0xb9cc2ab299370e, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xf840f528e5591c1a2764879d, - limb1: 0xfa403a7334c0f491fd7085ac, - limb2: 0x1301a528306c1155, + limb0: 0x975630f99685786690ad5bc7, + limb1: 0x699f7e99050f1d1b554d6db2, + limb2: 0x1d39d16e1d3589c4, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xcc97d2236603bd885759a961, - limb1: 0xa6a66048df25e03a63c29361, - limb2: 0x23e4b1b9f905d739, + limb0: 0xa2d706bb3ff8672db2ec7e96, + limb1: 0xfdd322a6428e2860d281f0c9, + limb2: 0x18b9f00d3d9041a2, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x60cd4839480c7b16e621b626, - limb1: 0x3c426d0820f9e83554733ac3, - limb2: 0x214c8220093a4d54, + limb0: 0x96c5fd74fd3f78b583964abe, + limb1: 0x97ac65e239b47b966c180ed4, + limb2: 0x2c78e85b2a9ac4f4, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xf7a6f1edc898253b90b1b9c7, - limb1: 0xbdb997e897e0789c5528f07e, - limb2: 0x13ecf4a57d306852, + limb0: 0x50fae13c8ac3b7bc0af9150a, + limb1: 0x6cc5933c428a4c3ea2010fd6, + limb2: 0x1123cec40efe5754, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x4c9066e858e2214dbc6bf5b6, - limb1: 0x6f0d63efdde59dfca30af467, - limb2: 0x164919e1cf86e67c, + limb0: 0x25a6d3572057adedcd112d05, + limb1: 0x75ee480ae97a789dae478a83, + limb2: 0x2fece4edec4b8467, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x30bb696ec546f1c1d42f048b, - limb1: 0x9993eee13169df6cb5a3cedb, - limb2: 0x9dd6feed6215c24, + limb0: 0xdb5ea29b5e93ca2cf77f8e49, + limb1: 0x1f8243c3db4008aaf318872f, + limb2: 0x7953249bc47973b, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xd74f01e7e7afe2bd8eed0f4c, - limb1: 0x138002418f6ec3da6f815976, - limb2: 0x7815a230ce0706a, + limb0: 0x4461379a81115fbbdc45dce1, + limb1: 0x977684859eaf137fab5b0fe4, + limb2: 0x22e22c52118e52f7, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x124008172669328d5c5754ab, - limb1: 0x446b7b257b850c1d6c97d993, - limb2: 0xe1d3c4da4534adc, + limb0: 0x7149190b8305e7181ac30d05, + limb1: 0xb55e5be0337befddb4a7d1ae, + limb2: 0x152e737e7253124f, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x55190ca963af51f36ddb02bf, - limb1: 0x44accfe50c46368f0aad6559, - limb2: 0x1909414ed14decd5, + limb0: 0xde653ae463f36f00cdf3925a, + limb1: 0xa5bebb7c44447680e75b98d9, + limb2: 0x258c880e42b183b4, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xab72aae939a6b5d0e05bac2a, - limb1: 0xe675a29b67fb1fad1f6492c8, - limb2: 0x1e7dea010117e8c0, + limb0: 0x7bc7fbe735a3ece4fc329374, + limb1: 0xff64dda0748a413650d80f4e, + limb2: 0x2b4ca7568ff475f6, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x70be80a46d35b6bc1a260ab9, - limb1: 0x673046cd0588a1f02e1820b6, - limb2: 0x2a684d77be139a88, + limb0: 0xc26dac556309a677b720e28e, + limb1: 0xf1b2327046c31d82e6f82945, + limb2: 0x38a7af82ff7ef2d, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xc7a548304a167e01c6bab981, - limb1: 0x76a1f85f16f311409816ef4e, - limb2: 0x26f18a33148f4f37, + limb0: 0x659439dc530a474f7b6ff691, + limb1: 0xd9796ecb5b7f82c90025a04f, + limb2: 0x15cc3838ce111275, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x1fe7a2670cbb51fed29803fb, - limb1: 0x77d5a85273d44953ea89356, - limb2: 0x154c6f6abe1f7a01, + limb0: 0x12053e86c2764f8962699006, + limb1: 0xdbf1e6170bca01a14bee4cb7, + limb2: 0x15fb9c74923ad804, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x2e716115fff32363d5990ffd, - limb1: 0x6d5588a4ab86816b2e04b84, - limb2: 0x5b0fd2a273ad380, + limb0: 0xa90645e19c6240ec1b7660a0, + limb1: 0xc7781d4783263bf72959531f, + limb2: 0x22ad978b40ba6d20, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x8167ed40b0b35059dc00e447, - limb1: 0x2bd7b10c1c1b1ef5c0858978, - limb2: 0x2598e9a50e4f5666, + limb0: 0x2ece12abc6edff17571ac665, + limb1: 0xf64f86aa47f19485c8abaad1, + limb2: 0xdefac5d03be0a81, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xdb1f3525922fbaa75e551868, - limb1: 0x47f695a710e53d6021026c91, - limb2: 0x1239e866d7d2e4c2, + limb0: 0xc843c8e6482345e343d3bf9c, + limb1: 0x9d0159761afd5e1103928366, + limb2: 0x9f2ee1aaddfad23, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x4a717dd1de27f79df8344639, - limb1: 0x711c2afe90fb25feb353e8f4, - limb2: 0x213e6a311d215adb, + limb0: 0x4022ccdd0ddf0496b0a33855, + limb1: 0x39637e058d5deba0ea62bb26, + limb2: 0x41da708d7340bed, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x9174ee42c2be736369a8c014, - limb1: 0x908f00db7f9fcb1fe7b16915, - limb2: 0x28adadb9b8e6ac9, + limb0: 0xacf4689ff8177727c5e16fb0, + limb1: 0x26a019f637658702f575decd, + limb2: 0x5e72d137190182a, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x74006c9f9a83a3b3523a4de4, - limb1: 0x10c1d85ec7abbb633f393052, - limb2: 0x10c823ab845de31a, + limb0: 0x55c13f6eb70df6b94324751f, + limb1: 0x33f93533010ad1c007a0ff81, + limb2: 0xfe3125b3ba92664, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, @@ -7397,41 +7397,41 @@ mod pairing_tests { let pair0: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0xc33ac21c67b06a9994457b4c, - limb1: 0xa9aa5573bf7a92aab85366eb, - limb2: 0x1a407281e1d92e91, + limb0: 0x21975089bb8d6b1195b1d07, + limb1: 0x8195169577a6dd172e958d70, + limb2: 0x8ab31a227f443b0, limb3: 0x0 }, y: u384 { - limb0: 0x5a306649d971b115d71a78b1, - limb1: 0xa70687a9b5132e26b2cfbb37, - limb2: 0x2031920af5d6c9db, + limb0: 0x9dd39b278236fe0355a776c0, + limb1: 0x76be9999b938414c9d4eee59, + limb2: 0xe9743276100a81a, limb3: 0x0 } }, q: G2Point { x0: u384 { - limb0: 0xb9c44d467a381aa098f8a2e2, - limb1: 0x1ba4f48bae5aaaa986771668, - limb2: 0xd48af855263d6d1, + limb0: 0x91abb7b17315f982aef2daa, + limb1: 0x3784f1e1dcc5bd3c6057fc36, + limb2: 0x5e43a9f5ddc4096, limb3: 0x0 }, x1: u384 { - limb0: 0xa8e7c2fe2938ccced2145ba0, - limb1: 0xb6b0c19bb2ae9abf72dac0e6, - limb2: 0x21d24ea797e4ca0d, + limb0: 0xea381fc9ad6a874c4c30e799, + limb1: 0x5400a0322a66b2dba161a3cc, + limb2: 0xf2548816b229a7f, limb3: 0x0 }, y0: u384 { - limb0: 0xc83bafcc4630efe9dd32cea7, - limb1: 0x788f242c4daa3a398fecc14d, - limb2: 0x300267acfecbe587, + limb0: 0x527827cdd48b44df0632114, + limb1: 0xd2762c2df49af28528151765, + limb2: 0x12528096d8083e43, limb3: 0x0 }, y1: u384 { - limb0: 0x9364786f5871b8342a6b4976, - limb1: 0x7288c565779d25ba4374bc7e, - limb2: 0x20ecf55287223b7a, + limb0: 0xb655f3ec24f8a836b50491e6, + limb1: 0xd24af792680a1069cfdbedcc, + limb2: 0x2b3f1dd16fd0cedc, limb3: 0x0 } } @@ -7439,41 +7439,41 @@ mod pairing_tests { let pair1: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0xc33ac21c67b06a9994457b4c, - limb1: 0xa9aa5573bf7a92aab85366eb, - limb2: 0x1a407281e1d92e91, + limb0: 0x21975089bb8d6b1195b1d07, + limb1: 0x8195169577a6dd172e958d70, + limb2: 0x8ab31a227f443b0, limb3: 0x0 }, y: u384 { - limb0: 0x5a306649d971b115d71a78b1, - limb1: 0xa70687a9b5132e26b2cfbb37, - limb2: 0x2031920af5d6c9db, + limb0: 0x9dd39b278236fe0355a776c0, + limb1: 0x76be9999b938414c9d4eee59, + limb2: 0xe9743276100a81a, limb3: 0x0 } }, q: G2Point { x0: u384 { - limb0: 0xb9c44d467a381aa098f8a2e2, - limb1: 0x1ba4f48bae5aaaa986771668, - limb2: 0xd48af855263d6d1, + limb0: 0x91abb7b17315f982aef2daa, + limb1: 0x3784f1e1dcc5bd3c6057fc36, + limb2: 0x5e43a9f5ddc4096, limb3: 0x0 }, x1: u384 { - limb0: 0xa8e7c2fe2938ccced2145ba0, - limb1: 0xb6b0c19bb2ae9abf72dac0e6, - limb2: 0x21d24ea797e4ca0d, + limb0: 0xea381fc9ad6a874c4c30e799, + limb1: 0x5400a0322a66b2dba161a3cc, + limb2: 0xf2548816b229a7f, limb3: 0x0 }, y0: u384 { - limb0: 0xc83bafcc4630efe9dd32cea7, - limb1: 0x788f242c4daa3a398fecc14d, - limb2: 0x300267acfecbe587, + limb0: 0x527827cdd48b44df0632114, + limb1: 0xd2762c2df49af28528151765, + limb2: 0x12528096d8083e43, limb3: 0x0 }, y1: u384 { - limb0: 0x9364786f5871b8342a6b4976, - limb1: 0x7288c565779d25ba4374bc7e, - limb2: 0x20ecf55287223b7a, + limb0: 0xb655f3ec24f8a836b50491e6, + limb1: 0xd24af792680a1069cfdbedcc, + limb2: 0x2b3f1dd16fd0cedc, limb3: 0x0 } } @@ -7481,4693 +7481,4693 @@ mod pairing_tests { let pair2: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0xc33ac21c67b06a9994457b4c, - limb1: 0xa9aa5573bf7a92aab85366eb, - limb2: 0x1a407281e1d92e91, + limb0: 0x21975089bb8d6b1195b1d07, + limb1: 0x8195169577a6dd172e958d70, + limb2: 0x8ab31a227f443b0, limb3: 0x0 }, y: u384 { - limb0: 0x5a306649d971b115d71a78b1, - limb1: 0xa70687a9b5132e26b2cfbb37, - limb2: 0x2031920af5d6c9db, + limb0: 0x9dd39b278236fe0355a776c0, + limb1: 0x76be9999b938414c9d4eee59, + limb2: 0xe9743276100a81a, limb3: 0x0 } }, q: G2Point { x0: u384 { - limb0: 0xb9c44d467a381aa098f8a2e2, - limb1: 0x1ba4f48bae5aaaa986771668, - limb2: 0xd48af855263d6d1, + limb0: 0x91abb7b17315f982aef2daa, + limb1: 0x3784f1e1dcc5bd3c6057fc36, + limb2: 0x5e43a9f5ddc4096, limb3: 0x0 }, x1: u384 { - limb0: 0xa8e7c2fe2938ccced2145ba0, - limb1: 0xb6b0c19bb2ae9abf72dac0e6, - limb2: 0x21d24ea797e4ca0d, + limb0: 0xea381fc9ad6a874c4c30e799, + limb1: 0x5400a0322a66b2dba161a3cc, + limb2: 0xf2548816b229a7f, limb3: 0x0 }, y0: u384 { - limb0: 0xc83bafcc4630efe9dd32cea7, - limb1: 0x788f242c4daa3a398fecc14d, - limb2: 0x300267acfecbe587, + limb0: 0x527827cdd48b44df0632114, + limb1: 0xd2762c2df49af28528151765, + limb2: 0x12528096d8083e43, limb3: 0x0 }, y1: u384 { - limb0: 0x9364786f5871b8342a6b4976, - limb1: 0x7288c565779d25ba4374bc7e, - limb2: 0x20ecf55287223b7a, + limb0: 0xb655f3ec24f8a836b50491e6, + limb1: 0xd24af792680a1069cfdbedcc, + limb2: 0x2b3f1dd16fd0cedc, limb3: 0x0 } } }; let precomputed_miller_loop_result = E12D { w0: u384 { - limb0: 0xb7c1ca5605d12d76a7d0fb25, - limb1: 0x329bcda50dab5ddeda80d5f8, - limb2: 0x28fb4cd3309e09b5, + limb0: 0xccb1210c14423f5680404618, + limb1: 0xbe09a8f0562ef8729791b9ff, + limb2: 0x1bca553db6054111, limb3: 0x0 }, w1: u384 { - limb0: 0x140457cbc4430e49b2c7468a, - limb1: 0xd0681abef2d9f074ec6e52f1, - limb2: 0x15ae6ac84e2a8d5e, + limb0: 0x17585f0555745aff09e41c24, + limb1: 0x7bc2493fc670888817e828f3, + limb2: 0x30436b5fddba7e0d, limb3: 0x0 }, w2: u384 { - limb0: 0xbc3ca248c380c445d76ca91f, - limb1: 0x3109462859d98a46ecfc67de, - limb2: 0xb7b7327645494f1, + limb0: 0x8e928efb26315a38c145e152, + limb1: 0x9dbea8f77c6662e25b6c9d0c, + limb2: 0x241829b1a830f414, limb3: 0x0 }, w3: u384 { - limb0: 0x3d4bb833c65f00830287264a, - limb1: 0xff803828dc58428bb4333407, - limb2: 0x2f48c7fb34d03213, + limb0: 0xf4bc1919f5c40316424470bc, + limb1: 0x65afe7b61b8c5509f43a1ce, + limb2: 0x216bcd5c53b38a6f, limb3: 0x0 }, w4: u384 { - limb0: 0x8733c67beaa03eeafe9077cc, - limb1: 0xd40c5ce533666834ca6ba5a, - limb2: 0x213638fa791e1c2a, + limb0: 0xa0769e9becb39f8a3280c8e, + limb1: 0x7a8896fd659c24eeee92a3f1, + limb2: 0x130ee044fc1b1941, limb3: 0x0 }, w5: u384 { - limb0: 0xcdd8ef899aca6d8b61c83682, - limb1: 0x27af5783da566881876b9bd9, - limb2: 0x85e7b30bff76346, + limb0: 0xe3d1d25e4e54f9251e335020, + limb1: 0x924e19e19d43380bd0b961dc, + limb2: 0x45e18d30b301459, limb3: 0x0 }, w6: u384 { - limb0: 0x2388aac330e4ac7d3acd55ce, - limb1: 0x50a103a67aa1a358e59d5b89, - limb2: 0x781516f73f5c1b7, + limb0: 0xf7c21590c1af499b02da8f1a, + limb1: 0x8ca22004c9f2c80d672716e, + limb2: 0x185dfb4c3b44cb20, limb3: 0x0 }, w7: u384 { - limb0: 0x4dea93c2499d4e88ea32bfa0, - limb1: 0x9371330ae9526351952c21a1, - limb2: 0x132e7d7af7188171, + limb0: 0x3601957dd8fbebb91ec4c70e, + limb1: 0xd5daf54757faee91ed204fd0, + limb2: 0x103860bf8a1908c2, limb3: 0x0 }, w8: u384 { - limb0: 0x3216570e1aa9150d4b6fe21a, - limb1: 0x1d59b47cc31067f5dcaf4e0, - limb2: 0x23b13077be8b9ac4, + limb0: 0x6bf2e7857721087f23cfac0c, + limb1: 0x723f2d41a64af93ed3fe1441, + limb2: 0x11b5f8380292d767, limb3: 0x0 }, w9: u384 { - limb0: 0x9799d65d80815bbf3c417c41, - limb1: 0x60297edec1cea7ac0ac48126, - limb2: 0x1629867def2f08b, + limb0: 0x41e4ab7e2927a9aded6ba1b1, + limb1: 0x9891ee106d634e1f186f17c5, + limb2: 0x9e59abb737e46d9, limb3: 0x0 }, w10: u384 { - limb0: 0x66c4f8bc1c2891f189f24395, - limb1: 0x248e1ff9ce36c40a70948e9c, - limb2: 0x2e4bfceb7e575c1c, + limb0: 0xdb9c3106151d57721fa7a4bf, + limb1: 0xc99a44bf0c33e6f27c8ed792, + limb2: 0xedb636bf6fda1b2, limb3: 0x0 }, w11: u384 { - limb0: 0x695f22d7cd6c1da093befe39, - limb1: 0x1072945088da9a584e65a83f, - limb2: 0x19737175ad997e15, + limb0: 0xbff1434362971f9ea4b906ca, + limb1: 0x2ee51bde6d1710876845fd79, + limb2: 0x2e96707022e7e1a0, limb3: 0x0 } }; let lines = array![ G2Line { r0a0: u384 { - limb0: 0xabbf1a44bbeab7f21f56fd44, - limb1: 0x9586a23dd95fe0f01442cb74, - limb2: 0x12efe47f922901bf, + limb0: 0x4aeda325bf828fda830b09d9, + limb1: 0x56cff0ce5a2978e7ec1d81ab, + limb2: 0x1047f1538a00caff, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1f3cb6438b1e2ba5f7f5e08, - limb1: 0xb4fbc705862ea57d803f20fe, - limb2: 0x1be59f03fa8d0f03, + limb0: 0xbe8e5b97224b98e7f1fcc51e, + limb1: 0x8ae08542ce6a92510c8a6a3, + limb2: 0x28b8d7677f535357, limb3: 0x0 }, r1a0: u384 { - limb0: 0xfc85c4cd2f8a11dea99fc10a, - limb1: 0xefa7879f1ef04d4d70f7f3ba, - limb2: 0x22265c7cbd6a6ee4, + limb0: 0x7027f59ea974bef84d0f09d6, + limb1: 0xcd0a377cf86396157c355d47, + limb2: 0x22a587c2f24fb5f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x55775dbd35e3885275d179d9, - limb1: 0xae9e8aa293552d21fc0b0617, - limb2: 0x2282fd9e7219ae8b, + limb0: 0x9e9c3f24e4752774b607075a, + limb1: 0xd8fcf12e4afb21341032a669, + limb2: 0x1291d7ca78a6131f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xabbf1a44bbeab7f21f56fd44, - limb1: 0x9586a23dd95fe0f01442cb74, - limb2: 0x12efe47f922901bf, + limb0: 0x4aeda325bf828fda830b09d9, + limb1: 0x56cff0ce5a2978e7ec1d81ab, + limb2: 0x1047f1538a00caff, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1f3cb6438b1e2ba5f7f5e08, - limb1: 0xb4fbc705862ea57d803f20fe, - limb2: 0x1be59f03fa8d0f03, + limb0: 0xbe8e5b97224b98e7f1fcc51e, + limb1: 0x8ae08542ce6a92510c8a6a3, + limb2: 0x28b8d7677f535357, limb3: 0x0 }, r1a0: u384 { - limb0: 0xfc85c4cd2f8a11dea99fc10a, - limb1: 0xefa7879f1ef04d4d70f7f3ba, - limb2: 0x22265c7cbd6a6ee4, + limb0: 0x7027f59ea974bef84d0f09d6, + limb1: 0xcd0a377cf86396157c355d47, + limb2: 0x22a587c2f24fb5f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x55775dbd35e3885275d179d9, - limb1: 0xae9e8aa293552d21fc0b0617, - limb2: 0x2282fd9e7219ae8b, + limb0: 0x9e9c3f24e4752774b607075a, + limb1: 0xd8fcf12e4afb21341032a669, + limb2: 0x1291d7ca78a6131f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbcb2b0488035d424b9260003, - limb1: 0x22c9a378a821776d833e9f1c, - limb2: 0x1d7469f34f089e6a, + limb0: 0x1d8427677c9dfc3c5571f36e, + limb1: 0x618054e82757df75ab63e8e6, + limb2: 0x201c5d1f5730d52a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x667dff29036ea95c78fd9f3f, - limb1: 0x3547eb0fb52b2e017424993, - limb2: 0x147eaf6ee6a49126, + limb0: 0xa9e36ef619d4f32ee6803829, + limb1: 0xafa23d62549aaf3886b8c3ed, + limb2: 0x7ab770b61de4cd2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6bec05c00c967a382edd3c3d, - limb1: 0xc8a8be1762910b10268976d6, - limb2: 0xe3df1f623c73144, + limb0: 0xf849d4ee92abcd1e8b6df371, + limb1: 0xeb460e39891dc2481b4c0d49, + limb2: 0xdbec6afeee1ea34, limb3: 0x0 }, r1a1: u384 { - limb0: 0x12fa6cd0063d03c462ab836e, - limb1: 0x9b1bb13ee2c2b3b9b76647a, - limb2: 0xde150d46f17f19e, + limb0: 0xc9d58b6857ab64a22275f5ed, + limb1: 0xdf53548836863729874ec427, + limb2: 0x1dd276a8688b8d09, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb6e82ac9892d99b3e72ed993, - limb1: 0x4667da0f291145f4e7115b63, - limb2: 0x2c5f1faa4376c51b, + limb0: 0x11cc19860555476ad181047b, + limb1: 0x64b7aba8ce6253fbe8caaca, + limb2: 0x1f50c2608347a286, limb3: 0x0 }, r0a1: u384 { - limb0: 0x897e2f7d45c9e26ec312fcf0, - limb1: 0x4e4767f5885355e204b9b150, - limb2: 0x304622da14359b03, + limb0: 0x4a130505f632767340d19fda, + limb1: 0xca34c0e4780cfbe3709044ad, + limb2: 0x152a7d4ddccc54d6, limb3: 0x0 }, r1a0: u384 { - limb0: 0x171ea81a947eca47152db4a2, - limb1: 0x502dda6dc41c9e6b316991dc, - limb2: 0x29f67bbfae9d7a6a, + limb0: 0xf04c85511391fee40bded4a5, + limb1: 0x859ca1d257ec71cad24b9c70, + limb2: 0x22d3447c81e8ed91, limb3: 0x0 }, r1a1: u384 { - limb0: 0x75c1b2a0d4dbffd5ddb3022d, - limb1: 0xf6225efe9ab3dfb629fcd65f, - limb2: 0x286fadac85650cc2, + limb0: 0xdaa6f026366910af07496662, + limb1: 0xf3efd28d20364e2671ddd3c3, + limb2: 0x13a06ef003ec6d74, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbcb2b0488035d424b9260003, - limb1: 0x22c9a378a821776d833e9f1c, - limb2: 0x1d7469f34f089e6a, + limb0: 0x1d8427677c9dfc3c5571f36e, + limb1: 0x618054e82757df75ab63e8e6, + limb2: 0x201c5d1f5730d52a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x667dff29036ea95c78fd9f3f, - limb1: 0x3547eb0fb52b2e017424993, - limb2: 0x147eaf6ee6a49126, + limb0: 0xa9e36ef619d4f32ee6803829, + limb1: 0xafa23d62549aaf3886b8c3ed, + limb2: 0x7ab770b61de4cd2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6bec05c00c967a382edd3c3d, - limb1: 0xc8a8be1762910b10268976d6, - limb2: 0xe3df1f623c73144, + limb0: 0xf849d4ee92abcd1e8b6df371, + limb1: 0xeb460e39891dc2481b4c0d49, + limb2: 0xdbec6afeee1ea34, limb3: 0x0 }, r1a1: u384 { - limb0: 0x12fa6cd0063d03c462ab836e, - limb1: 0x9b1bb13ee2c2b3b9b76647a, - limb2: 0xde150d46f17f19e, + limb0: 0xc9d58b6857ab64a22275f5ed, + limb1: 0xdf53548836863729874ec427, + limb2: 0x1dd276a8688b8d09, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb6e82ac9892d99b3e72ed993, - limb1: 0x4667da0f291145f4e7115b63, - limb2: 0x2c5f1faa4376c51b, + limb0: 0x11cc19860555476ad181047b, + limb1: 0x64b7aba8ce6253fbe8caaca, + limb2: 0x1f50c2608347a286, limb3: 0x0 }, r0a1: u384 { - limb0: 0x897e2f7d45c9e26ec312fcf0, - limb1: 0x4e4767f5885355e204b9b150, - limb2: 0x304622da14359b03, + limb0: 0x4a130505f632767340d19fda, + limb1: 0xca34c0e4780cfbe3709044ad, + limb2: 0x152a7d4ddccc54d6, limb3: 0x0 }, r1a0: u384 { - limb0: 0x171ea81a947eca47152db4a2, - limb1: 0x502dda6dc41c9e6b316991dc, - limb2: 0x29f67bbfae9d7a6a, + limb0: 0xf04c85511391fee40bded4a5, + limb1: 0x859ca1d257ec71cad24b9c70, + limb2: 0x22d3447c81e8ed91, limb3: 0x0 }, r1a1: u384 { - limb0: 0x75c1b2a0d4dbffd5ddb3022d, - limb1: 0xf6225efe9ab3dfb629fcd65f, - limb2: 0x286fadac85650cc2, + limb0: 0xdaa6f026366910af07496662, + limb1: 0xf3efd28d20364e2671ddd3c3, + limb2: 0x13a06ef003ec6d74, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2791b3d456ea28fa13c676ba, - limb1: 0x28384e9cca2411e94d8e1efa, - limb2: 0x1b4254315e1a88fc, + limb0: 0xb01a2a53f64ef3e9436c58c9, + limb1: 0xbc19e0d16961b49199dd0a24, + limb2: 0x1d7c10c14cab781b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5eae8796d42745446c153199, - limb1: 0x908178887a7abdc797b73f79, - limb2: 0x240109913fe3c03a, + limb0: 0x40b9031a11267d78e2e7e274, + limb1: 0x58308d9366af46e73594feba, + limb2: 0x29461a032a504c79, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d1883b3f2d845503bcd8d27, - limb1: 0xe6ff5b0af02f0c1adcc7577, - limb2: 0xc2e8fca571888f5, + limb0: 0xeb0a8ab89ca2d263d967c1a9, + limb1: 0xac5f137ad95222c8a2b26167, + limb2: 0x1023f8a52d35e741, limb3: 0x0 }, r1a1: u384 { - limb0: 0x66e55fdd22e0606aea31610e, - limb1: 0x167bae6367d298baa42b1cb2, - limb2: 0x1af831d3d8d4b063, + limb0: 0x974cb7a7de7fd9e1ad12424, + limb1: 0x8a8fc445381c8181cad234b8, + limb2: 0x62432d6bb17a78e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2791b3d456ea28fa13c676ba, - limb1: 0x28384e9cca2411e94d8e1efa, - limb2: 0x1b4254315e1a88fc, + limb0: 0xb01a2a53f64ef3e9436c58c9, + limb1: 0xbc19e0d16961b49199dd0a24, + limb2: 0x1d7c10c14cab781b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5eae8796d42745446c153199, - limb1: 0x908178887a7abdc797b73f79, - limb2: 0x240109913fe3c03a, + limb0: 0x40b9031a11267d78e2e7e274, + limb1: 0x58308d9366af46e73594feba, + limb2: 0x29461a032a504c79, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d1883b3f2d845503bcd8d27, - limb1: 0xe6ff5b0af02f0c1adcc7577, - limb2: 0xc2e8fca571888f5, + limb0: 0xeb0a8ab89ca2d263d967c1a9, + limb1: 0xac5f137ad95222c8a2b26167, + limb2: 0x1023f8a52d35e741, limb3: 0x0 }, r1a1: u384 { - limb0: 0x66e55fdd22e0606aea31610e, - limb1: 0x167bae6367d298baa42b1cb2, - limb2: 0x1af831d3d8d4b063, + limb0: 0x974cb7a7de7fd9e1ad12424, + limb1: 0x8a8fc445381c8181cad234b8, + limb2: 0x62432d6bb17a78e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xfcbdf1648fa03ac0a196ba9f, - limb1: 0xa082018da28c99f31d036fee, - limb2: 0x1a782e5f2efee9ef, + limb0: 0x50d09b248f2d4da08d073c2a, + limb1: 0x434fdd82f7353d33a22424d9, + limb2: 0x9bd63833bf79d9, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa8509b5b47586acb9b43e1b2, - limb1: 0xbd0f22f9dd9fd3f69b8604c3, - limb2: 0x7bc0b636684fef3, + limb0: 0x6541a267a2628b3e40f2507, + limb1: 0x7c287dc885ed26eb27d811f8, + limb2: 0x25bdc78993309a2c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xabeed298c81973f8f1c6478c, - limb1: 0x8df9658adf1e1aa9c26613a7, - limb2: 0x27a95cb59c09e28, + limb0: 0x89bf6e8a82a0a2ec2930a33a, + limb1: 0x54aa6390dc622add1ac46785, + limb2: 0x305234d8296d0cc8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x618aaad070625db30ff67d03, - limb1: 0xe3b299928d851e41b54c4482, - limb2: 0x223085b966a72c4c, + limb0: 0x4cd4af85a2735ffa30ef7f0c, + limb1: 0x83181236a975597a14bdd4fa, + limb2: 0x1f58be32dae49f67, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4b0ef7d810a414e42d417454, - limb1: 0xa175f0d3e53bb87d6baac6f3, - limb2: 0x2815b2d0ecf3b7d5, + limb0: 0x32c6ae6152ff5edce98ba66e, + limb1: 0x2d89300261f605d131558770, + limb2: 0x2c9050781ec7607, limb3: 0x0 }, r0a1: u384 { - limb0: 0xffe2426bcf8a7576644f569e, - limb1: 0x5ae6c9398498db35ec0bc60d, - limb2: 0x1cc80acfefce4efd, + limb0: 0x9a0002c354b3c199e1a86169, + limb1: 0x22a2e9e4017311d59505697c, + limb2: 0x1305350285a35c0b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc7868afbcd6ce5698e36cf1f, - limb1: 0xaae92090e6fc09d968d376c, - limb2: 0x2296ddf1f720a5d1, + limb0: 0x9d868b9a64cd681fdee8d88d, + limb1: 0x4b23522a1965d95ff4c7ad6c, + limb2: 0x192cef14cb74ed9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5f4a6c242a521be55e75ed58, - limb1: 0xc6e339e636b598a522c415bf, - limb2: 0x99d54584601e672, + limb0: 0x7182b86cbbaecdd7ed6a564c, + limb1: 0x4d61062172510705650eb140, + limb2: 0x141e46297dc0dca8, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xfcbdf1648fa03ac0a196ba9f, - limb1: 0xa082018da28c99f31d036fee, - limb2: 0x1a782e5f2efee9ef, + limb0: 0x50d09b248f2d4da08d073c2a, + limb1: 0x434fdd82f7353d33a22424d9, + limb2: 0x9bd63833bf79d9, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa8509b5b47586acb9b43e1b2, - limb1: 0xbd0f22f9dd9fd3f69b8604c3, - limb2: 0x7bc0b636684fef3, + limb0: 0x6541a267a2628b3e40f2507, + limb1: 0x7c287dc885ed26eb27d811f8, + limb2: 0x25bdc78993309a2c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xabeed298c81973f8f1c6478c, - limb1: 0x8df9658adf1e1aa9c26613a7, - limb2: 0x27a95cb59c09e28, + limb0: 0x89bf6e8a82a0a2ec2930a33a, + limb1: 0x54aa6390dc622add1ac46785, + limb2: 0x305234d8296d0cc8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x618aaad070625db30ff67d03, - limb1: 0xe3b299928d851e41b54c4482, - limb2: 0x223085b966a72c4c, + limb0: 0x4cd4af85a2735ffa30ef7f0c, + limb1: 0x83181236a975597a14bdd4fa, + limb2: 0x1f58be32dae49f67, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4b0ef7d810a414e42d417454, - limb1: 0xa175f0d3e53bb87d6baac6f3, - limb2: 0x2815b2d0ecf3b7d5, + limb0: 0x32c6ae6152ff5edce98ba66e, + limb1: 0x2d89300261f605d131558770, + limb2: 0x2c9050781ec7607, limb3: 0x0 }, r0a1: u384 { - limb0: 0xffe2426bcf8a7576644f569e, - limb1: 0x5ae6c9398498db35ec0bc60d, - limb2: 0x1cc80acfefce4efd, + limb0: 0x9a0002c354b3c199e1a86169, + limb1: 0x22a2e9e4017311d59505697c, + limb2: 0x1305350285a35c0b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc7868afbcd6ce5698e36cf1f, - limb1: 0xaae92090e6fc09d968d376c, - limb2: 0x2296ddf1f720a5d1, + limb0: 0x9d868b9a64cd681fdee8d88d, + limb1: 0x4b23522a1965d95ff4c7ad6c, + limb2: 0x192cef14cb74ed9d, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5f4a6c242a521be55e75ed58, - limb1: 0xc6e339e636b598a522c415bf, - limb2: 0x99d54584601e672, + limb0: 0x7182b86cbbaecdd7ed6a564c, + limb1: 0x4d61062172510705650eb140, + limb2: 0x141e46297dc0dca8, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc8221ad43a1bfc649301993d, - limb1: 0x6d2f53a9647b85a4c0bdf523, - limb2: 0x9679074b0e5ee48, + limb0: 0x83173e9fc564f57217e7e10, + limb1: 0xae8e786534dc4097d40a6e36, + limb2: 0x23639c47656fc836, limb3: 0x0 }, r0a1: u384 { - limb0: 0x397edf61a1ed1b4f461a6793, - limb1: 0x8d9f06bc28d3ad91014076b2, - limb2: 0x22e2de08ac823e7b, + limb0: 0xcca0a878909d6c946766541e, + limb1: 0x2f27216863ac4a89e15f4c65, + limb2: 0x13813f125a599c4f, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb26451f75b970a8cb00041e1, - limb1: 0xd6e96670d9457f5c0f90bdea, - limb2: 0x1d9149bf6b3a1ce4, + limb0: 0x6c3788f9177c70fdb34506f5, + limb1: 0x8c5c9aa7395859b251025f92, + limb2: 0x8bcdf1c5f2df1c1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3bb286e854e7fd465e434f81, - limb1: 0x54821172280cf803a08fae9c, - limb2: 0x1cbc9882268fe437, + limb0: 0xd03d800ad7199145899fa736, + limb1: 0x86a4d6d64fc15055b1c5de2f, + limb2: 0x11c5b88941107a29, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc8221ad43a1bfc649301993d, - limb1: 0x6d2f53a9647b85a4c0bdf523, - limb2: 0x9679074b0e5ee48, + limb0: 0x83173e9fc564f57217e7e10, + limb1: 0xae8e786534dc4097d40a6e36, + limb2: 0x23639c47656fc836, limb3: 0x0 }, r0a1: u384 { - limb0: 0x397edf61a1ed1b4f461a6793, - limb1: 0x8d9f06bc28d3ad91014076b2, - limb2: 0x22e2de08ac823e7b, + limb0: 0xcca0a878909d6c946766541e, + limb1: 0x2f27216863ac4a89e15f4c65, + limb2: 0x13813f125a599c4f, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb26451f75b970a8cb00041e1, - limb1: 0xd6e96670d9457f5c0f90bdea, - limb2: 0x1d9149bf6b3a1ce4, + limb0: 0x6c3788f9177c70fdb34506f5, + limb1: 0x8c5c9aa7395859b251025f92, + limb2: 0x8bcdf1c5f2df1c1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x3bb286e854e7fd465e434f81, - limb1: 0x54821172280cf803a08fae9c, - limb2: 0x1cbc9882268fe437, + limb0: 0xd03d800ad7199145899fa736, + limb1: 0x86a4d6d64fc15055b1c5de2f, + limb2: 0x11c5b88941107a29, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7af7572b9c11869d59d6f3f6, - limb1: 0x22dd6ad73bae4d6973b20787, - limb2: 0x26510eb60fe68f53, + limb0: 0x86736dd62af048737f84cb22, + limb1: 0x667da23b9542ce483543b247, + limb2: 0x7b7c1254e706a55, limb3: 0x0 }, r0a1: u384 { - limb0: 0x99b1f36f7095a0314d5d06d5, - limb1: 0xbd5dd77082d8b841ecb3611d, - limb2: 0x15ce7819788759a, + limb0: 0x4fc121cb82a29868df438ac2, + limb1: 0xc33253988f53ead1841e59de, + limb2: 0x1530890426f60b0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcce727d833214c1c769b2343, - limb1: 0x78531c7296b5dae3398c4fbf, - limb2: 0x276c7e8c39f8073b, + limb0: 0x732272d47423d09a8de631bc, + limb1: 0xe777956d515e42bd25ea620a, + limb2: 0xa90e231dad0ff45, limb3: 0x0 }, r1a1: u384 { - limb0: 0x50fcdc47d6638d436842140a, - limb1: 0x76fe0df376803e10d4fc2d0c, - limb2: 0x19b9e4ac51ab1d61, + limb0: 0xc1a1cca4243e008e07846c2f, + limb1: 0xf9baa07879ab17ee0cec72b8, + limb2: 0x2d45bc01b6674ed1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7af7572b9c11869d59d6f3f6, - limb1: 0x22dd6ad73bae4d6973b20787, - limb2: 0x26510eb60fe68f53, + limb0: 0x86736dd62af048737f84cb22, + limb1: 0x667da23b9542ce483543b247, + limb2: 0x7b7c1254e706a55, limb3: 0x0 }, r0a1: u384 { - limb0: 0x99b1f36f7095a0314d5d06d5, - limb1: 0xbd5dd77082d8b841ecb3611d, - limb2: 0x15ce7819788759a, + limb0: 0x4fc121cb82a29868df438ac2, + limb1: 0xc33253988f53ead1841e59de, + limb2: 0x1530890426f60b0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcce727d833214c1c769b2343, - limb1: 0x78531c7296b5dae3398c4fbf, - limb2: 0x276c7e8c39f8073b, + limb0: 0x732272d47423d09a8de631bc, + limb1: 0xe777956d515e42bd25ea620a, + limb2: 0xa90e231dad0ff45, limb3: 0x0 }, r1a1: u384 { - limb0: 0x50fcdc47d6638d436842140a, - limb1: 0x76fe0df376803e10d4fc2d0c, - limb2: 0x19b9e4ac51ab1d61, + limb0: 0xc1a1cca4243e008e07846c2f, + limb1: 0xf9baa07879ab17ee0cec72b8, + limb2: 0x2d45bc01b6674ed1, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd9476fd02835959d4f624309, - limb1: 0xa45d1f8cb5b9ff78d528700, - limb2: 0x15f70f20582f0b17, + limb0: 0xd842323afdcb7149d8ffe91e, + limb1: 0xfe0b26b7dd3fe7c4696442d1, + limb2: 0x12e1d2156472ae4b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xaef01a3d19d12398e3a4ce56, - limb1: 0x2f8372c31971d161cc67f22a, - limb2: 0x1370c0a873d3591a, + limb0: 0xcf66f73b8c4b2a1837b951e6, + limb1: 0x795ce814f943e7e0dcfc8a9f, + limb2: 0x1991f6b0881c457b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x847d3658e078b1776d460332, - limb1: 0x309a84c87bc1c00aedbc7b97, - limb2: 0x18d281c140737ba0, + limb0: 0x58d3c283282db621af15efd, + limb1: 0xd17151df7a6ea214f4ff86fb, + limb2: 0x2315879c4afb015c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4ae1cb9226e021a005db1fe9, - limb1: 0x520b43597d38c85e88bd53e6, - limb2: 0x105d74e3292110e7, + limb0: 0x789184e1fd95196e47d76735, + limb1: 0x82c4d943a48d1599de53cec1, + limb2: 0x4c78fcc7767bad5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd9476fd02835959d4f624309, - limb1: 0xa45d1f8cb5b9ff78d528700, - limb2: 0x15f70f20582f0b17, + limb0: 0xd842323afdcb7149d8ffe91e, + limb1: 0xfe0b26b7dd3fe7c4696442d1, + limb2: 0x12e1d2156472ae4b, limb3: 0x0 }, r0a1: u384 { - limb0: 0xaef01a3d19d12398e3a4ce56, - limb1: 0x2f8372c31971d161cc67f22a, - limb2: 0x1370c0a873d3591a, + limb0: 0xcf66f73b8c4b2a1837b951e6, + limb1: 0x795ce814f943e7e0dcfc8a9f, + limb2: 0x1991f6b0881c457b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x847d3658e078b1776d460332, - limb1: 0x309a84c87bc1c00aedbc7b97, - limb2: 0x18d281c140737ba0, + limb0: 0x58d3c283282db621af15efd, + limb1: 0xd17151df7a6ea214f4ff86fb, + limb2: 0x2315879c4afb015c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4ae1cb9226e021a005db1fe9, - limb1: 0x520b43597d38c85e88bd53e6, - limb2: 0x105d74e3292110e7, + limb0: 0x789184e1fd95196e47d76735, + limb1: 0x82c4d943a48d1599de53cec1, + limb2: 0x4c78fcc7767bad5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9b4ae024556057642277afda, - limb1: 0x44f991af0348e456522cc3de, - limb2: 0xdaba76d3c1cd848, + limb0: 0xb09ede0d346a1b6ec085ce70, + limb1: 0x75f12e436ad19c4f51562ca, + limb2: 0x12a8e069e5450542, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe58ae2793b80582a3ad50967, - limb1: 0x4935649511f945146b0c9193, - limb2: 0x286895afed059113, + limb0: 0x4089c8be0d33f73952f5a9e5, + limb1: 0x306e20a796fe3aae21754993, + limb2: 0x1ae85506936a66b4, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd040ec9eef17018a4bf9fb18, - limb1: 0xe8b20361be4bc5df91f8f244, - limb2: 0x1af5d78478064d69, + limb0: 0xeb87c2f483eb413609c79693, + limb1: 0xfca2338816ba0057962fa8af, + limb2: 0x221d57ed5b6ea802, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa901d98f6431c9aed0879593, - limb1: 0x781ac47291cab490f8fc3ab3, - limb2: 0xc466bb2be8c0aff, + limb0: 0x30af7dd4f28d3007771fad43, + limb1: 0xb2bac5301b8eac6a03028e9f, + limb2: 0x243a21143229cae6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x15f77f2c9da5bc25bac1dd50, - limb1: 0xac106ad0f0663d2316de49d9, - limb2: 0x322f1c0d3d09449, + limb0: 0x8e721d84d142ac8bb15d6d20, + limb1: 0xfdbe9b34b44d9c8fbbb44d27, + limb2: 0x2bbcfb6009f9d9fd, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2f5463543fe03d0a9734276b, - limb1: 0x6911334b67f701c0508c1845, - limb2: 0x14e2658f0fddda96, + limb0: 0x1a6f84bb7affd645523aba19, + limb1: 0x2c1d3de186d4a9e25165a045, + limb2: 0x227a6d4da28dd29d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5a8517346469908f2835e167, - limb1: 0x29fcde788c1b34868e0f40a6, - limb2: 0x2aaab4a37148db11, + limb0: 0x169a3cf0d9bb5d726d68a118, + limb1: 0x7af89d17c5e440ea4a8d5f85, + limb2: 0x29cfbf2b76f278a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe0342ccf2b460b89ec74e1da, - limb1: 0xc1b25a1edd73073872c0c8d9, - limb2: 0x48a8b41b66e54ac, + limb0: 0xeaa61c7cb6c5403c1554c0c5, + limb1: 0xadee94e017cbf5b2924f3ab1, + limb2: 0x6f005e8f32e87e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9b4ae024556057642277afda, - limb1: 0x44f991af0348e456522cc3de, - limb2: 0xdaba76d3c1cd848, + limb0: 0xb09ede0d346a1b6ec085ce70, + limb1: 0x75f12e436ad19c4f51562ca, + limb2: 0x12a8e069e5450542, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe58ae2793b80582a3ad50967, - limb1: 0x4935649511f945146b0c9193, - limb2: 0x286895afed059113, + limb0: 0x4089c8be0d33f73952f5a9e5, + limb1: 0x306e20a796fe3aae21754993, + limb2: 0x1ae85506936a66b4, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd040ec9eef17018a4bf9fb18, - limb1: 0xe8b20361be4bc5df91f8f244, - limb2: 0x1af5d78478064d69, + limb0: 0xeb87c2f483eb413609c79693, + limb1: 0xfca2338816ba0057962fa8af, + limb2: 0x221d57ed5b6ea802, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa901d98f6431c9aed0879593, - limb1: 0x781ac47291cab490f8fc3ab3, - limb2: 0xc466bb2be8c0aff, + limb0: 0x30af7dd4f28d3007771fad43, + limb1: 0xb2bac5301b8eac6a03028e9f, + limb2: 0x243a21143229cae6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x15f77f2c9da5bc25bac1dd50, - limb1: 0xac106ad0f0663d2316de49d9, - limb2: 0x322f1c0d3d09449, + limb0: 0x8e721d84d142ac8bb15d6d20, + limb1: 0xfdbe9b34b44d9c8fbbb44d27, + limb2: 0x2bbcfb6009f9d9fd, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2f5463543fe03d0a9734276b, - limb1: 0x6911334b67f701c0508c1845, - limb2: 0x14e2658f0fddda96, + limb0: 0x1a6f84bb7affd645523aba19, + limb1: 0x2c1d3de186d4a9e25165a045, + limb2: 0x227a6d4da28dd29d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5a8517346469908f2835e167, - limb1: 0x29fcde788c1b34868e0f40a6, - limb2: 0x2aaab4a37148db11, + limb0: 0x169a3cf0d9bb5d726d68a118, + limb1: 0x7af89d17c5e440ea4a8d5f85, + limb2: 0x29cfbf2b76f278a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe0342ccf2b460b89ec74e1da, - limb1: 0xc1b25a1edd73073872c0c8d9, - limb2: 0x48a8b41b66e54ac, + limb0: 0xeaa61c7cb6c5403c1554c0c5, + limb1: 0xadee94e017cbf5b2924f3ab1, + limb2: 0x6f005e8f32e87e5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x781de255f0031ccdec2a1862, - limb1: 0xd3c6f2b9270e4eb4ed66b83, - limb2: 0x2de7026b321b9e17, + limb0: 0xf719b63641c3aaa6606d8efa, + limb1: 0xf42199916053745d085345ae, + limb2: 0x23ed8081d2abacad, limb3: 0x0 }, r0a1: u384 { - limb0: 0x68ce16bd126f94d54e43c6a0, - limb1: 0xa5bb277139316cf996eca16a, - limb2: 0x1634fb7cc27d94f3, + limb0: 0xbb1d89280222919b5482b64e, + limb1: 0xad89538078a7e66390888932, + limb2: 0xaaa5e47eb46d170, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d671aaf5a4a6d6d473a1c43, - limb1: 0x1521dfca1fd6cfb0d257b5f1, - limb2: 0x4095a086471fe7b, + limb0: 0x1380fb6779221089cb10958a, + limb1: 0x931568ddfc4bec09e1bf17d5, + limb2: 0x185f166c24c11813, limb3: 0x0 }, r1a1: u384 { - limb0: 0x222437fac89f1f93b852562b, - limb1: 0xf53d412dc73b9da30842d3e2, - limb2: 0xa00adffd862c3b7, + limb0: 0x8e7af376343f702b59b20086, + limb1: 0x2e77f4bd9bfc2f2c9361ced, + limb2: 0x9f8fe6c0b98ab93, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x781de255f0031ccdec2a1862, - limb1: 0xd3c6f2b9270e4eb4ed66b83, - limb2: 0x2de7026b321b9e17, + limb0: 0xf719b63641c3aaa6606d8efa, + limb1: 0xf42199916053745d085345ae, + limb2: 0x23ed8081d2abacad, limb3: 0x0 }, r0a1: u384 { - limb0: 0x68ce16bd126f94d54e43c6a0, - limb1: 0xa5bb277139316cf996eca16a, - limb2: 0x1634fb7cc27d94f3, + limb0: 0xbb1d89280222919b5482b64e, + limb1: 0xad89538078a7e66390888932, + limb2: 0xaaa5e47eb46d170, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4d671aaf5a4a6d6d473a1c43, - limb1: 0x1521dfca1fd6cfb0d257b5f1, - limb2: 0x4095a086471fe7b, + limb0: 0x1380fb6779221089cb10958a, + limb1: 0x931568ddfc4bec09e1bf17d5, + limb2: 0x185f166c24c11813, limb3: 0x0 }, r1a1: u384 { - limb0: 0x222437fac89f1f93b852562b, - limb1: 0xf53d412dc73b9da30842d3e2, - limb2: 0xa00adffd862c3b7, + limb0: 0x8e7af376343f702b59b20086, + limb1: 0x2e77f4bd9bfc2f2c9361ced, + limb2: 0x9f8fe6c0b98ab93, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3aa55c2f1d0314bbf3213a26, - limb1: 0xa87568f10d36cd33b68d5a44, - limb2: 0x7dbb358a3eef02a, + limb0: 0x6558a5e904f9e132283961a2, + limb1: 0xad623596624aacc1796aeb37, + limb2: 0x23ae2906c0b5c026, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2802d181a55de572e9c07024, - limb1: 0xdb8c457686a8c4f14a351b1d, - limb2: 0x292d92c8926c5c4d, + limb0: 0xfe9a5f50beff57f1dd5cfdb7, + limb1: 0xee6088dc170ec1967933cfdf, + limb2: 0x2f202c71bbed953d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x99e08c45ca56e3ec46990f4c, - limb1: 0x472bf7df47bff2948cf76a6b, - limb2: 0x1a94ff286de6dee0, + limb0: 0x1132e106e3e9e432d8e6a462, + limb1: 0x7e91e2dc375c1016119a836, + limb2: 0x1021db656cba7bea, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcac1986436917a2cd2c8f8c7, - limb1: 0xe3c21bd5e1781d2754e3293c, - limb2: 0xdbaa935f8a8cc40, + limb0: 0x94440b93c995c8720560e19f, + limb1: 0x12c2648b3316e97703dd5c1d, + limb2: 0x2142fd4df2092db3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe1bb33f0f0c0cfdb61ceba85, - limb1: 0x81fde619229c3fb86c436b0a, - limb2: 0x21e1b78e581a593f, + limb0: 0x608854cc176dc3197a67ae0d, + limb1: 0x1b188792e38a6cef241761f8, + limb2: 0xb83e10a70be3e24, limb3: 0x0 }, r0a1: u384 { - limb0: 0x210146d6a5bc23cb228ee3ce, - limb1: 0x47bf906c8fdb1ddc0e78b220, - limb2: 0x1a9f65cd09d7f240, + limb0: 0x394cefc3dae43636b7206194, + limb1: 0xffe29d325e564b373847b254, + limb2: 0x14adad6a22ebb917, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcd60f6978be4e470061b0e3, - limb1: 0x4b7ea329b6301d215ddd4a33, - limb2: 0x1b5545fe22b4fb63, + limb0: 0x4d3711e0c5fc7f964feed5c9, + limb1: 0xf129f88b02cc5130f734fe64, + limb2: 0x6c132c89e87386b, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5e765a5919464ce21ba32c16, - limb1: 0x60d15c143b5bfb5b942b6855, - limb2: 0xfe5e48f9984464b, + limb0: 0x80157ba1c1bbc0410783fa90, + limb1: 0xb9d6086b08e94c43436de862, + limb2: 0x16cadaf1d363828, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3aa55c2f1d0314bbf3213a26, - limb1: 0xa87568f10d36cd33b68d5a44, - limb2: 0x7dbb358a3eef02a, + limb0: 0x6558a5e904f9e132283961a2, + limb1: 0xad623596624aacc1796aeb37, + limb2: 0x23ae2906c0b5c026, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2802d181a55de572e9c07024, - limb1: 0xdb8c457686a8c4f14a351b1d, - limb2: 0x292d92c8926c5c4d, + limb0: 0xfe9a5f50beff57f1dd5cfdb7, + limb1: 0xee6088dc170ec1967933cfdf, + limb2: 0x2f202c71bbed953d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x99e08c45ca56e3ec46990f4c, - limb1: 0x472bf7df47bff2948cf76a6b, - limb2: 0x1a94ff286de6dee0, + limb0: 0x1132e106e3e9e432d8e6a462, + limb1: 0x7e91e2dc375c1016119a836, + limb2: 0x1021db656cba7bea, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcac1986436917a2cd2c8f8c7, - limb1: 0xe3c21bd5e1781d2754e3293c, - limb2: 0xdbaa935f8a8cc40, + limb0: 0x94440b93c995c8720560e19f, + limb1: 0x12c2648b3316e97703dd5c1d, + limb2: 0x2142fd4df2092db3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe1bb33f0f0c0cfdb61ceba85, - limb1: 0x81fde619229c3fb86c436b0a, - limb2: 0x21e1b78e581a593f, + limb0: 0x608854cc176dc3197a67ae0d, + limb1: 0x1b188792e38a6cef241761f8, + limb2: 0xb83e10a70be3e24, limb3: 0x0 }, r0a1: u384 { - limb0: 0x210146d6a5bc23cb228ee3ce, - limb1: 0x47bf906c8fdb1ddc0e78b220, - limb2: 0x1a9f65cd09d7f240, + limb0: 0x394cefc3dae43636b7206194, + limb1: 0xffe29d325e564b373847b254, + limb2: 0x14adad6a22ebb917, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcd60f6978be4e470061b0e3, - limb1: 0x4b7ea329b6301d215ddd4a33, - limb2: 0x1b5545fe22b4fb63, + limb0: 0x4d3711e0c5fc7f964feed5c9, + limb1: 0xf129f88b02cc5130f734fe64, + limb2: 0x6c132c89e87386b, limb3: 0x0 }, r1a1: u384 { - limb0: 0x5e765a5919464ce21ba32c16, - limb1: 0x60d15c143b5bfb5b942b6855, - limb2: 0xfe5e48f9984464b, + limb0: 0x80157ba1c1bbc0410783fa90, + limb1: 0xb9d6086b08e94c43436de862, + limb2: 0x16cadaf1d363828, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xfc11ae9204e85d3205451a91, - limb1: 0x6b3e2c60642804c9d0e6cfe1, - limb2: 0x91b3c7b7936f41d, + limb0: 0x8761d078f27bb576973fd0c7, + limb1: 0x28a981419d4df9bad6a8b66c, + limb2: 0xe5d394a1ce683fb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd69800053733e1333dc4a387, - limb1: 0xfd6a9d91c02b3218b260d76a, - limb2: 0x9a1e758dc7dc908, + limb0: 0x73274c0ff1e0acde0501b53d, + limb1: 0xc280176d8e44b408bd21f5ad, + limb2: 0x1edf63b3f3d435a7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ce348d097b868ad05ec6838, - limb1: 0xffe3baa26a04df467a66865a, - limb2: 0x136a819ac1e3b885, + limb0: 0x76ee6f179633fb6cd4aba504, + limb1: 0xe1434b88f49be49d6995a496, + limb2: 0x26395c145f1e788f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb96cb104bb9a6757c6810bfd, - limb1: 0xde5c4c1e899073b5f7f6b5ca, - limb2: 0x25ba4f5a2cde57fe, + limb0: 0x7382400177814019a51c721d, + limb1: 0x898444a0e3e41a9e6ded2f3a, + limb2: 0x13db6f41f45ccd37, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xfc11ae9204e85d3205451a91, - limb1: 0x6b3e2c60642804c9d0e6cfe1, - limb2: 0x91b3c7b7936f41d, + limb0: 0x8761d078f27bb576973fd0c7, + limb1: 0x28a981419d4df9bad6a8b66c, + limb2: 0xe5d394a1ce683fb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd69800053733e1333dc4a387, - limb1: 0xfd6a9d91c02b3218b260d76a, - limb2: 0x9a1e758dc7dc908, + limb0: 0x73274c0ff1e0acde0501b53d, + limb1: 0xc280176d8e44b408bd21f5ad, + limb2: 0x1edf63b3f3d435a7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ce348d097b868ad05ec6838, - limb1: 0xffe3baa26a04df467a66865a, - limb2: 0x136a819ac1e3b885, + limb0: 0x76ee6f179633fb6cd4aba504, + limb1: 0xe1434b88f49be49d6995a496, + limb2: 0x26395c145f1e788f, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb96cb104bb9a6757c6810bfd, - limb1: 0xde5c4c1e899073b5f7f6b5ca, - limb2: 0x25ba4f5a2cde57fe, + limb0: 0x7382400177814019a51c721d, + limb1: 0x898444a0e3e41a9e6ded2f3a, + limb2: 0x13db6f41f45ccd37, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd466bff9d093914d4d2b4d95, - limb1: 0x96350205be3504f54ec36f02, - limb2: 0x226fda10888d4686, + limb0: 0xc024f26e70e46ad41e2f819d, + limb1: 0x7ffe1ba3d7c74a75c16ea238, + limb2: 0xa21d39aa8067f55, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7f4123a121cc84e63b5e4fa6, - limb1: 0x547630d642abd616eb05b631, - limb2: 0x9a1c979b8fd4dac, + limb0: 0x37fc3ab89a01f22808446061, + limb1: 0x6a0a5937a529675bfc4fb173, + limb2: 0x1340f6361ca5f1f2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4471c80a7d2a040fee9ca388, - limb1: 0x84e348d4663adef5d1004580, - limb2: 0x1f536b33bbdddcff, + limb0: 0xb3f77c7cbc4c1036e994b010, + limb1: 0x5f536c1614419f502810f9b1, + limb2: 0x122531c8912ce67c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x84eb191fd48f25d11434e86b, - limb1: 0xbafb792f3fede70e56260a54, - limb2: 0x2adb0fdcbde0bac6, + limb0: 0xfe3579446949f061a86e837f, + limb1: 0x9868b7b7b8bb851a5204b136, + limb2: 0xa68046444eeced8, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd466bff9d093914d4d2b4d95, - limb1: 0x96350205be3504f54ec36f02, - limb2: 0x226fda10888d4686, + limb0: 0xc024f26e70e46ad41e2f819d, + limb1: 0x7ffe1ba3d7c74a75c16ea238, + limb2: 0xa21d39aa8067f55, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7f4123a121cc84e63b5e4fa6, - limb1: 0x547630d642abd616eb05b631, - limb2: 0x9a1c979b8fd4dac, + limb0: 0x37fc3ab89a01f22808446061, + limb1: 0x6a0a5937a529675bfc4fb173, + limb2: 0x1340f6361ca5f1f2, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4471c80a7d2a040fee9ca388, - limb1: 0x84e348d4663adef5d1004580, - limb2: 0x1f536b33bbdddcff, + limb0: 0xb3f77c7cbc4c1036e994b010, + limb1: 0x5f536c1614419f502810f9b1, + limb2: 0x122531c8912ce67c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x84eb191fd48f25d11434e86b, - limb1: 0xbafb792f3fede70e56260a54, - limb2: 0x2adb0fdcbde0bac6, + limb0: 0xfe3579446949f061a86e837f, + limb1: 0x9868b7b7b8bb851a5204b136, + limb2: 0xa68046444eeced8, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x29b224c50e481dff12229402, - limb1: 0x5f235db278f454d99d8df843, - limb2: 0x114b9f96a58f2325, + limb0: 0x83bf706fe74eafc3f0e0703f, + limb1: 0xbc55115fb27206e07655d0ec, + limb2: 0xef7b5fa76797a02, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa1e91b7fa3d2b548455ff676, - limb1: 0x4240bc55a22150a8a0f3affb, - limb2: 0x19d35cfb5e662368, + limb0: 0x943943ede1c23752e6365176, + limb1: 0x148dbb57ce179026e9758386, + limb2: 0x2d3d62996a0d641f, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7c376bef9cc822255331926e, - limb1: 0x3dbb4cd263a86ff93566cc76, - limb2: 0x29f2ed764d8bd1ce, + limb0: 0xca8e4e3b9ad43c5bba3d499c, + limb1: 0xea17cfd8caf8fe4d838dda96, + limb2: 0x2481130a8b0e2338, limb3: 0x0 }, r1a1: u384 { - limb0: 0x50caec0ec1fefd274af9d81c, - limb1: 0x9957424ff2abce34c96d0b07, - limb2: 0x19e1cebf403e3014, + limb0: 0x71d62cb59e79e02023ebd7c, + limb1: 0x969d9803dac39ff5bd84665a, + limb2: 0x4f4e4ad0d214c19, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x29b224c50e481dff12229402, - limb1: 0x5f235db278f454d99d8df843, - limb2: 0x114b9f96a58f2325, + limb0: 0x83bf706fe74eafc3f0e0703f, + limb1: 0xbc55115fb27206e07655d0ec, + limb2: 0xef7b5fa76797a02, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa1e91b7fa3d2b548455ff676, - limb1: 0x4240bc55a22150a8a0f3affb, - limb2: 0x19d35cfb5e662368, + limb0: 0x943943ede1c23752e6365176, + limb1: 0x148dbb57ce179026e9758386, + limb2: 0x2d3d62996a0d641f, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7c376bef9cc822255331926e, - limb1: 0x3dbb4cd263a86ff93566cc76, - limb2: 0x29f2ed764d8bd1ce, + limb0: 0xca8e4e3b9ad43c5bba3d499c, + limb1: 0xea17cfd8caf8fe4d838dda96, + limb2: 0x2481130a8b0e2338, limb3: 0x0 }, r1a1: u384 { - limb0: 0x50caec0ec1fefd274af9d81c, - limb1: 0x9957424ff2abce34c96d0b07, - limb2: 0x19e1cebf403e3014, + limb0: 0x71d62cb59e79e02023ebd7c, + limb1: 0x969d9803dac39ff5bd84665a, + limb2: 0x4f4e4ad0d214c19, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9c0fe5670efe72f092b6251b, - limb1: 0x374c1e17d658b11c600ad732, - limb2: 0x1acc109f383e6db9, + limb0: 0xef216ee28840f37b31bbf0e4, + limb1: 0xa03ca8bdc47d8fe49b3f9d6b, + limb2: 0x154f8e404ba66217, limb3: 0x0 }, r0a1: u384 { - limb0: 0x14784fddfb5c2f88eb16e25b, - limb1: 0x4f14ac46edc430e7d0a6995, - limb2: 0x2c8a64f4d3221915, + limb0: 0x38039b4b7ff3aad41b0a6f50, + limb1: 0x72d3f98fe8e5f40a747e97c7, + limb2: 0x18f76f84152f0367, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2bf653642b2481099b5a01ec, - limb1: 0x5639ded8e6ac3d1604869e39, - limb2: 0x130c9bcc081978b9, + limb0: 0xa91858fe3ba7d5179d1c4d3a, + limb1: 0x9d9a50e3afe9d787ff7b8057, + limb2: 0x2e6e0c08ee9fd8e3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa494278cf3c4437961d1fcd5, - limb1: 0x23a4a0888cd10e53b0cff480, - limb2: 0x919b7660d9432a, + limb0: 0xf56fed654a4b2cf945c2f927, + limb1: 0xea120d122fd3f340cbf7951e, + limb2: 0x2537c516befcc375, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x33b92c8ff8e20981c330dfd6, - limb1: 0x772f89819c7ef3b674d09e78, - limb2: 0x2b33a9d28b80af74, + limb0: 0x1025036fef6142a42d9b5ef3, + limb1: 0x8de1fbe703c97634f271cb8, + limb2: 0x221632824e380631, limb3: 0x0 }, r0a1: u384 { - limb0: 0xaabb8ede3593a19245e824ca, - limb1: 0xb09fd77f223469d2d0372165, - limb2: 0x19e144d79fb7b8a3, + limb0: 0xf2bc76d24cc06d6d73cb063, + limb1: 0xc9da322126195a9e833a95a4, + limb2: 0xa61637aa8756985, limb3: 0x0 }, r1a0: u384 { - limb0: 0xeba57e4ae7fc1d2699d66508, - limb1: 0x93b146fa8be9b39d3b5cd3ad, - limb2: 0x1d6698b63ac05f35, + limb0: 0xcad560e263e828d8121c3203, + limb1: 0x2a3442112cca9d66c88c55e3, + limb2: 0x8d9f98fed44ee17, limb3: 0x0 }, r1a1: u384 { - limb0: 0x569a956eb07259d48fb8449e, - limb1: 0xd360f494a085ed9cc7adf9c8, - limb2: 0x20c1cd34bb05bdee, + limb0: 0xcc6e73b388f0452540950637, + limb1: 0xe10d41e6f74fce63036193dc, + limb2: 0x4d66034eeff74ae, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9c0fe5670efe72f092b6251b, - limb1: 0x374c1e17d658b11c600ad732, - limb2: 0x1acc109f383e6db9, + limb0: 0xef216ee28840f37b31bbf0e4, + limb1: 0xa03ca8bdc47d8fe49b3f9d6b, + limb2: 0x154f8e404ba66217, limb3: 0x0 }, r0a1: u384 { - limb0: 0x14784fddfb5c2f88eb16e25b, - limb1: 0x4f14ac46edc430e7d0a6995, - limb2: 0x2c8a64f4d3221915, + limb0: 0x38039b4b7ff3aad41b0a6f50, + limb1: 0x72d3f98fe8e5f40a747e97c7, + limb2: 0x18f76f84152f0367, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2bf653642b2481099b5a01ec, - limb1: 0x5639ded8e6ac3d1604869e39, - limb2: 0x130c9bcc081978b9, + limb0: 0xa91858fe3ba7d5179d1c4d3a, + limb1: 0x9d9a50e3afe9d787ff7b8057, + limb2: 0x2e6e0c08ee9fd8e3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa494278cf3c4437961d1fcd5, - limb1: 0x23a4a0888cd10e53b0cff480, - limb2: 0x919b7660d9432a, + limb0: 0xf56fed654a4b2cf945c2f927, + limb1: 0xea120d122fd3f340cbf7951e, + limb2: 0x2537c516befcc375, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x33b92c8ff8e20981c330dfd6, - limb1: 0x772f89819c7ef3b674d09e78, - limb2: 0x2b33a9d28b80af74, + limb0: 0x1025036fef6142a42d9b5ef3, + limb1: 0x8de1fbe703c97634f271cb8, + limb2: 0x221632824e380631, limb3: 0x0 }, r0a1: u384 { - limb0: 0xaabb8ede3593a19245e824ca, - limb1: 0xb09fd77f223469d2d0372165, - limb2: 0x19e144d79fb7b8a3, + limb0: 0xf2bc76d24cc06d6d73cb063, + limb1: 0xc9da322126195a9e833a95a4, + limb2: 0xa61637aa8756985, limb3: 0x0 }, r1a0: u384 { - limb0: 0xeba57e4ae7fc1d2699d66508, - limb1: 0x93b146fa8be9b39d3b5cd3ad, - limb2: 0x1d6698b63ac05f35, + limb0: 0xcad560e263e828d8121c3203, + limb1: 0x2a3442112cca9d66c88c55e3, + limb2: 0x8d9f98fed44ee17, limb3: 0x0 }, r1a1: u384 { - limb0: 0x569a956eb07259d48fb8449e, - limb1: 0xd360f494a085ed9cc7adf9c8, - limb2: 0x20c1cd34bb05bdee, + limb0: 0xcc6e73b388f0452540950637, + limb1: 0xe10d41e6f74fce63036193dc, + limb2: 0x4d66034eeff74ae, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3a5aeac52246840631d27c4f, - limb1: 0x749008092777b43f8662e186, - limb2: 0x1e272fad1890f537, + limb0: 0xe4fdb1605b34a6e2fa5a9071, + limb1: 0x6d3755c03a4f431f6848dca, + limb2: 0x79874571dda81e2, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1ddbef7d397ec582de6a00de, - limb1: 0xe4e80c1a926daa1299ee4825, - limb2: 0xef3ec5435580e8e, + limb0: 0xd362c372a4559055b4db12ad, + limb1: 0xcea3e634eaeae028442ed10c, + limb2: 0x1ed508bfb6d6a453, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6f42edc22a261bcacffd7f14, - limb1: 0xbd1dfd72016562bf9bf9490e, - limb2: 0x1fcf0c843e776c08, + limb0: 0x899d6bca505f8073faa9029f, + limb1: 0x7e88b8118ae92969d99736f5, + limb2: 0x2ec5c5c4606f42f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x292049b38cc051a10e4a8f68, - limb1: 0x7be92bd4dcf94aa73a3c70d5, - limb2: 0xd47571be7e94abe, + limb0: 0xf183cc91b4d2e602de9bb017, + limb1: 0xf89db9224d376dd9cf5b0f47, + limb2: 0x92abff317c732e6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3a5aeac52246840631d27c4f, - limb1: 0x749008092777b43f8662e186, - limb2: 0x1e272fad1890f537, + limb0: 0xe4fdb1605b34a6e2fa5a9071, + limb1: 0x6d3755c03a4f431f6848dca, + limb2: 0x79874571dda81e2, limb3: 0x0 }, r0a1: u384 { - limb0: 0x1ddbef7d397ec582de6a00de, - limb1: 0xe4e80c1a926daa1299ee4825, - limb2: 0xef3ec5435580e8e, + limb0: 0xd362c372a4559055b4db12ad, + limb1: 0xcea3e634eaeae028442ed10c, + limb2: 0x1ed508bfb6d6a453, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6f42edc22a261bcacffd7f14, - limb1: 0xbd1dfd72016562bf9bf9490e, - limb2: 0x1fcf0c843e776c08, + limb0: 0x899d6bca505f8073faa9029f, + limb1: 0x7e88b8118ae92969d99736f5, + limb2: 0x2ec5c5c4606f42f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x292049b38cc051a10e4a8f68, - limb1: 0x7be92bd4dcf94aa73a3c70d5, - limb2: 0xd47571be7e94abe, + limb0: 0xf183cc91b4d2e602de9bb017, + limb1: 0xf89db9224d376dd9cf5b0f47, + limb2: 0x92abff317c732e6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa91b163b756cb898c4ca732, - limb1: 0x694ec38b9b5169f8e84fa3ae, - limb2: 0x1e1f339b6fc420bc, + limb0: 0x29215676fec6b84b9690301b, + limb1: 0x58d7539160dbc178ae37d05c, + limb2: 0x1f5cb0ae725c16a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7225266c5412294e45eac57c, - limb1: 0xc1f16a9836307304872a53ea, - limb2: 0x481c92faada445d, + limb0: 0xaccdb4d6fc5f57f5dcf2f833, + limb1: 0x8eaab0da8887cf99ddf905a9, + limb2: 0x2e5468dec527b1f0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe6cd35e1c6503eaae780e385, - limb1: 0x80561f33a3d1ff559af0b183, - limb2: 0x1d9b3b03c3cd8fb7, + limb0: 0x76572266e19aab76ee9c2a33, + limb1: 0x7d985ff24b63f166c49b8851, + limb2: 0xc51264d5d6db8e0, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd264ca7a9e695e9c9ed2b047, - limb1: 0x50af2159cc130d772cc6618d, - limb2: 0x184aa7632f6513f, + limb0: 0xa1cb7216968324605af77b1, + limb1: 0x14885867daf3a075a0be7fd3, + limb2: 0x2859866aadddb286, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x88d0c6d63c8704a7e3e9d0b8, - limb1: 0xe917eb4e7f288f3b0ab1fc2e, - limb2: 0x298c5eaae8367c7d, + limb0: 0x1a16e8a342513ea28cf627c1, + limb1: 0xf2b172d252fea25ffa66e473, + limb2: 0x2c490f6fdee98daf, limb3: 0x0 }, r0a1: u384 { - limb0: 0x6e523ad341506532236810fc, - limb1: 0x3990d0535d5d6f21f0dff0e0, - limb2: 0x211cc44a7e71e9b0, + limb0: 0x84dc60ae4a9b72e636cfe752, + limb1: 0xcc2a3cbd2ce8966efefba6c, + limb2: 0x1cca60af37b103bc, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7332ff8b23ac3b600849dd77, - limb1: 0xa87691a81cf10bf076981182, - limb2: 0x1ecb27a68f6390f5, + limb0: 0x2820761bf7176c6f6d319f59, + limb1: 0xb4c0267f5e715cb11a8bf4b6, + limb2: 0x18dff86432277137, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9716b33dc35376c9f9e5290d, - limb1: 0xa56cfa2f910e21893a8b3144, - limb2: 0x24d29f93a0c00224, + limb0: 0x8added305c038531fd60693e, + limb1: 0x7dd88e6d49b40304430a8d22, + limb2: 0x8bea3d64236aaba, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa91b163b756cb898c4ca732, - limb1: 0x694ec38b9b5169f8e84fa3ae, - limb2: 0x1e1f339b6fc420bc, + limb0: 0x29215676fec6b84b9690301b, + limb1: 0x58d7539160dbc178ae37d05c, + limb2: 0x1f5cb0ae725c16a, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7225266c5412294e45eac57c, - limb1: 0xc1f16a9836307304872a53ea, - limb2: 0x481c92faada445d, + limb0: 0xaccdb4d6fc5f57f5dcf2f833, + limb1: 0x8eaab0da8887cf99ddf905a9, + limb2: 0x2e5468dec527b1f0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe6cd35e1c6503eaae780e385, - limb1: 0x80561f33a3d1ff559af0b183, - limb2: 0x1d9b3b03c3cd8fb7, + limb0: 0x76572266e19aab76ee9c2a33, + limb1: 0x7d985ff24b63f166c49b8851, + limb2: 0xc51264d5d6db8e0, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd264ca7a9e695e9c9ed2b047, - limb1: 0x50af2159cc130d772cc6618d, - limb2: 0x184aa7632f6513f, + limb0: 0xa1cb7216968324605af77b1, + limb1: 0x14885867daf3a075a0be7fd3, + limb2: 0x2859866aadddb286, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x88d0c6d63c8704a7e3e9d0b8, - limb1: 0xe917eb4e7f288f3b0ab1fc2e, - limb2: 0x298c5eaae8367c7d, + limb0: 0x1a16e8a342513ea28cf627c1, + limb1: 0xf2b172d252fea25ffa66e473, + limb2: 0x2c490f6fdee98daf, limb3: 0x0 }, r0a1: u384 { - limb0: 0x6e523ad341506532236810fc, - limb1: 0x3990d0535d5d6f21f0dff0e0, - limb2: 0x211cc44a7e71e9b0, + limb0: 0x84dc60ae4a9b72e636cfe752, + limb1: 0xcc2a3cbd2ce8966efefba6c, + limb2: 0x1cca60af37b103bc, limb3: 0x0 }, r1a0: u384 { - limb0: 0x7332ff8b23ac3b600849dd77, - limb1: 0xa87691a81cf10bf076981182, - limb2: 0x1ecb27a68f6390f5, + limb0: 0x2820761bf7176c6f6d319f59, + limb1: 0xb4c0267f5e715cb11a8bf4b6, + limb2: 0x18dff86432277137, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9716b33dc35376c9f9e5290d, - limb1: 0xa56cfa2f910e21893a8b3144, - limb2: 0x24d29f93a0c00224, + limb0: 0x8added305c038531fd60693e, + limb1: 0x7dd88e6d49b40304430a8d22, + limb2: 0x8bea3d64236aaba, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xeecc52642041c53614164e75, - limb1: 0x9b01b170e1874cc9f009e683, - limb2: 0x2ae301146e01a417, + limb0: 0x236f7599347942ac9338d354, + limb1: 0x9dfd6bb0575d2c9e54639eb8, + limb2: 0x2d4da6ec95220197, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbff09af1769fee66b0cc26bd, - limb1: 0x49498fd86915486244c95365, - limb2: 0x260a13f88de33898, + limb0: 0x204ec2dbad11ab606439515c, + limb1: 0x1608e1e54d5cf333e498ed04, + limb2: 0xa239954fff5e25b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd2d6caf15419cb0d1c9c0b1c, - limb1: 0xf973b5b1022bcc0934144ae4, - limb2: 0x1714b866424e5b51, + limb0: 0xca6a461d46c80b6883209633, + limb1: 0xd51a8fff1da65da91f711576, + limb2: 0x18a6a31df08ba480, limb3: 0x0 }, r1a1: u384 { - limb0: 0x692ba99f57cb314b76df3daa, - limb1: 0x38f8e6153683a57a11b9104c, - limb2: 0xd1168b161dd70a4, + limb0: 0xb772707c2454607d668ba777, + limb1: 0x4c04297051c358896bd506e6, + limb2: 0x2e1252656a2b65f3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xeecc52642041c53614164e75, - limb1: 0x9b01b170e1874cc9f009e683, - limb2: 0x2ae301146e01a417, + limb0: 0x236f7599347942ac9338d354, + limb1: 0x9dfd6bb0575d2c9e54639eb8, + limb2: 0x2d4da6ec95220197, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbff09af1769fee66b0cc26bd, - limb1: 0x49498fd86915486244c95365, - limb2: 0x260a13f88de33898, + limb0: 0x204ec2dbad11ab606439515c, + limb1: 0x1608e1e54d5cf333e498ed04, + limb2: 0xa239954fff5e25b, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd2d6caf15419cb0d1c9c0b1c, - limb1: 0xf973b5b1022bcc0934144ae4, - limb2: 0x1714b866424e5b51, + limb0: 0xca6a461d46c80b6883209633, + limb1: 0xd51a8fff1da65da91f711576, + limb2: 0x18a6a31df08ba480, limb3: 0x0 }, r1a1: u384 { - limb0: 0x692ba99f57cb314b76df3daa, - limb1: 0x38f8e6153683a57a11b9104c, - limb2: 0xd1168b161dd70a4, + limb0: 0xb772707c2454607d668ba777, + limb1: 0x4c04297051c358896bd506e6, + limb2: 0x2e1252656a2b65f3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xba0471257291beab8fec744, - limb1: 0xe20f125fd5edbb62a993b3a4, - limb2: 0x302023280ed7330d, + limb0: 0x3841025bd3b86b910393e75a, + limb1: 0x8af5150531302c35d3b89be6, + limb2: 0x1b953e56ec6258ad, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4e68a336fc417591d56e9f81, - limb1: 0x38bfb1f679bcdb61dba64752, - limb2: 0xbd0c0e37f13e1f, + limb0: 0xa681bf9bac9bc787218e5139, + limb1: 0x1e9852e8549fc8c150ede503, + limb2: 0x1056cb6ca5d4b19d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8ae70be45fee6e2e6817003c, - limb1: 0xba0504666e90e5f692825129, - limb2: 0x2740902563f93b5a, + limb0: 0xf757a1022438c5febf953445, + limb1: 0x70e8a00941b1e45a5dd1a55e, + limb2: 0x761a0c71a0e67d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x86bfd6cef4b2a243237d2da0, - limb1: 0x66cc48080ac84bd7a09f4df4, - limb2: 0x1e32eced0dec55df, + limb0: 0x7c45fdd696e05e548053967a, + limb1: 0xf298930725a01884d016dcdd, + limb2: 0x147cc92ef2bc3e93, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7e0543547396e5852436996c, - limb1: 0x2b22826e4bff1148e73742bc, - limb2: 0x2cd8cfd0b77b1c1f, + limb0: 0xdb14c1ffefb3631adf1efc52, + limb1: 0x33d303b7ca1502887f799ef4, + limb2: 0x2f1db2c0f578ccf6, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf619c0ed1ed5d81d97fccf12, - limb1: 0x621a915d45bb950c6b4a9fc5, - limb2: 0x20208e36ba2e1ddf, + limb0: 0x8d2e3ffbaeac56cd4c30226c, + limb1: 0xaeef01beb75585243dda3436, + limb2: 0x1a4b1ec18a67a5e7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4e973e40b75de07c1145e126, - limb1: 0xf4115bf55bab8c77d02b8177, - limb2: 0x8179a2e6bfdae29, + limb0: 0xa5bd35732b50d7aff8649e1d, + limb1: 0x4ef25d4b862cb66a72b7925c, + limb2: 0x1988dce66173b59c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x710845af80fbeb637f21ad81, - limb1: 0xfcc628ffe80775ec1481e9a3, - limb2: 0xe525066692767f6, + limb0: 0x85d9092271b332cc61cf35d0, + limb1: 0x82c0b1a2e29a1f8a53ed23ec, + limb2: 0xcaa12074bdec999, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xba0471257291beab8fec744, - limb1: 0xe20f125fd5edbb62a993b3a4, - limb2: 0x302023280ed7330d, + limb0: 0x3841025bd3b86b910393e75a, + limb1: 0x8af5150531302c35d3b89be6, + limb2: 0x1b953e56ec6258ad, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4e68a336fc417591d56e9f81, - limb1: 0x38bfb1f679bcdb61dba64752, - limb2: 0xbd0c0e37f13e1f, + limb0: 0xa681bf9bac9bc787218e5139, + limb1: 0x1e9852e8549fc8c150ede503, + limb2: 0x1056cb6ca5d4b19d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8ae70be45fee6e2e6817003c, - limb1: 0xba0504666e90e5f692825129, - limb2: 0x2740902563f93b5a, + limb0: 0xf757a1022438c5febf953445, + limb1: 0x70e8a00941b1e45a5dd1a55e, + limb2: 0x761a0c71a0e67d1, limb3: 0x0 }, r1a1: u384 { - limb0: 0x86bfd6cef4b2a243237d2da0, - limb1: 0x66cc48080ac84bd7a09f4df4, - limb2: 0x1e32eced0dec55df, + limb0: 0x7c45fdd696e05e548053967a, + limb1: 0xf298930725a01884d016dcdd, + limb2: 0x147cc92ef2bc3e93, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7e0543547396e5852436996c, - limb1: 0x2b22826e4bff1148e73742bc, - limb2: 0x2cd8cfd0b77b1c1f, + limb0: 0xdb14c1ffefb3631adf1efc52, + limb1: 0x33d303b7ca1502887f799ef4, + limb2: 0x2f1db2c0f578ccf6, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf619c0ed1ed5d81d97fccf12, - limb1: 0x621a915d45bb950c6b4a9fc5, - limb2: 0x20208e36ba2e1ddf, + limb0: 0x8d2e3ffbaeac56cd4c30226c, + limb1: 0xaeef01beb75585243dda3436, + limb2: 0x1a4b1ec18a67a5e7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4e973e40b75de07c1145e126, - limb1: 0xf4115bf55bab8c77d02b8177, - limb2: 0x8179a2e6bfdae29, + limb0: 0xa5bd35732b50d7aff8649e1d, + limb1: 0x4ef25d4b862cb66a72b7925c, + limb2: 0x1988dce66173b59c, limb3: 0x0 }, r1a1: u384 { - limb0: 0x710845af80fbeb637f21ad81, - limb1: 0xfcc628ffe80775ec1481e9a3, - limb2: 0xe525066692767f6, + limb0: 0x85d9092271b332cc61cf35d0, + limb1: 0x82c0b1a2e29a1f8a53ed23ec, + limb2: 0xcaa12074bdec999, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x254c8b8fc1af20177cc6bea3, - limb1: 0x7ae6d04f48a75a0b164cd58b, - limb2: 0x47ead5be211b99a, + limb0: 0xf2be61de88bf4b3456a36982, + limb1: 0xc8654bd6625f5c493530c1ef, + limb2: 0x4880da5f24f068f, limb3: 0x0 }, r0a1: u384 { - limb0: 0xfc8790bd807959e67dda122c, - limb1: 0x57a338cb4247c83f97fb1ead, - limb2: 0x2d5e6dc0a67652a, + limb0: 0x62449b80e9d187a57f968622, + limb1: 0x5def8767fdf6baf992aa12c9, + limb2: 0x2512158344f79fc5, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb788264c005a79ca3489f1c3, - limb1: 0x631e07777e334b612fc43c49, - limb2: 0xbd4953afc13c3c3, + limb0: 0x1aa972e98426afbf3e34c085, + limb1: 0xa109ae6870ac113d71241559, + limb2: 0x1bcd9fc33b8d4a70, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9201a199ea7feab061d80228, - limb1: 0x5ba85fc61b8e61dd9bffcd09, - limb2: 0x24748c2eda7d6a63, + limb0: 0x180588aba90f8db780a2ca9f, + limb1: 0x7ab8b672f6e9e71699c9e396, + limb2: 0xad764eb25e54913, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x254c8b8fc1af20177cc6bea3, - limb1: 0x7ae6d04f48a75a0b164cd58b, - limb2: 0x47ead5be211b99a, + limb0: 0xf2be61de88bf4b3456a36982, + limb1: 0xc8654bd6625f5c493530c1ef, + limb2: 0x4880da5f24f068f, limb3: 0x0 }, r0a1: u384 { - limb0: 0xfc8790bd807959e67dda122c, - limb1: 0x57a338cb4247c83f97fb1ead, - limb2: 0x2d5e6dc0a67652a, + limb0: 0x62449b80e9d187a57f968622, + limb1: 0x5def8767fdf6baf992aa12c9, + limb2: 0x2512158344f79fc5, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb788264c005a79ca3489f1c3, - limb1: 0x631e07777e334b612fc43c49, - limb2: 0xbd4953afc13c3c3, + limb0: 0x1aa972e98426afbf3e34c085, + limb1: 0xa109ae6870ac113d71241559, + limb2: 0x1bcd9fc33b8d4a70, limb3: 0x0 }, r1a1: u384 { - limb0: 0x9201a199ea7feab061d80228, - limb1: 0x5ba85fc61b8e61dd9bffcd09, - limb2: 0x24748c2eda7d6a63, + limb0: 0x180588aba90f8db780a2ca9f, + limb1: 0x7ab8b672f6e9e71699c9e396, + limb2: 0xad764eb25e54913, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe3e9e6ca299c1d9d6e4bbf55, - limb1: 0xd8760ee13b34bdc45a21f833, - limb2: 0x2d8e52e3d2204807, + limb0: 0xa2d84fd2e79180f5d9c7cbda, + limb1: 0xa0129c1f98944e3c393885ab, + limb2: 0x141179a99e051e6a, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd5c02f64baa4d260e838969, - limb1: 0xa4aa6c13c4e845690fb5b65c, - limb2: 0x9db59287fa265e3, + limb0: 0xbb75853a6817fcfb6b048c4, + limb1: 0x29e4cbaa9791d89aed404bb4, + limb2: 0x76fe03dba94c15, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf2d989c4804a637e4957308f, - limb1: 0xa4618c44bcd6b194f77a0e8e, - limb2: 0x2d3eb2947dce137e, + limb0: 0x2568966e889ff4fe9c83dc66, + limb1: 0xac898929f0c7240c45dffe72, + limb2: 0x25ede85b18635067, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe595bba2f3aa5756ee8df4f2, - limb1: 0x727b0b040365a66354e39150, - limb2: 0x2efd42b08b7d4b1b, + limb0: 0xbf4a3c6ed7bab35ea6a91587, + limb1: 0xddb426768dc88446551b9eae, + limb2: 0x15c18c3a7ace1c1c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xe3e9e6ca299c1d9d6e4bbf55, - limb1: 0xd8760ee13b34bdc45a21f833, - limb2: 0x2d8e52e3d2204807, + limb0: 0xa2d84fd2e79180f5d9c7cbda, + limb1: 0xa0129c1f98944e3c393885ab, + limb2: 0x141179a99e051e6a, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd5c02f64baa4d260e838969, - limb1: 0xa4aa6c13c4e845690fb5b65c, - limb2: 0x9db59287fa265e3, + limb0: 0xbb75853a6817fcfb6b048c4, + limb1: 0x29e4cbaa9791d89aed404bb4, + limb2: 0x76fe03dba94c15, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf2d989c4804a637e4957308f, - limb1: 0xa4618c44bcd6b194f77a0e8e, - limb2: 0x2d3eb2947dce137e, + limb0: 0x2568966e889ff4fe9c83dc66, + limb1: 0xac898929f0c7240c45dffe72, + limb2: 0x25ede85b18635067, limb3: 0x0 }, r1a1: u384 { - limb0: 0xe595bba2f3aa5756ee8df4f2, - limb1: 0x727b0b040365a66354e39150, - limb2: 0x2efd42b08b7d4b1b, + limb0: 0xbf4a3c6ed7bab35ea6a91587, + limb1: 0xddb426768dc88446551b9eae, + limb2: 0x15c18c3a7ace1c1c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x70e4a16d216bd1f7544ecc25, - limb1: 0x9dc240c9d715be3ae9a84d3f, - limb2: 0x923e7f3a49be5a4, + limb0: 0x91286f812939ca48668718c, + limb1: 0x69345d029001e5cff796b567, + limb2: 0x781568d392aad70, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8299138f0c8b357c4f5b52cf, - limb1: 0xf2ee806f54be69b08f2eeef2, - limb2: 0x21c13d99abf64a58, + limb0: 0x54037a4157acc5a1e8ca7c62, + limb1: 0x39a3c90242be03e0a97ef620, + limb2: 0x2260adc4baa118f8, limb3: 0x0 }, r1a0: u384 { - limb0: 0x43f7649972ffa500e2381dec, - limb1: 0x185e22b250be28f3617c6cfc, - limb2: 0x24388137676396c1, + limb0: 0x73d01cddaf891a27a00e67c9, + limb1: 0x6acf3edf14a43aaa999d3d2b, + limb2: 0x20fa59f75dad8302, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbe1bb9d2538f1f338072abc4, - limb1: 0x27222273f818fa2d942d5107, - limb2: 0x2bb4ff8265fb5ec6, + limb0: 0x7915780c7f8b4f83feb67a40, + limb1: 0x46ea9775cfc5e375a55d8e38, + limb2: 0x236c39b5a78a2943, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x94979db9749b0cb27f19c126, - limb1: 0x30593088d7900a886771c63d, - limb2: 0x581693e01224fc9, + limb0: 0x92df0e3af546f26577ed1487, + limb1: 0xa3ac01ff6243e8adf4822d07, + limb2: 0x2e8fb31cfb5f84c4, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8abac09ae1314e1024fd767c, - limb1: 0xc61a4ed2e42efed930b0e266, - limb2: 0x15b44627ff7acc85, + limb0: 0xdfa0814dcc3cfd941cbe263, + limb1: 0x9814eb091520194259888630, + limb2: 0x1ff9550371ecf4f7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd90d584b2c2d453dc9f17fdf, - limb1: 0xace4f6e6fc08bff64d51f70c, - limb2: 0x29fabdc8e38aa737, + limb0: 0x7b321d963123cf2736d72ac3, + limb1: 0xfc43f3118254886603c3b4e7, + limb2: 0x241c9fea0d774d03, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8058a4abb449b621368b10d9, - limb1: 0xe1955ba09d2826e9b629df3, - limb2: 0x26f7b826a21d72bc, + limb0: 0xdf61d6180e7608b09bb4fbc, + limb1: 0x35b4240fab1b276334375a53, + limb2: 0x285dc9083fb200c9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x70e4a16d216bd1f7544ecc25, - limb1: 0x9dc240c9d715be3ae9a84d3f, - limb2: 0x923e7f3a49be5a4, + limb0: 0x91286f812939ca48668718c, + limb1: 0x69345d029001e5cff796b567, + limb2: 0x781568d392aad70, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8299138f0c8b357c4f5b52cf, - limb1: 0xf2ee806f54be69b08f2eeef2, - limb2: 0x21c13d99abf64a58, + limb0: 0x54037a4157acc5a1e8ca7c62, + limb1: 0x39a3c90242be03e0a97ef620, + limb2: 0x2260adc4baa118f8, limb3: 0x0 }, r1a0: u384 { - limb0: 0x43f7649972ffa500e2381dec, - limb1: 0x185e22b250be28f3617c6cfc, - limb2: 0x24388137676396c1, + limb0: 0x73d01cddaf891a27a00e67c9, + limb1: 0x6acf3edf14a43aaa999d3d2b, + limb2: 0x20fa59f75dad8302, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbe1bb9d2538f1f338072abc4, - limb1: 0x27222273f818fa2d942d5107, - limb2: 0x2bb4ff8265fb5ec6, + limb0: 0x7915780c7f8b4f83feb67a40, + limb1: 0x46ea9775cfc5e375a55d8e38, + limb2: 0x236c39b5a78a2943, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x94979db9749b0cb27f19c126, - limb1: 0x30593088d7900a886771c63d, - limb2: 0x581693e01224fc9, + limb0: 0x92df0e3af546f26577ed1487, + limb1: 0xa3ac01ff6243e8adf4822d07, + limb2: 0x2e8fb31cfb5f84c4, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8abac09ae1314e1024fd767c, - limb1: 0xc61a4ed2e42efed930b0e266, - limb2: 0x15b44627ff7acc85, + limb0: 0xdfa0814dcc3cfd941cbe263, + limb1: 0x9814eb091520194259888630, + limb2: 0x1ff9550371ecf4f7, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd90d584b2c2d453dc9f17fdf, - limb1: 0xace4f6e6fc08bff64d51f70c, - limb2: 0x29fabdc8e38aa737, + limb0: 0x7b321d963123cf2736d72ac3, + limb1: 0xfc43f3118254886603c3b4e7, + limb2: 0x241c9fea0d774d03, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8058a4abb449b621368b10d9, - limb1: 0xe1955ba09d2826e9b629df3, - limb2: 0x26f7b826a21d72bc, + limb0: 0xdf61d6180e7608b09bb4fbc, + limb1: 0x35b4240fab1b276334375a53, + limb2: 0x285dc9083fb200c9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x60d08b39d9e1cba38849c85b, - limb1: 0x7601aa0c83ba62f8d0be3a3c, - limb2: 0x1ef0525f760c58ce, + limb0: 0x441791311d79a25987eb486f, + limb1: 0xae6adabed7ab2e1346333053, + limb2: 0x11d7a86a5f251872, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdb2574849d13a79ecabc3b0b, - limb1: 0x30bd5a10554bcd52b990f2c9, - limb2: 0x12cea71458673732, + limb0: 0xe2e2729499a55b6916544f7e, + limb1: 0x52902c6ee58559aeb03b99be, + limb2: 0x18e2e32deb54c7ff, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8744d33625b3504cfe57d407, - limb1: 0x8a1687713a3b98189ece1a68, - limb2: 0x29c993adebd0c3e2, + limb0: 0xcb27b5e6b883efd2719064bc, + limb1: 0x1aedc78de223f6a4163a746a, + limb2: 0x1cf0962a0dcc1349, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa767626dcc783c416819883b, - limb1: 0x17c067b6fe67b2189f8b5fd4, - limb2: 0xbdbcf4f85863d60, + limb0: 0xcbb1d007744bc5fed3d00418, + limb1: 0xe60afdf8cbd4e4d8099c799e, + limb2: 0x329fabdf291232c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x60d08b39d9e1cba38849c85b, - limb1: 0x7601aa0c83ba62f8d0be3a3c, - limb2: 0x1ef0525f760c58ce, + limb0: 0x441791311d79a25987eb486f, + limb1: 0xae6adabed7ab2e1346333053, + limb2: 0x11d7a86a5f251872, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdb2574849d13a79ecabc3b0b, - limb1: 0x30bd5a10554bcd52b990f2c9, - limb2: 0x12cea71458673732, + limb0: 0xe2e2729499a55b6916544f7e, + limb1: 0x52902c6ee58559aeb03b99be, + limb2: 0x18e2e32deb54c7ff, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8744d33625b3504cfe57d407, - limb1: 0x8a1687713a3b98189ece1a68, - limb2: 0x29c993adebd0c3e2, + limb0: 0xcb27b5e6b883efd2719064bc, + limb1: 0x1aedc78de223f6a4163a746a, + limb2: 0x1cf0962a0dcc1349, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa767626dcc783c416819883b, - limb1: 0x17c067b6fe67b2189f8b5fd4, - limb2: 0xbdbcf4f85863d60, + limb0: 0xcbb1d007744bc5fed3d00418, + limb1: 0xe60afdf8cbd4e4d8099c799e, + limb2: 0x329fabdf291232c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc3b5e05bdbf7c256975567f0, - limb1: 0xd25fe4375342c0964a46afe6, - limb2: 0x85114d669776b4c, + limb0: 0x6f3bb2d6af4ee2176e003b3a, + limb1: 0xc6891a0f95c58b9c6eb5b18d, + limb2: 0x1c4c1711f3a0a84e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x63baf5cdfb10636dc1880c6a, - limb1: 0x40d558ff1f184a03d6fa2f38, - limb2: 0x3057bea44da5aaf5, + limb0: 0x5504bbfb771ead5785beaec5, + limb1: 0x5559b8cea4b9792b59b37336, + limb2: 0x17b0c2ef3da2953d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8666bd2732e99341292bf5f8, - limb1: 0x737fd9af1d035c6d6c6a00, - limb2: 0x2f1d3671d8619c2, + limb0: 0xf2068d255835d5f16b74ac2e, + limb1: 0x5e75a4ceabd5f1b5c02fe9ed, + limb2: 0x247db20dd0441015, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb2f94439105bd832d1b509d1, - limb1: 0x8d4606b3841bdbbb1a3c1b1a, - limb2: 0x2bb26c88bd3172b8, + limb0: 0x5be223efbfe231abf8ca0cce, + limb1: 0xf3f4de91167c5177fac171ca, + limb2: 0x25e8b4024cb5630d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc3b5e05bdbf7c256975567f0, - limb1: 0xd25fe4375342c0964a46afe6, - limb2: 0x85114d669776b4c, + limb0: 0x6f3bb2d6af4ee2176e003b3a, + limb1: 0xc6891a0f95c58b9c6eb5b18d, + limb2: 0x1c4c1711f3a0a84e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x63baf5cdfb10636dc1880c6a, - limb1: 0x40d558ff1f184a03d6fa2f38, - limb2: 0x3057bea44da5aaf5, + limb0: 0x5504bbfb771ead5785beaec5, + limb1: 0x5559b8cea4b9792b59b37336, + limb2: 0x17b0c2ef3da2953d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8666bd2732e99341292bf5f8, - limb1: 0x737fd9af1d035c6d6c6a00, - limb2: 0x2f1d3671d8619c2, + limb0: 0xf2068d255835d5f16b74ac2e, + limb1: 0x5e75a4ceabd5f1b5c02fe9ed, + limb2: 0x247db20dd0441015, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb2f94439105bd832d1b509d1, - limb1: 0x8d4606b3841bdbbb1a3c1b1a, - limb2: 0x2bb26c88bd3172b8, + limb0: 0x5be223efbfe231abf8ca0cce, + limb1: 0xf3f4de91167c5177fac171ca, + limb2: 0x25e8b4024cb5630d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc9fa17a79d9420718700d819, - limb1: 0x794f031e8958a20316299729, - limb2: 0x2820bdaa4c86c077, + limb0: 0x793261ad2fef8eb1ebdb6a00, + limb1: 0xcf813896ac54cc10d1c36f2b, + limb2: 0x18cde4142d2e2492, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd2ed998366be320a71dbe8a9, - limb1: 0x90a2939d8cfd7dffca8a8cf6, - limb2: 0x75df44f92c7a525, + limb0: 0x5deae6fafec1836e66450442, + limb1: 0xe4f06489862d37d3b2323e92, + limb2: 0x7cd4e6b2d4239c4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x161ee98f0595d5d87074145f, - limb1: 0xc7e646c31b921dd4f3d0b55a, - limb2: 0x8f58a4c164c539, + limb0: 0x87c52edecba636f08f695b04, + limb1: 0x41094d9fab7a3d94b6cc4e73, + limb2: 0x198dd162ada46ada, limb3: 0x0 }, r1a1: u384 { - limb0: 0x44bc26ec6bcca4ffab58a2f9, - limb1: 0x4d754182a197f715a4f7dff7, - limb2: 0x646a982e1eeffb9, + limb0: 0x92b03c53e3fb77e8ea5c3cd8, + limb1: 0x7ea64ace3906085b9cafc271, + limb2: 0xd940e64930fb5de, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xc9fa17a79d9420718700d819, - limb1: 0x794f031e8958a20316299729, - limb2: 0x2820bdaa4c86c077, + limb0: 0x793261ad2fef8eb1ebdb6a00, + limb1: 0xcf813896ac54cc10d1c36f2b, + limb2: 0x18cde4142d2e2492, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd2ed998366be320a71dbe8a9, - limb1: 0x90a2939d8cfd7dffca8a8cf6, - limb2: 0x75df44f92c7a525, + limb0: 0x5deae6fafec1836e66450442, + limb1: 0xe4f06489862d37d3b2323e92, + limb2: 0x7cd4e6b2d4239c4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x161ee98f0595d5d87074145f, - limb1: 0xc7e646c31b921dd4f3d0b55a, - limb2: 0x8f58a4c164c539, + limb0: 0x87c52edecba636f08f695b04, + limb1: 0x41094d9fab7a3d94b6cc4e73, + limb2: 0x198dd162ada46ada, limb3: 0x0 }, r1a1: u384 { - limb0: 0x44bc26ec6bcca4ffab58a2f9, - limb1: 0x4d754182a197f715a4f7dff7, - limb2: 0x646a982e1eeffb9, + limb0: 0x92b03c53e3fb77e8ea5c3cd8, + limb1: 0x7ea64ace3906085b9cafc271, + limb2: 0xd940e64930fb5de, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf88930f339e55cb39812665b, - limb1: 0xa0031feb95d4e0de3ce908cc, - limb2: 0x190d6b65fbae2466, + limb0: 0x28ec1cb163f1de750a3d5c49, + limb1: 0x3344ef71122cb7735e7fb911, + limb2: 0x15ffb7e5cfc1fa5e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x915338651f5a3458089754ad, - limb1: 0x96ebd9b404fcdb27c3dace41, - limb2: 0x14c0560e2744d82b, + limb0: 0xcb1834c8cb4f6e4ab06db0d, + limb1: 0x17f27060892ff9b8cd21c989, + limb2: 0x23ed9c4dba5fc5cb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xea797a8e01c8c7f1108b3e7a, - limb1: 0xe1d3659a5b2c9f63013fb028, - limb2: 0xce081ecec5226bf, + limb0: 0x9372177b949578d45bfce873, + limb1: 0x6c2013b3fe11129ef24c8c91, + limb2: 0x1631233dad5a2a08, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcc514344e316f0c411a16b38, - limb1: 0x5d136f46ad6ce56eb12a41f3, - limb2: 0x1a42ee11b17266e3, + limb0: 0x7e7bced8a31277aaaeb480, + limb1: 0xdde5b3a54fcb9e089f45d080, + limb2: 0x2a8e3c31f98e8c88, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf88930f339e55cb39812665b, - limb1: 0xa0031feb95d4e0de3ce908cc, - limb2: 0x190d6b65fbae2466, + limb0: 0x28ec1cb163f1de750a3d5c49, + limb1: 0x3344ef71122cb7735e7fb911, + limb2: 0x15ffb7e5cfc1fa5e, limb3: 0x0 }, r0a1: u384 { - limb0: 0x915338651f5a3458089754ad, - limb1: 0x96ebd9b404fcdb27c3dace41, - limb2: 0x14c0560e2744d82b, + limb0: 0xcb1834c8cb4f6e4ab06db0d, + limb1: 0x17f27060892ff9b8cd21c989, + limb2: 0x23ed9c4dba5fc5cb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xea797a8e01c8c7f1108b3e7a, - limb1: 0xe1d3659a5b2c9f63013fb028, - limb2: 0xce081ecec5226bf, + limb0: 0x9372177b949578d45bfce873, + limb1: 0x6c2013b3fe11129ef24c8c91, + limb2: 0x1631233dad5a2a08, limb3: 0x0 }, r1a1: u384 { - limb0: 0xcc514344e316f0c411a16b38, - limb1: 0x5d136f46ad6ce56eb12a41f3, - limb2: 0x1a42ee11b17266e3, + limb0: 0x7e7bced8a31277aaaeb480, + limb1: 0xdde5b3a54fcb9e089f45d080, + limb2: 0x2a8e3c31f98e8c88, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x181e29d14eeceb6eee798b2d, - limb1: 0xf25705f67b5076e1f3e30873, - limb2: 0x1f355b66c3f74d10, + limb0: 0x614da191d34eb6c444afe930, + limb1: 0x8f0957a45959802f945e8db9, + limb2: 0x6fa2586e406901c, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4fd38e08126dd83946dabcc1, - limb1: 0x3bf8eb367ed846e40da20992, - limb2: 0x2972538e880e301a, + limb0: 0x5d4ce2f1d39afe723e79db28, + limb1: 0xce5115ae0b181ac47a7e4ebe, + limb2: 0x15cc21d5e1c517ec, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5b9de9c2d66b2269c8db65e, - limb1: 0x85a93af9b21d247da4983b95, - limb2: 0x18238b540296e31d, + limb0: 0xa96505e7f29062d82b468c64, + limb1: 0x3e7d3e343359e1957ef637da, + limb2: 0x1f6d157b5914a756, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb45d9298dc0e91a7811c0843, - limb1: 0x5ff67a090d79c036178fa079, - limb2: 0x1039245364bafa2b, + limb0: 0xfbfcdef67cf6164071e6cb29, + limb1: 0xdf8ae7c07658a12db6b155b, + limb2: 0x1a8ee2ba14d1f36e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x181e29d14eeceb6eee798b2d, - limb1: 0xf25705f67b5076e1f3e30873, - limb2: 0x1f355b66c3f74d10, + limb0: 0x614da191d34eb6c444afe930, + limb1: 0x8f0957a45959802f945e8db9, + limb2: 0x6fa2586e406901c, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4fd38e08126dd83946dabcc1, - limb1: 0x3bf8eb367ed846e40da20992, - limb2: 0x2972538e880e301a, + limb0: 0x5d4ce2f1d39afe723e79db28, + limb1: 0xce5115ae0b181ac47a7e4ebe, + limb2: 0x15cc21d5e1c517ec, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5b9de9c2d66b2269c8db65e, - limb1: 0x85a93af9b21d247da4983b95, - limb2: 0x18238b540296e31d, + limb0: 0xa96505e7f29062d82b468c64, + limb1: 0x3e7d3e343359e1957ef637da, + limb2: 0x1f6d157b5914a756, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb45d9298dc0e91a7811c0843, - limb1: 0x5ff67a090d79c036178fa079, - limb2: 0x1039245364bafa2b, + limb0: 0xfbfcdef67cf6164071e6cb29, + limb1: 0xdf8ae7c07658a12db6b155b, + limb2: 0x1a8ee2ba14d1f36e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd8bf1499a1ec49aec7278105, - limb1: 0x8c7fc81f6dff7c7a4e2b39fc, - limb2: 0x20055082c1af3e84, + limb0: 0x37f302160247ccc4e884b697, + limb1: 0x86bf2baf19c424742321fb8f, + limb2: 0xfe02d3680650dfa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbca4f72be3339584a40d64ac, - limb1: 0x309ac4e7e2927000116ada41, - limb2: 0x27cefa2b4c836363, + limb0: 0x8266da0b85b5d37973513d68, + limb1: 0xf59ad9c36cab38fd2133b5a0, + limb2: 0xcd288a1f721e743, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5e7ede11524472f98d26502e, - limb1: 0x34d0ce533fe88c737b591268, - limb2: 0x78ce3a1ca37fd52, + limb0: 0x68bc8f7629329df099c77957, + limb1: 0xd984b80308f4d84f1cc0ac01, + limb2: 0xeb15daaf6a0711e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7f48a4dc794ea7da7a0ea7bc, - limb1: 0x7674b17bd85f0ca97cec6b77, - limb2: 0x220fd2926599a49, + limb0: 0xde33cc810e6c45544b7b1d63, + limb1: 0xbfc9fa2665a268586b092094, + limb2: 0x2540680db98220f9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf414e13eed477d9df259bc3b, - limb1: 0x9045b428dc27aa4cb7a71c07, - limb2: 0x29b1f8b9485762e8, + limb0: 0x844f09f48bc8d733e755eb67, + limb1: 0x1815db4deb12e474f72764bc, + limb2: 0xb272da986c40374, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdbb45145e7419dc127cfa294, - limb1: 0x8d41ca16fb6f1f11289c8985, - limb2: 0x2b2dd8b44afe998a, + limb0: 0x6a27a78115117ace4a9da882, + limb1: 0x75a1a2ac0b0173235165c192, + limb2: 0x19aa4c3a491be457, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe30ad95f9e4c8fc74a0c84ba, - limb1: 0xf254b174f1df4b6f364d9eae, - limb2: 0x2b86adde0995d62e, + limb0: 0x8b0718b7cb84932c0c3d137a, + limb1: 0x4e41381f0709db8bfa3775ba, + limb2: 0x291f8293ea031882, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f407766e74f5dfae3c270ee, - limb1: 0x604ce2704c9c834e828ab479, - limb2: 0x2282b9049d03e0ec, + limb0: 0xe56394253a523e9a0245345d, + limb1: 0x6cfb2b41859fb7ab43faec9d, + limb2: 0x1c13f310babe4689, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd8bf1499a1ec49aec7278105, - limb1: 0x8c7fc81f6dff7c7a4e2b39fc, - limb2: 0x20055082c1af3e84, + limb0: 0x37f302160247ccc4e884b697, + limb1: 0x86bf2baf19c424742321fb8f, + limb2: 0xfe02d3680650dfa, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbca4f72be3339584a40d64ac, - limb1: 0x309ac4e7e2927000116ada41, - limb2: 0x27cefa2b4c836363, + limb0: 0x8266da0b85b5d37973513d68, + limb1: 0xf59ad9c36cab38fd2133b5a0, + limb2: 0xcd288a1f721e743, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5e7ede11524472f98d26502e, - limb1: 0x34d0ce533fe88c737b591268, - limb2: 0x78ce3a1ca37fd52, + limb0: 0x68bc8f7629329df099c77957, + limb1: 0xd984b80308f4d84f1cc0ac01, + limb2: 0xeb15daaf6a0711e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7f48a4dc794ea7da7a0ea7bc, - limb1: 0x7674b17bd85f0ca97cec6b77, - limb2: 0x220fd2926599a49, + limb0: 0xde33cc810e6c45544b7b1d63, + limb1: 0xbfc9fa2665a268586b092094, + limb2: 0x2540680db98220f9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf414e13eed477d9df259bc3b, - limb1: 0x9045b428dc27aa4cb7a71c07, - limb2: 0x29b1f8b9485762e8, + limb0: 0x844f09f48bc8d733e755eb67, + limb1: 0x1815db4deb12e474f72764bc, + limb2: 0xb272da986c40374, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdbb45145e7419dc127cfa294, - limb1: 0x8d41ca16fb6f1f11289c8985, - limb2: 0x2b2dd8b44afe998a, + limb0: 0x6a27a78115117ace4a9da882, + limb1: 0x75a1a2ac0b0173235165c192, + limb2: 0x19aa4c3a491be457, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe30ad95f9e4c8fc74a0c84ba, - limb1: 0xf254b174f1df4b6f364d9eae, - limb2: 0x2b86adde0995d62e, + limb0: 0x8b0718b7cb84932c0c3d137a, + limb1: 0x4e41381f0709db8bfa3775ba, + limb2: 0x291f8293ea031882, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f407766e74f5dfae3c270ee, - limb1: 0x604ce2704c9c834e828ab479, - limb2: 0x2282b9049d03e0ec, + limb0: 0xe56394253a523e9a0245345d, + limb1: 0x6cfb2b41859fb7ab43faec9d, + limb2: 0x1c13f310babe4689, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd0a533d6d29f068b1fe2cfc9, - limb1: 0xddf2d6731c4aa0116f888eb4, - limb2: 0x6c8bdee9acfca37, + limb0: 0xbb528589966083a5c3cc503d, + limb1: 0xf96424b9b3f7b83a10910d65, + limb2: 0x196e6e6af64ee9cd, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc3b82b859636fd6f6fa5ba06, - limb1: 0x8a91bae4aefdae25584a0ccd, - limb2: 0x1d771440f3de7fff, + limb0: 0x57d77b7c7258f6db3a4e0e4d, + limb1: 0x6327ad0f969e2c509eb4e0ea, + limb2: 0xd8c6afa9f3b4c80, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5fcec147809104d6f8ae414, - limb1: 0x19b41461cb28e4c382cbf2bc, - limb2: 0x231f5836c39dda13, + limb0: 0x3db6f6e9aa86ac27838aa2b, + limb1: 0x1f9aad200150f730986f7c7f, + limb2: 0x18ddd5901615337c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xefae48de3db2d9d0e2cdbc6d, - limb1: 0xea456060b57f5516387f2639, - limb2: 0x29d174c0b3b24506, + limb0: 0xe3de0054e56a02951366bd59, + limb1: 0xf1d61cbb5c0358d9ad0fba62, + limb2: 0x7d161cbb52c9d9f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd0a533d6d29f068b1fe2cfc9, - limb1: 0xddf2d6731c4aa0116f888eb4, - limb2: 0x6c8bdee9acfca37, + limb0: 0xbb528589966083a5c3cc503d, + limb1: 0xf96424b9b3f7b83a10910d65, + limb2: 0x196e6e6af64ee9cd, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc3b82b859636fd6f6fa5ba06, - limb1: 0x8a91bae4aefdae25584a0ccd, - limb2: 0x1d771440f3de7fff, + limb0: 0x57d77b7c7258f6db3a4e0e4d, + limb1: 0x6327ad0f969e2c509eb4e0ea, + limb2: 0xd8c6afa9f3b4c80, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa5fcec147809104d6f8ae414, - limb1: 0x19b41461cb28e4c382cbf2bc, - limb2: 0x231f5836c39dda13, + limb0: 0x3db6f6e9aa86ac27838aa2b, + limb1: 0x1f9aad200150f730986f7c7f, + limb2: 0x18ddd5901615337c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xefae48de3db2d9d0e2cdbc6d, - limb1: 0xea456060b57f5516387f2639, - limb2: 0x29d174c0b3b24506, + limb0: 0xe3de0054e56a02951366bd59, + limb1: 0xf1d61cbb5c0358d9ad0fba62, + limb2: 0x7d161cbb52c9d9f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd615042805412d1e2280d81d, - limb1: 0x5187ebce14c6b26b8a7761a4, - limb2: 0x948cf2892458949, + limb0: 0x1bc2c1c82780cdf60c6e2ebe, + limb1: 0xae4b635d425a8eec5785e1cf, + limb2: 0xd8f0030305e9d60, limb3: 0x0 }, r0a1: u384 { - limb0: 0x27d22b617ce0d7e871613526, - limb1: 0xcea2a4019f44118b845557b3, - limb2: 0x105b008ffcd79659, + limb0: 0x489d8175b3766c7193a418b4, + limb1: 0xd60cf5772b049cb26b691b55, + limb2: 0x132b3d14f101eb9b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9874ec620daa3777198d478a, - limb1: 0x90c21b51461eb0afb5ce60b5, - limb2: 0x26b7ec8bfd2be149, + limb0: 0x70b8cce338d97c3f93483761, + limb1: 0x16d0d363bfef9228bc47442c, + limb2: 0x5e3e8404827c1db, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbcb1f603abb8929bd558cf7e, - limb1: 0x26258e52e7f471ad913170e7, - limb2: 0x101350dad9fad00f, + limb0: 0x41d459ec2861f3be6809b6f3, + limb1: 0xf6f3a3ac71eeb3899f2f4748, + limb2: 0xaaf22c0eeffaf27, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd615042805412d1e2280d81d, - limb1: 0x5187ebce14c6b26b8a7761a4, - limb2: 0x948cf2892458949, + limb0: 0x1bc2c1c82780cdf60c6e2ebe, + limb1: 0xae4b635d425a8eec5785e1cf, + limb2: 0xd8f0030305e9d60, limb3: 0x0 }, r0a1: u384 { - limb0: 0x27d22b617ce0d7e871613526, - limb1: 0xcea2a4019f44118b845557b3, - limb2: 0x105b008ffcd79659, + limb0: 0x489d8175b3766c7193a418b4, + limb1: 0xd60cf5772b049cb26b691b55, + limb2: 0x132b3d14f101eb9b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9874ec620daa3777198d478a, - limb1: 0x90c21b51461eb0afb5ce60b5, - limb2: 0x26b7ec8bfd2be149, + limb0: 0x70b8cce338d97c3f93483761, + limb1: 0x16d0d363bfef9228bc47442c, + limb2: 0x5e3e8404827c1db, limb3: 0x0 }, r1a1: u384 { - limb0: 0xbcb1f603abb8929bd558cf7e, - limb1: 0x26258e52e7f471ad913170e7, - limb2: 0x101350dad9fad00f, + limb0: 0x41d459ec2861f3be6809b6f3, + limb1: 0xf6f3a3ac71eeb3899f2f4748, + limb2: 0xaaf22c0eeffaf27, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9e38bee4b9f1d02ee44d8d51, - limb1: 0x8b9aa747ab88352ac1b3e513, - limb2: 0x2f2f9d1e5e2924a8, + limb0: 0xdb082e25ff6a735fd836fb0f, + limb1: 0xff51bee0f9bc65717d9306e5, + limb2: 0xe937bbb6dcb426b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x56266ee8059d0f0649622179, - limb1: 0x207aae94cec54e55e2fd7be3, - limb2: 0x300003bc371e14b3, + limb0: 0xa0e0ef6de70a19d8e30eefe4, + limb1: 0x9971141f0fd1aa96865c5129, + limb2: 0x7ed811b11734fc4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x150603f48d4b25ca633a482f, - limb1: 0xc93022681bdfd413fc44c4ee, - limb2: 0x15578cc36009503, + limb0: 0x660bcce2ba42a37aeda78995, + limb1: 0xe078d27a60320dba4aed3f3c, + limb2: 0x10573b0f2cc19a00, limb3: 0x0 }, r1a1: u384 { - limb0: 0xadc2be559837e50d7b942b11, - limb1: 0x9164db0e90b0a10b647b7da4, - limb2: 0x16cf6d97b236809b, + limb0: 0x5e7b027e6261d4675ece781f, + limb1: 0x3354a33eebf2cc097a4de3d2, + limb2: 0x1af317f02039f5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x92b42a7873acb5bba81717c1, - limb1: 0xc25014a87390bacea9437b73, - limb2: 0xc56ad4af9f41ae5, + limb0: 0x63724e690d5f646eff2ad589, + limb1: 0xccf863aaa561f2a18a80c393, + limb2: 0x1f1047702f52eb0d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9ae367f6f767da1fafbe8671, - limb1: 0xcbc0230b0e2c1032d0f5babc, - limb2: 0x2739a47f7fa3aa11, + limb0: 0xe7658fc9bf841a002a808e25, + limb1: 0x8ce9ccdffab1ab886034d842, + limb2: 0x2bf331e6d3b04200, limb3: 0x0 }, r1a0: u384 { - limb0: 0x34276f4630761e6d17c17753, - limb1: 0xc16820ed9b1166d310b9b7ef, - limb2: 0x1163fdb7548fde52, + limb0: 0x85f3f386f915aa0d30236a1b, + limb1: 0xac13040cfd7cb948df006a49, + limb2: 0xfc258ada466eaa9, limb3: 0x0 }, r1a1: u384 { - limb0: 0x291d6e5c33a03aa0fb01bd10, - limb1: 0x557487c5e562b5f24d9bd401, - limb2: 0x2c4597b8e79d28fe, + limb0: 0x9ce50b0b7a1ed49acbe59fe4, + limb1: 0xa6996ff100909825127d54e8, + limb2: 0xe0653a3a82da48d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9e38bee4b9f1d02ee44d8d51, - limb1: 0x8b9aa747ab88352ac1b3e513, - limb2: 0x2f2f9d1e5e2924a8, + limb0: 0xdb082e25ff6a735fd836fb0f, + limb1: 0xff51bee0f9bc65717d9306e5, + limb2: 0xe937bbb6dcb426b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x56266ee8059d0f0649622179, - limb1: 0x207aae94cec54e55e2fd7be3, - limb2: 0x300003bc371e14b3, + limb0: 0xa0e0ef6de70a19d8e30eefe4, + limb1: 0x9971141f0fd1aa96865c5129, + limb2: 0x7ed811b11734fc4, limb3: 0x0 }, r1a0: u384 { - limb0: 0x150603f48d4b25ca633a482f, - limb1: 0xc93022681bdfd413fc44c4ee, - limb2: 0x15578cc36009503, + limb0: 0x660bcce2ba42a37aeda78995, + limb1: 0xe078d27a60320dba4aed3f3c, + limb2: 0x10573b0f2cc19a00, limb3: 0x0 }, r1a1: u384 { - limb0: 0xadc2be559837e50d7b942b11, - limb1: 0x9164db0e90b0a10b647b7da4, - limb2: 0x16cf6d97b236809b, + limb0: 0x5e7b027e6261d4675ece781f, + limb1: 0x3354a33eebf2cc097a4de3d2, + limb2: 0x1af317f02039f5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x92b42a7873acb5bba81717c1, - limb1: 0xc25014a87390bacea9437b73, - limb2: 0xc56ad4af9f41ae5, + limb0: 0x63724e690d5f646eff2ad589, + limb1: 0xccf863aaa561f2a18a80c393, + limb2: 0x1f1047702f52eb0d, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9ae367f6f767da1fafbe8671, - limb1: 0xcbc0230b0e2c1032d0f5babc, - limb2: 0x2739a47f7fa3aa11, + limb0: 0xe7658fc9bf841a002a808e25, + limb1: 0x8ce9ccdffab1ab886034d842, + limb2: 0x2bf331e6d3b04200, limb3: 0x0 }, r1a0: u384 { - limb0: 0x34276f4630761e6d17c17753, - limb1: 0xc16820ed9b1166d310b9b7ef, - limb2: 0x1163fdb7548fde52, + limb0: 0x85f3f386f915aa0d30236a1b, + limb1: 0xac13040cfd7cb948df006a49, + limb2: 0xfc258ada466eaa9, limb3: 0x0 }, r1a1: u384 { - limb0: 0x291d6e5c33a03aa0fb01bd10, - limb1: 0x557487c5e562b5f24d9bd401, - limb2: 0x2c4597b8e79d28fe, + limb0: 0x9ce50b0b7a1ed49acbe59fe4, + limb1: 0xa6996ff100909825127d54e8, + limb2: 0xe0653a3a82da48d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x350ae1860667a0a8aff7480f, - limb1: 0x8d99eeef878643d1301ffe21, - limb2: 0x1f90fef1b952982f, + limb0: 0xd3b12eab33c136c775dbd48d, + limb1: 0x758880d2801a8d76459d43cf, + limb2: 0x9924db6a79fbd4, limb3: 0x0 }, r0a1: u384 { - limb0: 0xfe5cfb304e2a06936e3fe735, - limb1: 0x7ef6611903ea2d9c16511605, - limb2: 0x110e7c7519de14f7, + limb0: 0xc92b307abbce3beec2ab17c0, + limb1: 0x2989f76fb73f25b188f2dff5, + limb2: 0x12a327b38c27f4ad, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8550f7e3b81a4670eec1360c, - limb1: 0x30bd1a4e3774e512c6eeac27, - limb2: 0x28b961bd4af7079, + limb0: 0x38d49ae370a94a6d764fbe53, + limb1: 0xc5c4888da220dd1053f3abb4, + limb2: 0x1a6b62f5ee9ed7b8, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf5cb663efdb8ab2d062685af, - limb1: 0xe10dbe9916a6a5c509fc7fe2, - limb2: 0x11c131f55ff6948f, + limb0: 0x24c67b093c561ab3dd30939f, + limb1: 0x92b8b2198f5db7182e1367b, + limb2: 0x5eb50ee86b198c6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x350ae1860667a0a8aff7480f, - limb1: 0x8d99eeef878643d1301ffe21, - limb2: 0x1f90fef1b952982f, + limb0: 0xd3b12eab33c136c775dbd48d, + limb1: 0x758880d2801a8d76459d43cf, + limb2: 0x9924db6a79fbd4, limb3: 0x0 }, r0a1: u384 { - limb0: 0xfe5cfb304e2a06936e3fe735, - limb1: 0x7ef6611903ea2d9c16511605, - limb2: 0x110e7c7519de14f7, + limb0: 0xc92b307abbce3beec2ab17c0, + limb1: 0x2989f76fb73f25b188f2dff5, + limb2: 0x12a327b38c27f4ad, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8550f7e3b81a4670eec1360c, - limb1: 0x30bd1a4e3774e512c6eeac27, - limb2: 0x28b961bd4af7079, + limb0: 0x38d49ae370a94a6d764fbe53, + limb1: 0xc5c4888da220dd1053f3abb4, + limb2: 0x1a6b62f5ee9ed7b8, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf5cb663efdb8ab2d062685af, - limb1: 0xe10dbe9916a6a5c509fc7fe2, - limb2: 0x11c131f55ff6948f, + limb0: 0x24c67b093c561ab3dd30939f, + limb1: 0x92b8b2198f5db7182e1367b, + limb2: 0x5eb50ee86b198c6, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x93941c0b7fd0082d936ec9eb, - limb1: 0x2b18918a44e81454acec8b2e, - limb2: 0x1b2900c587d7d8fb, + limb0: 0x1046f626e68c8385257dbc93, + limb1: 0xf97fb13c0de7c7215a9a4fd0, + limb2: 0x2964298298240730, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7e23e00069deb7b55d6c665a, - limb1: 0xb43300accdba6c4acca41d67, - limb2: 0x2d367ca3db10f58c, + limb0: 0xc923f87fcb2d1b2ea85904ae, + limb1: 0x43d5dfbc4b8d180e27c7d8ef, + limb2: 0xe296b0a46984533, limb3: 0x0 }, r1a0: u384 { - limb0: 0x409176f73f64268500ef4dd5, - limb1: 0x8c68dfbf88c33962e9152158, - limb2: 0x4db28db86b72c0, + limb0: 0x7230ba220638f78f266e4949, + limb1: 0xfcbafda5da3ce343bf9f31e1, + limb2: 0x2dbc83722fbe87c3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc7b025273c8ead4edf2e374d, - limb1: 0x1d882c1b8bf49ff58f804b42, - limb2: 0xbf028709acd616b, + limb0: 0x9fb0b4050dcb7c16286e6437, + limb1: 0xf8655adcbf50b4efe277300e, + limb2: 0x1126130beba5f50a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xacdfd7133ccb0e0752467831, - limb1: 0x176e1c71e4b9ca7f87bcdda9, - limb2: 0x2a85e028770b0527, + limb0: 0x691d26c4527aebe1fbeaf637, + limb1: 0xbbc72c87d3f05a5c3024a802, + limb2: 0x148d3bfa3e1bae16, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9c008b5f479b565344d97bf0, - limb1: 0xfb3256d88a66df7ffe019359, - limb2: 0x1804ca3f10467faf, + limb0: 0x7d1d0fa217454e3129182aff, + limb1: 0xf29b983eb401c5eb3a323ff7, + limb2: 0x3c17a1bf2eeab07, limb3: 0x0 }, r1a0: u384 { - limb0: 0x85b36d7163511f21b32da758, - limb1: 0x2276515a81454db7615d0fe6, - limb2: 0x14c43d849e803e3f, + limb0: 0xb96769a00457380b821cd65f, + limb1: 0x27a8e20afc9362f79af096e, + limb2: 0x20a5e744b161c953, limb3: 0x0 }, r1a1: u384 { - limb0: 0xebdbc72482e7e6eb407067a5, - limb1: 0x12481ed8049a102242a969b4, - limb2: 0xc21e9d249207247, + limb0: 0x1d79602cd4c91d0df3d1a791, + limb1: 0x186d4bfd5ca3798eabf609e2, + limb2: 0x42f0ac0b08962c3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x93941c0b7fd0082d936ec9eb, - limb1: 0x2b18918a44e81454acec8b2e, - limb2: 0x1b2900c587d7d8fb, + limb0: 0x1046f626e68c8385257dbc93, + limb1: 0xf97fb13c0de7c7215a9a4fd0, + limb2: 0x2964298298240730, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7e23e00069deb7b55d6c665a, - limb1: 0xb43300accdba6c4acca41d67, - limb2: 0x2d367ca3db10f58c, + limb0: 0xc923f87fcb2d1b2ea85904ae, + limb1: 0x43d5dfbc4b8d180e27c7d8ef, + limb2: 0xe296b0a46984533, limb3: 0x0 }, r1a0: u384 { - limb0: 0x409176f73f64268500ef4dd5, - limb1: 0x8c68dfbf88c33962e9152158, - limb2: 0x4db28db86b72c0, + limb0: 0x7230ba220638f78f266e4949, + limb1: 0xfcbafda5da3ce343bf9f31e1, + limb2: 0x2dbc83722fbe87c3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc7b025273c8ead4edf2e374d, - limb1: 0x1d882c1b8bf49ff58f804b42, - limb2: 0xbf028709acd616b, + limb0: 0x9fb0b4050dcb7c16286e6437, + limb1: 0xf8655adcbf50b4efe277300e, + limb2: 0x1126130beba5f50a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xacdfd7133ccb0e0752467831, - limb1: 0x176e1c71e4b9ca7f87bcdda9, - limb2: 0x2a85e028770b0527, + limb0: 0x691d26c4527aebe1fbeaf637, + limb1: 0xbbc72c87d3f05a5c3024a802, + limb2: 0x148d3bfa3e1bae16, limb3: 0x0 }, r0a1: u384 { - limb0: 0x9c008b5f479b565344d97bf0, - limb1: 0xfb3256d88a66df7ffe019359, - limb2: 0x1804ca3f10467faf, + limb0: 0x7d1d0fa217454e3129182aff, + limb1: 0xf29b983eb401c5eb3a323ff7, + limb2: 0x3c17a1bf2eeab07, limb3: 0x0 }, r1a0: u384 { - limb0: 0x85b36d7163511f21b32da758, - limb1: 0x2276515a81454db7615d0fe6, - limb2: 0x14c43d849e803e3f, + limb0: 0xb96769a00457380b821cd65f, + limb1: 0x27a8e20afc9362f79af096e, + limb2: 0x20a5e744b161c953, limb3: 0x0 }, r1a1: u384 { - limb0: 0xebdbc72482e7e6eb407067a5, - limb1: 0x12481ed8049a102242a969b4, - limb2: 0xc21e9d249207247, + limb0: 0x1d79602cd4c91d0df3d1a791, + limb1: 0x186d4bfd5ca3798eabf609e2, + limb2: 0x42f0ac0b08962c3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x460e5bad114b8f4d80eda1b9, - limb1: 0x518253bd164d2dc0e711d5e0, - limb2: 0x97e547b8920854d, + limb0: 0x217153900ead339150135d9b, + limb1: 0x1c7e9c885b64d90867d76c04, + limb2: 0x27b3426cce8b4ad5, limb3: 0x0 }, r0a1: u384 { - limb0: 0x782a5dd89e1aab5108a7b845, - limb1: 0x89d7afb011f39bcd52721aaf, - limb2: 0x298093b38ae27f59, + limb0: 0x5c6ade412e1356c3178ee39e, + limb1: 0x89d8b3321305d0666389fee6, + limb2: 0x13b01594a810da0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8c3087a3783c1cef9be79247, - limb1: 0xfd1fca4e7d73466b3d696198, - limb2: 0x12e8ac43591e8280, + limb0: 0xb391a0d27884b680628d560f, + limb1: 0x7d281de7e5bc310f7c3e1d34, + limb2: 0x148d2b316314c15f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8005d92d62bcade6eb3c0bdc, - limb1: 0xbdc622487c5d191e2e960200, - limb2: 0x6fc6f6be22e57c3, + limb0: 0x622443e65f77ab4e9eeaa147, + limb1: 0x4144f7b17439b8bfff6286b6, + limb2: 0x28b73eea481e1ef9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x460e5bad114b8f4d80eda1b9, - limb1: 0x518253bd164d2dc0e711d5e0, - limb2: 0x97e547b8920854d, + limb0: 0x217153900ead339150135d9b, + limb1: 0x1c7e9c885b64d90867d76c04, + limb2: 0x27b3426cce8b4ad5, limb3: 0x0 }, r0a1: u384 { - limb0: 0x782a5dd89e1aab5108a7b845, - limb1: 0x89d7afb011f39bcd52721aaf, - limb2: 0x298093b38ae27f59, + limb0: 0x5c6ade412e1356c3178ee39e, + limb1: 0x89d8b3321305d0666389fee6, + limb2: 0x13b01594a810da0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x8c3087a3783c1cef9be79247, - limb1: 0xfd1fca4e7d73466b3d696198, - limb2: 0x12e8ac43591e8280, + limb0: 0xb391a0d27884b680628d560f, + limb1: 0x7d281de7e5bc310f7c3e1d34, + limb2: 0x148d2b316314c15f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8005d92d62bcade6eb3c0bdc, - limb1: 0xbdc622487c5d191e2e960200, - limb2: 0x6fc6f6be22e57c3, + limb0: 0x622443e65f77ab4e9eeaa147, + limb1: 0x4144f7b17439b8bfff6286b6, + limb2: 0x28b73eea481e1ef9, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd40eed86f08729c88f528e3d, - limb1: 0x2a8e86427046407f1afbd966, - limb2: 0xc0498c5cbd499a2, + limb0: 0xd1009e9e2f0551593d539227, + limb1: 0x497cec387198986a6239da72, + limb2: 0x28ef2017e1ebd5c8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8c31a9d276e86c7b45406c85, - limb1: 0xc21296c66d5b6c0409d450bb, - limb2: 0xff45883e3b85c38, + limb0: 0xebe5bc8fadab4c11d33df84b, + limb1: 0xdc5ae3d9a9a4ef784abad9e5, + limb2: 0x271838a630da6722, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb662b852c5d91ba070574bce, - limb1: 0x6c16527e551fc6c016cdc888, - limb2: 0x8b78e35947ca545, + limb0: 0x99add355853db63f083988f4, + limb1: 0x9ddd575c3c0d9aba51270a69, + limb2: 0x13106d976e1e4e34, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc341aff9a577b0410f79960b, - limb1: 0x6da30054987da854f24d2d1a, - limb2: 0x1e9c9ef04ea32729, + limb0: 0xa480ec1badf73afa11127688, + limb1: 0x2c26e2aec4993505286de764, + limb2: 0x118cd4a9667bafbd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd40eed86f08729c88f528e3d, - limb1: 0x2a8e86427046407f1afbd966, - limb2: 0xc0498c5cbd499a2, + limb0: 0xd1009e9e2f0551593d539227, + limb1: 0x497cec387198986a6239da72, + limb2: 0x28ef2017e1ebd5c8, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8c31a9d276e86c7b45406c85, - limb1: 0xc21296c66d5b6c0409d450bb, - limb2: 0xff45883e3b85c38, + limb0: 0xebe5bc8fadab4c11d33df84b, + limb1: 0xdc5ae3d9a9a4ef784abad9e5, + limb2: 0x271838a630da6722, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb662b852c5d91ba070574bce, - limb1: 0x6c16527e551fc6c016cdc888, - limb2: 0x8b78e35947ca545, + limb0: 0x99add355853db63f083988f4, + limb1: 0x9ddd575c3c0d9aba51270a69, + limb2: 0x13106d976e1e4e34, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc341aff9a577b0410f79960b, - limb1: 0x6da30054987da854f24d2d1a, - limb2: 0x1e9c9ef04ea32729, + limb0: 0xa480ec1badf73afa11127688, + limb1: 0x2c26e2aec4993505286de764, + limb2: 0x118cd4a9667bafbd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8ed13e5e563e5580356af666, - limb1: 0xef791fd29ff27f4e1ab14194, - limb2: 0x1e65f103d81204a7, + limb0: 0x35f5f81a7c7ec49f8c3dc645, + limb1: 0xb90ca9592134132890a99d78, + limb2: 0x22bff1d276aa2bcf, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7448ac1a2587b41aca236ec1, - limb1: 0x4849b573e87094cb971e8301, - limb2: 0x28f00e130ec120db, + limb0: 0x97cd707dc776712bc926b929, + limb1: 0x64108dec3df660795a63cf1e, + limb2: 0x25ae1d0513365b49, limb3: 0x0 }, r1a0: u384 { - limb0: 0x92b81fdcfb73ee04eb179388, - limb1: 0x5f006bedb6b5fdcba5c2b0e, - limb2: 0x7250da56dd7c72, + limb0: 0x8e82d9ed898ac1359c937a19, + limb1: 0xfe0d70aa63e32b58b0f2b7a1, + limb2: 0x49aff99ff261860, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd26c9c6b2821683778f78638, - limb1: 0x5bb5d4d4afff7e88f590b297, - limb2: 0x1b751a6b293afecb, + limb0: 0xcc5fc19b00b32ba7e3981121, + limb1: 0x4f23dae4b2b4bba5f212fd27, + limb2: 0x227e43052bc9ad14, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbfde94b475080a25feb4ed36, - limb1: 0x9bf5c98856b13e762a19b8b5, - limb2: 0x92b5440236ceff9, + limb0: 0x7717608ae03725f04e261adf, + limb1: 0x108d9246a38bc0ef1cde972, + limb2: 0x21ad9bf0d0a915fc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7aebf579c85c4041dd7be562, - limb1: 0xd5a3d2c3265e0e9194506a36, - limb2: 0x2f1916ea33e4115e, + limb0: 0xd2bea690b21e93b68bf61af8, + limb1: 0x51edde55d3fe7570a0f31958, + limb2: 0x62c72bac3bc8d9a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x69d1d8c71fdb2ebbc4227a8f, - limb1: 0xc489e7c53347eb7034f4baa8, - limb2: 0x2edb199afa0a22f8, + limb0: 0xbabfaf4eec4abaea87ea2ca3, + limb1: 0xf6bf6a71c3495f9ae2028a34, + limb2: 0x2a24d295a8846bd9, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaeb17a7160933b71ba1f837c, - limb1: 0x487d78986614cb568e5ebe9b, - limb2: 0x1de69d82c1cbca7a, + limb0: 0xfb2f2bc763478694a15dfc2e, + limb1: 0x38d528885bba2e190aaa02f3, + limb2: 0x196d590b980b101, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8ed13e5e563e5580356af666, - limb1: 0xef791fd29ff27f4e1ab14194, - limb2: 0x1e65f103d81204a7, + limb0: 0x35f5f81a7c7ec49f8c3dc645, + limb1: 0xb90ca9592134132890a99d78, + limb2: 0x22bff1d276aa2bcf, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7448ac1a2587b41aca236ec1, - limb1: 0x4849b573e87094cb971e8301, - limb2: 0x28f00e130ec120db, + limb0: 0x97cd707dc776712bc926b929, + limb1: 0x64108dec3df660795a63cf1e, + limb2: 0x25ae1d0513365b49, limb3: 0x0 }, r1a0: u384 { - limb0: 0x92b81fdcfb73ee04eb179388, - limb1: 0x5f006bedb6b5fdcba5c2b0e, - limb2: 0x7250da56dd7c72, + limb0: 0x8e82d9ed898ac1359c937a19, + limb1: 0xfe0d70aa63e32b58b0f2b7a1, + limb2: 0x49aff99ff261860, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd26c9c6b2821683778f78638, - limb1: 0x5bb5d4d4afff7e88f590b297, - limb2: 0x1b751a6b293afecb, + limb0: 0xcc5fc19b00b32ba7e3981121, + limb1: 0x4f23dae4b2b4bba5f212fd27, + limb2: 0x227e43052bc9ad14, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xbfde94b475080a25feb4ed36, - limb1: 0x9bf5c98856b13e762a19b8b5, - limb2: 0x92b5440236ceff9, + limb0: 0x7717608ae03725f04e261adf, + limb1: 0x108d9246a38bc0ef1cde972, + limb2: 0x21ad9bf0d0a915fc, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7aebf579c85c4041dd7be562, - limb1: 0xd5a3d2c3265e0e9194506a36, - limb2: 0x2f1916ea33e4115e, + limb0: 0xd2bea690b21e93b68bf61af8, + limb1: 0x51edde55d3fe7570a0f31958, + limb2: 0x62c72bac3bc8d9a, limb3: 0x0 }, r1a0: u384 { - limb0: 0x69d1d8c71fdb2ebbc4227a8f, - limb1: 0xc489e7c53347eb7034f4baa8, - limb2: 0x2edb199afa0a22f8, + limb0: 0xbabfaf4eec4abaea87ea2ca3, + limb1: 0xf6bf6a71c3495f9ae2028a34, + limb2: 0x2a24d295a8846bd9, limb3: 0x0 }, r1a1: u384 { - limb0: 0xaeb17a7160933b71ba1f837c, - limb1: 0x487d78986614cb568e5ebe9b, - limb2: 0x1de69d82c1cbca7a, + limb0: 0xfb2f2bc763478694a15dfc2e, + limb1: 0x38d528885bba2e190aaa02f3, + limb2: 0x196d590b980b101, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x297e579dea7b8bc47c025897, - limb1: 0x401184b22c54fce06354bc8c, - limb2: 0x16590ddeb77c338b, + limb0: 0xf2ef55c3e7a2ab3b3e68a8fa, + limb1: 0x756161434cb73472867da144, + limb2: 0x21ed770496313905, limb3: 0x0 }, r0a1: u384 { - limb0: 0x57838b384e0e9e4ffbf7178a, - limb1: 0xf36eb0acdae0b8eef9a83ff5, - limb2: 0xc6c7f60a966eae7, + limb0: 0x117cd6b7af4ca6c20b00cce8, + limb1: 0x8a9aa91334262d879dbafaf4, + limb2: 0xaea5f6e3bd6c53d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5a2aea2267436c0c7954379, - limb1: 0x74a0c4fb0d4453e7b7d22fc0, - limb2: 0x2d1bcc48a0df438c, + limb0: 0x8b09f725efa2c3eca9809fd5, + limb1: 0x562365c413795f69001812cf, + limb2: 0x25be376f5f827022, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4d3ca5f5774cb8047f15e15a, - limb1: 0x8a3b3e1c71559a592568bc44, - limb2: 0x158f0ae5972e1779, + limb0: 0x596e9bd43f459d872a37ac02, + limb1: 0xabf90c55eae7c934b27ee42f, + limb2: 0x1b3cd0eff89e7679, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x297e579dea7b8bc47c025897, - limb1: 0x401184b22c54fce06354bc8c, - limb2: 0x16590ddeb77c338b, + limb0: 0xf2ef55c3e7a2ab3b3e68a8fa, + limb1: 0x756161434cb73472867da144, + limb2: 0x21ed770496313905, limb3: 0x0 }, r0a1: u384 { - limb0: 0x57838b384e0e9e4ffbf7178a, - limb1: 0xf36eb0acdae0b8eef9a83ff5, - limb2: 0xc6c7f60a966eae7, + limb0: 0x117cd6b7af4ca6c20b00cce8, + limb1: 0x8a9aa91334262d879dbafaf4, + limb2: 0xaea5f6e3bd6c53d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5a2aea2267436c0c7954379, - limb1: 0x74a0c4fb0d4453e7b7d22fc0, - limb2: 0x2d1bcc48a0df438c, + limb0: 0x8b09f725efa2c3eca9809fd5, + limb1: 0x562365c413795f69001812cf, + limb2: 0x25be376f5f827022, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4d3ca5f5774cb8047f15e15a, - limb1: 0x8a3b3e1c71559a592568bc44, - limb2: 0x158f0ae5972e1779, + limb0: 0x596e9bd43f459d872a37ac02, + limb1: 0xabf90c55eae7c934b27ee42f, + limb2: 0x1b3cd0eff89e7679, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd6d3a2cca456d5c9699d4554, - limb1: 0x13bb1bf7f860a2e3a5bbca3f, - limb2: 0x224f24bdd6544029, + limb0: 0x3fce6b09e2ca524bff0eeac4, + limb1: 0x93af651ffc3b9b1b976e7be0, + limb2: 0x2ca1b493b4003156, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2308f6b3c6a5abb4373ad092, - limb1: 0xecc119b683a874a016d75663, - limb2: 0xc09aba5403c5e86, + limb0: 0x947d2094b77c80f4c91c220b, + limb1: 0x74abbcfc6c38d8cd6ad5a41, + limb2: 0x261b69a022463e6a, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf4d21b8f79d87d6afc1c757d, - limb1: 0x1c6ed41dce980e34da7c02f4, - limb2: 0x2221b2b4eaba09c6, + limb0: 0x1f3368f88df37e70b2188573, + limb1: 0xd702a9fc87088613fbfe416c, + limb2: 0x150f72dd0211494e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7a1e2f81a12605cfd8781cc3, - limb1: 0x9b329e5c173ccda72ea1ad4e, - limb2: 0x264f9a9372ec5cd, + limb0: 0xb94a04586bb960f511813238, + limb1: 0x4b3f1692e2871971d49983e0, + limb2: 0x193dd0d29af18f49, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd6d3a2cca456d5c9699d4554, - limb1: 0x13bb1bf7f860a2e3a5bbca3f, - limb2: 0x224f24bdd6544029, + limb0: 0x3fce6b09e2ca524bff0eeac4, + limb1: 0x93af651ffc3b9b1b976e7be0, + limb2: 0x2ca1b493b4003156, limb3: 0x0 }, r0a1: u384 { - limb0: 0x2308f6b3c6a5abb4373ad092, - limb1: 0xecc119b683a874a016d75663, - limb2: 0xc09aba5403c5e86, + limb0: 0x947d2094b77c80f4c91c220b, + limb1: 0x74abbcfc6c38d8cd6ad5a41, + limb2: 0x261b69a022463e6a, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf4d21b8f79d87d6afc1c757d, - limb1: 0x1c6ed41dce980e34da7c02f4, - limb2: 0x2221b2b4eaba09c6, + limb0: 0x1f3368f88df37e70b2188573, + limb1: 0xd702a9fc87088613fbfe416c, + limb2: 0x150f72dd0211494e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7a1e2f81a12605cfd8781cc3, - limb1: 0x9b329e5c173ccda72ea1ad4e, - limb2: 0x264f9a9372ec5cd, + limb0: 0xb94a04586bb960f511813238, + limb1: 0x4b3f1692e2871971d49983e0, + limb2: 0x193dd0d29af18f49, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3a35e0f7cf50ea04d2fa77ac, - limb1: 0xf6036b89a373dccf76a539f6, - limb2: 0x2063934a6c6635bb, + limb0: 0xdb739b2dd158243cae410f7c, + limb1: 0x413a63cfb2c9cbf67f24e450, + limb2: 0x14b3ea4677ddef2e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbc747770c60fc18cf01ba008, - limb1: 0x8cca44e06622638c92cf7c3d, - limb2: 0x2a893a24fdd3206, + limb0: 0x372718362703e38f19229e44, + limb1: 0x727a5cc770c484d7688bcce9, + limb2: 0x273efac3992ae47f, limb3: 0x0 }, r1a0: u384 { - limb0: 0x21da177229c6f1a27b12f4c4, - limb1: 0x9e21399b9986417800ad09df, - limb2: 0x1f9c3ca126c52c4e, + limb0: 0x9d4fd01fd291f3f7a1db05c6, + limb1: 0x7f07573d3797ea104b0ee399, + limb2: 0x994cf4ad17252fe, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7166c5845b4b9ca2ea13b062, - limb1: 0xa31d9126249c92d41630082a, - limb2: 0x2d6a86275e3f91f7, + limb0: 0x3e9ce6999dee2ae2006f2769, + limb1: 0xec7f94297626f10a29a7c86, + limb2: 0x915996bb045ae1e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3a35e0f7cf50ea04d2fa77ac, - limb1: 0xf6036b89a373dccf76a539f6, - limb2: 0x2063934a6c6635bb, + limb0: 0xdb739b2dd158243cae410f7c, + limb1: 0x413a63cfb2c9cbf67f24e450, + limb2: 0x14b3ea4677ddef2e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbc747770c60fc18cf01ba008, - limb1: 0x8cca44e06622638c92cf7c3d, - limb2: 0x2a893a24fdd3206, + limb0: 0x372718362703e38f19229e44, + limb1: 0x727a5cc770c484d7688bcce9, + limb2: 0x273efac3992ae47f, limb3: 0x0 }, r1a0: u384 { - limb0: 0x21da177229c6f1a27b12f4c4, - limb1: 0x9e21399b9986417800ad09df, - limb2: 0x1f9c3ca126c52c4e, + limb0: 0x9d4fd01fd291f3f7a1db05c6, + limb1: 0x7f07573d3797ea104b0ee399, + limb2: 0x994cf4ad17252fe, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7166c5845b4b9ca2ea13b062, - limb1: 0xa31d9126249c92d41630082a, - limb2: 0x2d6a86275e3f91f7, + limb0: 0x3e9ce6999dee2ae2006f2769, + limb1: 0xec7f94297626f10a29a7c86, + limb2: 0x915996bb045ae1e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x608660fdd8ec26144aa19d53, - limb1: 0xa39563ae07dbb010bed57be3, - limb2: 0x2dd7805c898682d2, + limb0: 0x9b538b34a9c40fe45f9a4e82, + limb1: 0x226b7b64a3080c5d2a5d505f, + limb2: 0x1a227e370cf929ec, limb3: 0x0 }, r0a1: u384 { - limb0: 0x403011dabad81da350296025, - limb1: 0xc082b885a728aac3bef24e03, - limb2: 0x159cb1addc3924f7, + limb0: 0xfefcfdffc1a7ea567e1ced7, + limb1: 0x4357c71f7d2368d2571ea106, + limb2: 0x9c7e3d1b33e1de1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3ea8d899d242d6b7b26aeb49, - limb1: 0xba64328438ca05d0797a9299, - limb2: 0x2a438285a8719672, + limb0: 0xfc75b05671d3754c2d380c6b, + limb1: 0x1dbbdf501314ba97a18b41bc, + limb2: 0x11731573ff89df69, limb3: 0x0 }, r1a1: u384 { - limb0: 0xada9a71ed37784f58b9b326, - limb1: 0xcbb5d80d2677c3d6274e43ed, - limb2: 0xb8e331155d1f794, + limb0: 0x29240244e7bdc0ac6ef2b48e, + limb1: 0xb0929b93b4faccaae2a2dff8, + limb2: 0x5257f92e6098191, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x608660fdd8ec26144aa19d53, - limb1: 0xa39563ae07dbb010bed57be3, - limb2: 0x2dd7805c898682d2, + limb0: 0x9b538b34a9c40fe45f9a4e82, + limb1: 0x226b7b64a3080c5d2a5d505f, + limb2: 0x1a227e370cf929ec, limb3: 0x0 }, r0a1: u384 { - limb0: 0x403011dabad81da350296025, - limb1: 0xc082b885a728aac3bef24e03, - limb2: 0x159cb1addc3924f7, + limb0: 0xfefcfdffc1a7ea567e1ced7, + limb1: 0x4357c71f7d2368d2571ea106, + limb2: 0x9c7e3d1b33e1de1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3ea8d899d242d6b7b26aeb49, - limb1: 0xba64328438ca05d0797a9299, - limb2: 0x2a438285a8719672, + limb0: 0xfc75b05671d3754c2d380c6b, + limb1: 0x1dbbdf501314ba97a18b41bc, + limb2: 0x11731573ff89df69, limb3: 0x0 }, r1a1: u384 { - limb0: 0xada9a71ed37784f58b9b326, - limb1: 0xcbb5d80d2677c3d6274e43ed, - limb2: 0xb8e331155d1f794, + limb0: 0x29240244e7bdc0ac6ef2b48e, + limb1: 0xb0929b93b4faccaae2a2dff8, + limb2: 0x5257f92e6098191, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf3a16886780a0f83e86d6a64, - limb1: 0x90be1dbc3e68c3b0b948ed88, - limb2: 0x264e2c2079d4681d, + limb0: 0x788800180d7e841e21c3d7d0, + limb1: 0x1da10a8c05db33697713be7d, + limb2: 0x247591fc38788647, limb3: 0x0 }, r0a1: u384 { - limb0: 0xabeccfd986b0b4df048aa1c9, - limb1: 0x7150c946296ca8f5f578c69d, - limb2: 0x239241918f17d108, + limb0: 0xfb75fd59f94b3f7c78af1beb, + limb1: 0xd4d22ec81cdbf353aa42bacd, + limb2: 0x2e7eebd0cde27728, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf32ab5cce18d7abaebe85920, - limb1: 0x888808d69b1502510525413b, - limb2: 0x17723eb19014b341, + limb0: 0x16d5db1eb0818e159dfc805c, + limb1: 0x97b4adb6dac1a22c0dcc84ad, + limb2: 0x19594c238a0f5afa, limb3: 0x0 }, r1a1: u384 { - limb0: 0xca519fb86ed5afb13c555c31, - limb1: 0xe4bd02382e392bcda1d72b1d, - limb2: 0x2e6e75a11e4d1457, + limb0: 0x7cdbca4cf71e4a9a1c5f9d61, + limb1: 0xe24b5b170c6ca2377e08dcaa, + limb2: 0xd84480c8f4ef763, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7fbdd894be1656c016aee99a, - limb1: 0xf10e00562751fb79826305a6, - limb2: 0x2f531d5cbe42d825, + limb0: 0x7dbce83d1e427852978d46bf, + limb1: 0x9e4ff0c30b6ee43e4ba0b527, + limb2: 0x248d73077bc888b3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xea14c2b5579947437b9f8adf, - limb1: 0xdb1de364d16a80b2fc736ae5, - limb2: 0x24e5768e5e0fc4b5, + limb0: 0x9f8ded9d445ea53124b02ed5, + limb1: 0x55091011f98c5760992b6999, + limb2: 0x203db8c1baa3790c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe54fe8caef28b525168b00f3, - limb1: 0xa6fa36e23c1f5161fade17ff, - limb2: 0x5660478f6d152fa, + limb0: 0x37635287385d3f35caed0c73, + limb1: 0xa9f8923fe047e0c3fc13fc99, + limb2: 0x113948f9cac92cf, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8a4bbd19672849ea2ed1cdd8, - limb1: 0xd4f5dcbe03054f4a278d890a, - limb2: 0x29199d2649ec03fd, + limb0: 0x6048d5b0b69dd5cff8d88bf1, + limb1: 0xa1aaa4fff591e8a4a5b6eb38, + limb2: 0x21bf5474795b5e91, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf3a16886780a0f83e86d6a64, - limb1: 0x90be1dbc3e68c3b0b948ed88, - limb2: 0x264e2c2079d4681d, + limb0: 0x788800180d7e841e21c3d7d0, + limb1: 0x1da10a8c05db33697713be7d, + limb2: 0x247591fc38788647, limb3: 0x0 }, r0a1: u384 { - limb0: 0xabeccfd986b0b4df048aa1c9, - limb1: 0x7150c946296ca8f5f578c69d, - limb2: 0x239241918f17d108, + limb0: 0xfb75fd59f94b3f7c78af1beb, + limb1: 0xd4d22ec81cdbf353aa42bacd, + limb2: 0x2e7eebd0cde27728, limb3: 0x0 }, r1a0: u384 { - limb0: 0xf32ab5cce18d7abaebe85920, - limb1: 0x888808d69b1502510525413b, - limb2: 0x17723eb19014b341, + limb0: 0x16d5db1eb0818e159dfc805c, + limb1: 0x97b4adb6dac1a22c0dcc84ad, + limb2: 0x19594c238a0f5afa, limb3: 0x0 }, r1a1: u384 { - limb0: 0xca519fb86ed5afb13c555c31, - limb1: 0xe4bd02382e392bcda1d72b1d, - limb2: 0x2e6e75a11e4d1457, + limb0: 0x7cdbca4cf71e4a9a1c5f9d61, + limb1: 0xe24b5b170c6ca2377e08dcaa, + limb2: 0xd84480c8f4ef763, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7fbdd894be1656c016aee99a, - limb1: 0xf10e00562751fb79826305a6, - limb2: 0x2f531d5cbe42d825, + limb0: 0x7dbce83d1e427852978d46bf, + limb1: 0x9e4ff0c30b6ee43e4ba0b527, + limb2: 0x248d73077bc888b3, limb3: 0x0 }, r0a1: u384 { - limb0: 0xea14c2b5579947437b9f8adf, - limb1: 0xdb1de364d16a80b2fc736ae5, - limb2: 0x24e5768e5e0fc4b5, + limb0: 0x9f8ded9d445ea53124b02ed5, + limb1: 0x55091011f98c5760992b6999, + limb2: 0x203db8c1baa3790c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe54fe8caef28b525168b00f3, - limb1: 0xa6fa36e23c1f5161fade17ff, - limb2: 0x5660478f6d152fa, + limb0: 0x37635287385d3f35caed0c73, + limb1: 0xa9f8923fe047e0c3fc13fc99, + limb2: 0x113948f9cac92cf, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8a4bbd19672849ea2ed1cdd8, - limb1: 0xd4f5dcbe03054f4a278d890a, - limb2: 0x29199d2649ec03fd, + limb0: 0x6048d5b0b69dd5cff8d88bf1, + limb1: 0xa1aaa4fff591e8a4a5b6eb38, + limb2: 0x21bf5474795b5e91, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7f33a4775819b603c778ab3d, - limb1: 0x9f708a839dfe8353b42e1e9, - limb2: 0xbc4249a04be8de0, + limb0: 0x85f4347aef153eb51e5b79a0, + limb1: 0x3918eb298bd2421b56746df6, + limb2: 0x13158683d0c090e8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xda5275aa3623992e292673db, - limb1: 0x80d91e9029a6d67b4ba3786, - limb2: 0x2331f0127168287c, + limb0: 0xa09477c306698215cde2c960, + limb1: 0x22777ba1866c1ef9be4f76de, + limb2: 0xc43f8cb6c70b1f7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ac728c068d06c54bf44b283, - limb1: 0xac1035ad352df0d1368ab7ac, - limb2: 0x2ef83818cf4cd7af, + limb0: 0x681a9cbce7783357feae4359, + limb1: 0x2782cf3183f2f2ec51674f1f, + limb2: 0x28e7e1094c147df3, limb3: 0x0 }, r1a1: u384 { - limb0: 0x802adb276c3c6e76fb1a7975, - limb1: 0xca845c017b1da4b5a5e14fc4, - limb2: 0x48916102987b9cb, + limb0: 0x5317355bc83adb4d9b686e9d, + limb1: 0x7c2ab43615d76787568e48e3, + limb2: 0xc234c691a7a1796, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7f33a4775819b603c778ab3d, - limb1: 0x9f708a839dfe8353b42e1e9, - limb2: 0xbc4249a04be8de0, + limb0: 0x85f4347aef153eb51e5b79a0, + limb1: 0x3918eb298bd2421b56746df6, + limb2: 0x13158683d0c090e8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xda5275aa3623992e292673db, - limb1: 0x80d91e9029a6d67b4ba3786, - limb2: 0x2331f0127168287c, + limb0: 0xa09477c306698215cde2c960, + limb1: 0x22777ba1866c1ef9be4f76de, + limb2: 0xc43f8cb6c70b1f7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x5ac728c068d06c54bf44b283, - limb1: 0xac1035ad352df0d1368ab7ac, - limb2: 0x2ef83818cf4cd7af, + limb0: 0x681a9cbce7783357feae4359, + limb1: 0x2782cf3183f2f2ec51674f1f, + limb2: 0x28e7e1094c147df3, limb3: 0x0 }, r1a1: u384 { - limb0: 0x802adb276c3c6e76fb1a7975, - limb1: 0xca845c017b1da4b5a5e14fc4, - limb2: 0x48916102987b9cb, + limb0: 0x5317355bc83adb4d9b686e9d, + limb1: 0x7c2ab43615d76787568e48e3, + limb2: 0xc234c691a7a1796, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x728f2f2ed0e719a690d1c724, - limb1: 0x55f7ea3a8ec40438804c4176, - limb2: 0x870a8eed8635530, + limb0: 0x517d5a713823726d6deca48c, + limb1: 0xc3fbf6f6afca8caa5c289551, + limb2: 0x1611a3b7e317d9ac, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a281502a90497ad44ebda85, - limb1: 0x41651c20cfb14e530b5f7950, - limb2: 0x1ea9fcae7b98ac4d, + limb0: 0xd7d54c155201d22b729af8c3, + limb1: 0x77e8af9875692a553cd7fb73, + limb2: 0x20ccbc95e463f979, limb3: 0x0 }, r1a0: u384 { - limb0: 0x721bd7793de7b4fc037c423b, - limb1: 0x7f50b321a61a32deb953d32, - limb2: 0x199a3a1ef76f32a6, + limb0: 0x189ccee9bd5dc6732d1c00b8, + limb1: 0x1c82036ec22c94137144cb6b, + limb2: 0x1ac88f60150cc9ea, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc948e26ff1403d3e7f8388ad, - limb1: 0x64a116e684d59c4eab172fd6, - limb2: 0x2c641ab62ef7c74f, + limb0: 0xd05790d5d1890e2f131dd4d0, + limb1: 0xc7783b126304a15573562a5b, + limb2: 0xa0197156b956945, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x18b682b7bc435ac9004c25ca, - limb1: 0x380cbea901ccb45562d8896b, - limb2: 0x1a5252a4a00039e1, + limb0: 0xc5c54c8d82ae0f2ca2564535, + limb1: 0x69c4be89ff825b0b0e2fb34b, + limb2: 0x251801f4f4d3450f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x3f33c6dfe6ff9518ca253b9c, - limb1: 0xd0d88d377239ae5e96c0b7f4, - limb2: 0x2f8eae96af76657c, + limb0: 0x2996f0b7d069826e7c9e6880, + limb1: 0xb948f45c332c751168ad0557, + limb2: 0x2bf9093c6f78002c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb60f38a6e5fe5ab425248c4a, - limb1: 0x9f030bd089c422e33495c023, - limb2: 0x25b18fa6154b9335, + limb0: 0xd2ebdb2e91659a8f7280dd18, + limb1: 0x903ca33e76143ac711247899, + limb2: 0x12781141f1fa54f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfe1faaa4a48635a68d5f980, - limb1: 0xb3bdc4bb9aa06e6ac7ae5d9f, - limb2: 0x11d0061884f32cc0, + limb0: 0x7da34384953f663296ddf9d8, + limb1: 0xa6284c5d6454f8193f69b260, + limb2: 0x16a6e7813a5c376a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x728f2f2ed0e719a690d1c724, - limb1: 0x55f7ea3a8ec40438804c4176, - limb2: 0x870a8eed8635530, + limb0: 0x517d5a713823726d6deca48c, + limb1: 0xc3fbf6f6afca8caa5c289551, + limb2: 0x1611a3b7e317d9ac, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a281502a90497ad44ebda85, - limb1: 0x41651c20cfb14e530b5f7950, - limb2: 0x1ea9fcae7b98ac4d, + limb0: 0xd7d54c155201d22b729af8c3, + limb1: 0x77e8af9875692a553cd7fb73, + limb2: 0x20ccbc95e463f979, limb3: 0x0 }, r1a0: u384 { - limb0: 0x721bd7793de7b4fc037c423b, - limb1: 0x7f50b321a61a32deb953d32, - limb2: 0x199a3a1ef76f32a6, + limb0: 0x189ccee9bd5dc6732d1c00b8, + limb1: 0x1c82036ec22c94137144cb6b, + limb2: 0x1ac88f60150cc9ea, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc948e26ff1403d3e7f8388ad, - limb1: 0x64a116e684d59c4eab172fd6, - limb2: 0x2c641ab62ef7c74f, + limb0: 0xd05790d5d1890e2f131dd4d0, + limb1: 0xc7783b126304a15573562a5b, + limb2: 0xa0197156b956945, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x18b682b7bc435ac9004c25ca, - limb1: 0x380cbea901ccb45562d8896b, - limb2: 0x1a5252a4a00039e1, + limb0: 0xc5c54c8d82ae0f2ca2564535, + limb1: 0x69c4be89ff825b0b0e2fb34b, + limb2: 0x251801f4f4d3450f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x3f33c6dfe6ff9518ca253b9c, - limb1: 0xd0d88d377239ae5e96c0b7f4, - limb2: 0x2f8eae96af76657c, + limb0: 0x2996f0b7d069826e7c9e6880, + limb1: 0xb948f45c332c751168ad0557, + limb2: 0x2bf9093c6f78002c, limb3: 0x0 }, r1a0: u384 { - limb0: 0xb60f38a6e5fe5ab425248c4a, - limb1: 0x9f030bd089c422e33495c023, - limb2: 0x25b18fa6154b9335, + limb0: 0xd2ebdb2e91659a8f7280dd18, + limb1: 0x903ca33e76143ac711247899, + limb2: 0x12781141f1fa54f4, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfe1faaa4a48635a68d5f980, - limb1: 0xb3bdc4bb9aa06e6ac7ae5d9f, - limb2: 0x11d0061884f32cc0, + limb0: 0x7da34384953f663296ddf9d8, + limb1: 0xa6284c5d6454f8193f69b260, + limb2: 0x16a6e7813a5c376a, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8d6fe7abd3d7dfddfbbeabd8, - limb1: 0xc09b51aad85a2c8f43c28782, - limb2: 0x1345eb0133b1f1ef, + limb0: 0xf984b297951a67f0caef5718, + limb1: 0x557e4fb901e9725b38371d40, + limb2: 0xfbffe8728da135f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x89eae7a6db6214a2075681cd, - limb1: 0x9caab35706c2eacdb7c05b85, - limb2: 0x114041539235fd66, + limb0: 0x51a6a16bc5e2b48abffed608, + limb1: 0x9944966f54a785c9db0c06ac, + limb2: 0x2d5574066dd099ed, limb3: 0x0 }, r1a0: u384 { - limb0: 0x30b0a9ab03a9dda5b24f75cd, - limb1: 0x2cb9bc7e0f871a9d9bdfc54f, - limb2: 0x27c4f02910545b78, + limb0: 0xaedfdfe1766bf6a79244d9bc, + limb1: 0x9478d065b41bbafe589d9fe5, + limb2: 0xf18bd4cd414ed8a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xef34f946a1fcb8138e821121, - limb1: 0x18585b16dc461746fcf12eb8, - limb2: 0x10d4f7f8d5f1bce0, + limb0: 0xba0eacf5aa687cd2a5510ac6, + limb1: 0x6d6c9cfccf4c173b1eb839c9, + limb2: 0x9466605202791ba, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8d6fe7abd3d7dfddfbbeabd8, - limb1: 0xc09b51aad85a2c8f43c28782, - limb2: 0x1345eb0133b1f1ef, + limb0: 0xf984b297951a67f0caef5718, + limb1: 0x557e4fb901e9725b38371d40, + limb2: 0xfbffe8728da135f, limb3: 0x0 }, r0a1: u384 { - limb0: 0x89eae7a6db6214a2075681cd, - limb1: 0x9caab35706c2eacdb7c05b85, - limb2: 0x114041539235fd66, + limb0: 0x51a6a16bc5e2b48abffed608, + limb1: 0x9944966f54a785c9db0c06ac, + limb2: 0x2d5574066dd099ed, limb3: 0x0 }, r1a0: u384 { - limb0: 0x30b0a9ab03a9dda5b24f75cd, - limb1: 0x2cb9bc7e0f871a9d9bdfc54f, - limb2: 0x27c4f02910545b78, + limb0: 0xaedfdfe1766bf6a79244d9bc, + limb1: 0x9478d065b41bbafe589d9fe5, + limb2: 0xf18bd4cd414ed8a, limb3: 0x0 }, r1a1: u384 { - limb0: 0xef34f946a1fcb8138e821121, - limb1: 0x18585b16dc461746fcf12eb8, - limb2: 0x10d4f7f8d5f1bce0, + limb0: 0xba0eacf5aa687cd2a5510ac6, + limb1: 0x6d6c9cfccf4c173b1eb839c9, + limb2: 0x9466605202791ba, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2ca7ec218d1e82f7bc269459, - limb1: 0x22e6d2b8d34da23d5fbcb102, - limb2: 0x4e3f01db6c84f53, + limb0: 0x7c01dbde89ebfc5c28cff17e, + limb1: 0x571be6f50808970f261ef221, + limb2: 0x9d3767f1b588381, limb3: 0x0 }, r0a1: u384 { - limb0: 0x77ac13ea9091f5865d11499f, - limb1: 0x269f35de43e5bf2f577997db, - limb2: 0xbdea60113dd4c65, + limb0: 0xd8443431982515b5d9967ec4, + limb1: 0xa41c1ed9d7d6aa192a9bd7d0, + limb2: 0x2b7d4598c93923e0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x63c0a9eb62ab554102adc93b, - limb1: 0x8a35eaaf7ffd85d056860967, - limb2: 0x2b342aa8bbd992cf, + limb0: 0x7797fd008436363caadf446b, + limb1: 0x487e3efc987d42b18b216344, + limb2: 0x14edff0762399039, limb3: 0x0 }, r1a1: u384 { - limb0: 0x38c0b8469966a7f923e9332b, - limb1: 0xf938f5afb64b1602b7dac1ab, - limb2: 0x1ac165d40a011720, + limb0: 0x8ccc6dd20a5d052858e75495, + limb1: 0x23614b9d08a9d2c9d0f73d59, + limb2: 0x2b0d2afe3930bdff, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2ca7ec218d1e82f7bc269459, - limb1: 0x22e6d2b8d34da23d5fbcb102, - limb2: 0x4e3f01db6c84f53, + limb0: 0x7c01dbde89ebfc5c28cff17e, + limb1: 0x571be6f50808970f261ef221, + limb2: 0x9d3767f1b588381, limb3: 0x0 }, r0a1: u384 { - limb0: 0x77ac13ea9091f5865d11499f, - limb1: 0x269f35de43e5bf2f577997db, - limb2: 0xbdea60113dd4c65, + limb0: 0xd8443431982515b5d9967ec4, + limb1: 0xa41c1ed9d7d6aa192a9bd7d0, + limb2: 0x2b7d4598c93923e0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x63c0a9eb62ab554102adc93b, - limb1: 0x8a35eaaf7ffd85d056860967, - limb2: 0x2b342aa8bbd992cf, + limb0: 0x7797fd008436363caadf446b, + limb1: 0x487e3efc987d42b18b216344, + limb2: 0x14edff0762399039, limb3: 0x0 }, r1a1: u384 { - limb0: 0x38c0b8469966a7f923e9332b, - limb1: 0xf938f5afb64b1602b7dac1ab, - limb2: 0x1ac165d40a011720, + limb0: 0x8ccc6dd20a5d052858e75495, + limb1: 0x23614b9d08a9d2c9d0f73d59, + limb2: 0x2b0d2afe3930bdff, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa48bdbb608894a6b3875f1e2, - limb1: 0x9da4127dd65a306bc637f907, - limb2: 0x24bca32ee86f5f64, + limb0: 0xe954303bceaa3af4b01bab7e, + limb1: 0x3dfd834907e9352328961802, + limb2: 0x462ad3525fc8191, limb3: 0x0 }, r0a1: u384 { - limb0: 0x56416e26781c0b90b9d64f06, - limb1: 0x5de71c5063c558e0cfbdef73, - limb2: 0x1448fad036758d69, + limb0: 0x40fba064069382294d08bf6c, + limb1: 0xd37c77ff724f7cbab7d2b992, + limb2: 0x32290a67e4ff85c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6e027ea10f65c9791cd5ea4c, - limb1: 0x2150f41e7a64258110726bf1, - limb2: 0x1abef25967d9e979, + limb0: 0xbe19fca8aa909655ed8c0a6b, + limb1: 0xa15e5cfe442481e1c46c9a82, + limb2: 0x1cd0909b13cfcd19, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfd540bbfacf43f362809ae56, - limb1: 0xba1959ba6bf091c65af340e, - limb2: 0x1855237d4b08e02f, + limb0: 0x3c88432df412f82dbee993fd, + limb1: 0x7bce2ecc80c5189b60a28673, + limb2: 0x1eb25e75ed13eb0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xa48bdbb608894a6b3875f1e2, - limb1: 0x9da4127dd65a306bc637f907, - limb2: 0x24bca32ee86f5f64, + limb0: 0xe954303bceaa3af4b01bab7e, + limb1: 0x3dfd834907e9352328961802, + limb2: 0x462ad3525fc8191, limb3: 0x0 }, r0a1: u384 { - limb0: 0x56416e26781c0b90b9d64f06, - limb1: 0x5de71c5063c558e0cfbdef73, - limb2: 0x1448fad036758d69, + limb0: 0x40fba064069382294d08bf6c, + limb1: 0xd37c77ff724f7cbab7d2b992, + limb2: 0x32290a67e4ff85c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x6e027ea10f65c9791cd5ea4c, - limb1: 0x2150f41e7a64258110726bf1, - limb2: 0x1abef25967d9e979, + limb0: 0xbe19fca8aa909655ed8c0a6b, + limb1: 0xa15e5cfe442481e1c46c9a82, + limb2: 0x1cd0909b13cfcd19, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfd540bbfacf43f362809ae56, - limb1: 0xba1959ba6bf091c65af340e, - limb2: 0x1855237d4b08e02f, + limb0: 0x3c88432df412f82dbee993fd, + limb1: 0x7bce2ecc80c5189b60a28673, + limb2: 0x1eb25e75ed13eb0e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x55b92cbe1f075670c77f7f4, - limb1: 0xfdeb8f58402d2b7f94fd02f1, - limb2: 0x19273f848329f7aa, + limb0: 0xcea2f6e5e8eaad5b538f01db, + limb1: 0x8dea65c050e15e9aa5437b62, + limb2: 0x1b5bd1a495e21758, limb3: 0x0 }, r0a1: u384 { - limb0: 0x94145998ae35832bf6c9e84, - limb1: 0xef15222985c782e574d32cd, - limb2: 0x28603d7b84b663b0, + limb0: 0xb4db62a53d9a398324405e68, + limb1: 0xad0f06b72f2565efe622da83, + limb2: 0x220cbd3274fc1b6b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1f13693636c64a73f0a92c8d, - limb1: 0xc020d298d8f7769c8f0f9b40, - limb2: 0x1d909664ccd0fbcd, + limb0: 0x1b064ea32634fd8409eae3, + limb1: 0x903faf351acead528396d033, + limb2: 0x1d920157a7d94e91, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1c3f5f88e86b24cf989ba92b, - limb1: 0xb60659c7f41cae642d125346, - limb2: 0x28020667a9634791, + limb0: 0xecab0aed5a803304688ddf26, + limb1: 0x2138ad9558f0e380424e1f44, + limb2: 0x5bd3cf13e418e35, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x34859273a1fe28ae62ddaf98, - limb1: 0x12f87535bf042947c111afab, - limb2: 0x2404ee720fef5276, + limb0: 0x39f24c705ebe39cff385568e, + limb1: 0x1613b37da28bdd8bd37da91, + limb2: 0x2f64a6c0d2693414, limb3: 0x0 }, r0a1: u384 { - limb0: 0x31310320d70acfcd9f5ac1ce, - limb1: 0xbc71d2d38283494922bd04b0, - limb2: 0xca4f4ed2a3ee63, + limb0: 0xd04dd009b166d107f6aabb01, + limb1: 0xd4d59fdd5e6c38eb996be2db, + limb2: 0x1a54a41d3891f1c7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1f006c2a0a9fb7ed271c7f77, - limb1: 0x7cc93ca9e398d31214d3d4d5, - limb2: 0xbefa4cab2046fcd, + limb0: 0x754134324146ac28d3ad7f6, + limb1: 0x874f7880ab195964556821dd, + limb2: 0xffb862f5266b7bf, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc231ada64386009f96034dae, - limb1: 0x19eeeb0097b2e68e4af8f66d, - limb2: 0x1ad10523c73a8948, + limb0: 0x7b3abc387132b620fb1b6043, + limb1: 0x65283a0ff274383519f4cd83, + limb2: 0x9bf8f972422f23b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x55b92cbe1f075670c77f7f4, - limb1: 0xfdeb8f58402d2b7f94fd02f1, - limb2: 0x19273f848329f7aa, + limb0: 0xcea2f6e5e8eaad5b538f01db, + limb1: 0x8dea65c050e15e9aa5437b62, + limb2: 0x1b5bd1a495e21758, limb3: 0x0 }, r0a1: u384 { - limb0: 0x94145998ae35832bf6c9e84, - limb1: 0xef15222985c782e574d32cd, - limb2: 0x28603d7b84b663b0, + limb0: 0xb4db62a53d9a398324405e68, + limb1: 0xad0f06b72f2565efe622da83, + limb2: 0x220cbd3274fc1b6b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1f13693636c64a73f0a92c8d, - limb1: 0xc020d298d8f7769c8f0f9b40, - limb2: 0x1d909664ccd0fbcd, + limb0: 0x1b064ea32634fd8409eae3, + limb1: 0x903faf351acead528396d033, + limb2: 0x1d920157a7d94e91, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1c3f5f88e86b24cf989ba92b, - limb1: 0xb60659c7f41cae642d125346, - limb2: 0x28020667a9634791, + limb0: 0xecab0aed5a803304688ddf26, + limb1: 0x2138ad9558f0e380424e1f44, + limb2: 0x5bd3cf13e418e35, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x34859273a1fe28ae62ddaf98, - limb1: 0x12f87535bf042947c111afab, - limb2: 0x2404ee720fef5276, + limb0: 0x39f24c705ebe39cff385568e, + limb1: 0x1613b37da28bdd8bd37da91, + limb2: 0x2f64a6c0d2693414, limb3: 0x0 }, r0a1: u384 { - limb0: 0x31310320d70acfcd9f5ac1ce, - limb1: 0xbc71d2d38283494922bd04b0, - limb2: 0xca4f4ed2a3ee63, + limb0: 0xd04dd009b166d107f6aabb01, + limb1: 0xd4d59fdd5e6c38eb996be2db, + limb2: 0x1a54a41d3891f1c7, limb3: 0x0 }, r1a0: u384 { - limb0: 0x1f006c2a0a9fb7ed271c7f77, - limb1: 0x7cc93ca9e398d31214d3d4d5, - limb2: 0xbefa4cab2046fcd, + limb0: 0x754134324146ac28d3ad7f6, + limb1: 0x874f7880ab195964556821dd, + limb2: 0xffb862f5266b7bf, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc231ada64386009f96034dae, - limb1: 0x19eeeb0097b2e68e4af8f66d, - limb2: 0x1ad10523c73a8948, + limb0: 0x7b3abc387132b620fb1b6043, + limb1: 0x65283a0ff274383519f4cd83, + limb2: 0x9bf8f972422f23b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xef77e3724dde96827e9af1b2, - limb1: 0xe9b94ce828cbdb67ccb70d9e, - limb2: 0xed22394a5da3760, + limb0: 0x92f678bdcc7f682a12265595, + limb1: 0xda500b7e97c338fadc6bd61c, + limb2: 0x2caa43d0f100b369, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb75b7716137b30bc279debe7, - limb1: 0x3a66a0807c481338696d4472, - limb2: 0x2470147ba7c1d05a, + limb0: 0xbd5d202713c44f4413fe2444, + limb1: 0xb49a6d7323a318cd90a4a032, + limb2: 0xe01c4a804a278e0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9114978492982b7c923325ba, - limb1: 0x4f094e994c9fdf3c55d15c59, - limb2: 0x1684a7950473ceb8, + limb0: 0x9bac892f52ede55868b695d6, + limb1: 0x8059e9df8d318625a0237da7, + limb2: 0xc8542cdc7c91844, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb501148c53a787950473dd81, - limb1: 0xf20ef621dbd452384f1923fe, - limb2: 0x880f2ad4865b44f, + limb0: 0x3747f2f113d21b511cbafa08, + limb1: 0xbd3261c29886eec727153274, + limb2: 0x201182ee97daab98, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xef77e3724dde96827e9af1b2, - limb1: 0xe9b94ce828cbdb67ccb70d9e, - limb2: 0xed22394a5da3760, + limb0: 0x92f678bdcc7f682a12265595, + limb1: 0xda500b7e97c338fadc6bd61c, + limb2: 0x2caa43d0f100b369, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb75b7716137b30bc279debe7, - limb1: 0x3a66a0807c481338696d4472, - limb2: 0x2470147ba7c1d05a, + limb0: 0xbd5d202713c44f4413fe2444, + limb1: 0xb49a6d7323a318cd90a4a032, + limb2: 0xe01c4a804a278e0, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9114978492982b7c923325ba, - limb1: 0x4f094e994c9fdf3c55d15c59, - limb2: 0x1684a7950473ceb8, + limb0: 0x9bac892f52ede55868b695d6, + limb1: 0x8059e9df8d318625a0237da7, + limb2: 0xc8542cdc7c91844, limb3: 0x0 }, r1a1: u384 { - limb0: 0xb501148c53a787950473dd81, - limb1: 0xf20ef621dbd452384f1923fe, - limb2: 0x880f2ad4865b44f, + limb0: 0x3747f2f113d21b511cbafa08, + limb1: 0xbd3261c29886eec727153274, + limb2: 0x201182ee97daab98, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb1750f7cc4b48ecbb149b71e, - limb1: 0xc3b6280dee4f7202ca1c8917, - limb2: 0x28feba1da5e63c21, + limb0: 0x1427ca2d95aec86b18523012, + limb1: 0x7092c66e1dbb7a7b2fb0a2e9, + limb2: 0xcd063254472f5b6, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcc8e3c2e62f3114e02cc3d1b, - limb1: 0xca78100b2194f5c53bf28eab, - limb2: 0x3ceebfa544ca75c, + limb0: 0xc1de693469798ff1020981cb, + limb1: 0x3e8b9ceb7a856a1c6cf37f19, + limb2: 0xeea9f172e14def1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3f96bac6c0d5cc38d0ac4de3, - limb1: 0xe172223e2a4711b1e7ab561e, - limb2: 0xcec2966e6cf5943, + limb0: 0xfb0b564b5ca3b8a4d808bb, + limb1: 0xd5352a51824ea9a9b8564e8c, + limb2: 0x26e12f4fe06b03f8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x94ca3c18db755b624184a1e9, - limb1: 0xfe021de60f97f68733a751b0, - limb2: 0x7a271ed6b09d954, + limb0: 0x33782b9b99491755eeb9ecde, + limb1: 0x5d56c27facc86e6079a96ee3, + limb2: 0x6c62fa20b6a9bc2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x43ce06ed55f922f009193f29, - limb1: 0xe5d3c1c7905961a8bbb295e3, - limb2: 0x1aad605a5d2393c2, + limb0: 0x7728fec38ff79e0fbdedce93, + limb1: 0xa75bde588cc4681ea24c1106, + limb2: 0x2ec38c5ec2d9e9db, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5a03c677235136bed75ea039, - limb1: 0x684b5696a458fc7ca4ed6704, - limb2: 0x288137abe5609775, + limb0: 0x6156e4100d33080911e028ac, + limb1: 0xaf1f11fe9384bb2afd259db0, + limb2: 0x1d694d6864ec5fde, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcd1e799e24894d81dc214cbd, - limb1: 0x9a0ed0f5430ce86bf140aa2b, - limb2: 0x61b906cdf7d035c, + limb0: 0x8cc1dbb31acc40047b7ad8fa, + limb1: 0xd702cf48e666e5cf85a6fc17, + limb2: 0x32fc274fe6aaaee, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2d6efe877529c40ab94b4b15, - limb1: 0xc0c3bd9e1ff8d8c7aeb0948d, - limb2: 0x10ac1d2b477ed913, + limb0: 0x50c09375dc0dcac4618df1, + limb1: 0x44aaf9a75a1cec0f97c7023f, + limb2: 0x231948c469b85c9b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb1750f7cc4b48ecbb149b71e, - limb1: 0xc3b6280dee4f7202ca1c8917, - limb2: 0x28feba1da5e63c21, + limb0: 0x1427ca2d95aec86b18523012, + limb1: 0x7092c66e1dbb7a7b2fb0a2e9, + limb2: 0xcd063254472f5b6, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcc8e3c2e62f3114e02cc3d1b, - limb1: 0xca78100b2194f5c53bf28eab, - limb2: 0x3ceebfa544ca75c, + limb0: 0xc1de693469798ff1020981cb, + limb1: 0x3e8b9ceb7a856a1c6cf37f19, + limb2: 0xeea9f172e14def1, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3f96bac6c0d5cc38d0ac4de3, - limb1: 0xe172223e2a4711b1e7ab561e, - limb2: 0xcec2966e6cf5943, + limb0: 0xfb0b564b5ca3b8a4d808bb, + limb1: 0xd5352a51824ea9a9b8564e8c, + limb2: 0x26e12f4fe06b03f8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x94ca3c18db755b624184a1e9, - limb1: 0xfe021de60f97f68733a751b0, - limb2: 0x7a271ed6b09d954, + limb0: 0x33782b9b99491755eeb9ecde, + limb1: 0x5d56c27facc86e6079a96ee3, + limb2: 0x6c62fa20b6a9bc2, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x43ce06ed55f922f009193f29, - limb1: 0xe5d3c1c7905961a8bbb295e3, - limb2: 0x1aad605a5d2393c2, + limb0: 0x7728fec38ff79e0fbdedce93, + limb1: 0xa75bde588cc4681ea24c1106, + limb2: 0x2ec38c5ec2d9e9db, limb3: 0x0 }, r0a1: u384 { - limb0: 0x5a03c677235136bed75ea039, - limb1: 0x684b5696a458fc7ca4ed6704, - limb2: 0x288137abe5609775, + limb0: 0x6156e4100d33080911e028ac, + limb1: 0xaf1f11fe9384bb2afd259db0, + limb2: 0x1d694d6864ec5fde, limb3: 0x0 }, r1a0: u384 { - limb0: 0xcd1e799e24894d81dc214cbd, - limb1: 0x9a0ed0f5430ce86bf140aa2b, - limb2: 0x61b906cdf7d035c, + limb0: 0x8cc1dbb31acc40047b7ad8fa, + limb1: 0xd702cf48e666e5cf85a6fc17, + limb2: 0x32fc274fe6aaaee, limb3: 0x0 }, r1a1: u384 { - limb0: 0x2d6efe877529c40ab94b4b15, - limb1: 0xc0c3bd9e1ff8d8c7aeb0948d, - limb2: 0x10ac1d2b477ed913, + limb0: 0x50c09375dc0dcac4618df1, + limb1: 0x44aaf9a75a1cec0f97c7023f, + limb2: 0x231948c469b85c9b, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf480feb8cadc72250616cdeb, - limb1: 0x359d6bf03f7f91972f60f02c, - limb2: 0x5dac1948b1f7cb0, + limb0: 0x59a3e447f4a294098822f7a3, + limb1: 0xe9432c009a5d4792160010b9, + limb2: 0x277199cd159930cb, limb3: 0x0 }, r0a1: u384 { - limb0: 0x595ce6cca80ff4c1c4a4270, - limb1: 0x6c11f99a7ad4d4762cc3e5ea, - limb2: 0xcb7a29c51aca283, + limb0: 0x8274cee173849fcc070d46c4, + limb1: 0x5e87f7398f36e740d373ef70, + limb2: 0x1d09e8162e72e182, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3134adf52b941d1e9b161141, - limb1: 0xf2d36db907ed502fca7b3891, - limb2: 0x19d43d68b5ba877e, + limb0: 0x80a7bc31d42e03249c460a85, + limb1: 0x1365a8f3345ffe1a46aa5a81, + limb2: 0x1563f3018de0cfd4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7c28c1f1806f0772fd89a7d5, - limb1: 0xc173b5bbfb084264f2c0c837, - limb2: 0x9f3f2179151d2d0, + limb0: 0xa3638f156cf99b84002b7deb, + limb1: 0x8e81084116d87ad6c16a29fe, + limb2: 0xda400f66dbdc964, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf480feb8cadc72250616cdeb, - limb1: 0x359d6bf03f7f91972f60f02c, - limb2: 0x5dac1948b1f7cb0, + limb0: 0x59a3e447f4a294098822f7a3, + limb1: 0xe9432c009a5d4792160010b9, + limb2: 0x277199cd159930cb, limb3: 0x0 }, r0a1: u384 { - limb0: 0x595ce6cca80ff4c1c4a4270, - limb1: 0x6c11f99a7ad4d4762cc3e5ea, - limb2: 0xcb7a29c51aca283, + limb0: 0x8274cee173849fcc070d46c4, + limb1: 0x5e87f7398f36e740d373ef70, + limb2: 0x1d09e8162e72e182, limb3: 0x0 }, r1a0: u384 { - limb0: 0x3134adf52b941d1e9b161141, - limb1: 0xf2d36db907ed502fca7b3891, - limb2: 0x19d43d68b5ba877e, + limb0: 0x80a7bc31d42e03249c460a85, + limb1: 0x1365a8f3345ffe1a46aa5a81, + limb2: 0x1563f3018de0cfd4, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7c28c1f1806f0772fd89a7d5, - limb1: 0xc173b5bbfb084264f2c0c837, - limb2: 0x9f3f2179151d2d0, + limb0: 0xa3638f156cf99b84002b7deb, + limb1: 0x8e81084116d87ad6c16a29fe, + limb2: 0xda400f66dbdc964, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb8873f87c59d1148bbf4e3f9, - limb1: 0xd226377bab2d4b75972fe5b8, - limb2: 0x1fd87ae4a853af49, + limb0: 0x799b5f2ac05a3c426259f8cd, + limb1: 0x5cf9df0ef96d992d54a3bf38, + limb2: 0x1728083e4bfb46ea, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf9da4ef5136ee2edeaebdb1, - limb1: 0x3c4ac0d81488070ee2a5a7c4, - limb2: 0xd24c00c9c03d508, + limb0: 0xb427ec1dc1361c52280daf2a, + limb1: 0x54da32cedfda574e1412f2f8, + limb2: 0x2d67d4254df9f407, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2b0b3f944bd341bb8319777a, - limb1: 0x6125dd9018cc08d18b1d738b, - limb2: 0xae26b93f7860deb, + limb0: 0xd8635a1e999474e836f22b49, + limb1: 0xdf8ce63e87a18ab190de7c45, + limb2: 0x2254df5a5e5e3c5, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfa8fbfdefa847372f5884d18, - limb1: 0x87cd876a642df37e6ee15485, - limb2: 0xc0f6973e628e5b4, + limb0: 0x29eebec2b59e839e22349983, + limb1: 0xf667eeacda1d349fae1184ff, + limb2: 0x2a875ff7b51d83fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xb8873f87c59d1148bbf4e3f9, - limb1: 0xd226377bab2d4b75972fe5b8, - limb2: 0x1fd87ae4a853af49, + limb0: 0x799b5f2ac05a3c426259f8cd, + limb1: 0x5cf9df0ef96d992d54a3bf38, + limb2: 0x1728083e4bfb46ea, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf9da4ef5136ee2edeaebdb1, - limb1: 0x3c4ac0d81488070ee2a5a7c4, - limb2: 0xd24c00c9c03d508, + limb0: 0xb427ec1dc1361c52280daf2a, + limb1: 0x54da32cedfda574e1412f2f8, + limb2: 0x2d67d4254df9f407, limb3: 0x0 }, r1a0: u384 { - limb0: 0x2b0b3f944bd341bb8319777a, - limb1: 0x6125dd9018cc08d18b1d738b, - limb2: 0xae26b93f7860deb, + limb0: 0xd8635a1e999474e836f22b49, + limb1: 0xdf8ce63e87a18ab190de7c45, + limb2: 0x2254df5a5e5e3c5, limb3: 0x0 }, r1a1: u384 { - limb0: 0xfa8fbfdefa847372f5884d18, - limb1: 0x87cd876a642df37e6ee15485, - limb2: 0xc0f6973e628e5b4, + limb0: 0x29eebec2b59e839e22349983, + limb1: 0xf667eeacda1d349fae1184ff, + limb2: 0x2a875ff7b51d83fd, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4ba9ec5eb8b0bb9b3a72934d, - limb1: 0xd25b8dcda32fa60fa4f62938, - limb2: 0x245107d0866f0e0c, + limb0: 0x9bd44526af6b822ba414bf34, + limb1: 0x9d889b20682818109ee3f5b8, + limb2: 0x17504f66565b7973, limb3: 0x0 }, r0a1: u384 { - limb0: 0x45491c28f157f1f744393670, - limb1: 0xf2f3b4697055ab16581d7720, - limb2: 0x2cb8534c072f1479, + limb0: 0xef2d5a684ecf4a18d3fca175, + limb1: 0x6ef55bdd60dc05526e0728e7, + limb2: 0x2b2e3df0c459ea7b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9d96a3f428c5bf381047b732, - limb1: 0x4c80742e96600615ac6a3697, - limb2: 0x27104610e9cc98f, + limb0: 0x9c0debcfca9a57c72e36669c, + limb1: 0x63ea39559fb5a92d86f05e8f, + limb2: 0x8148de1c5161bae, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b47fcdd248d14357164ff63, - limb1: 0xfe9033a368ea45bcbb0daf60, - limb2: 0x240e5876c4069f16, + limb0: 0x51f1cd7837045a2605004b39, + limb1: 0x68ed291b88eaa36eba898cc8, + limb2: 0x7451a7a189e2ae5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x73140718042a689918ab7d6e, - limb1: 0xc17b51c9529b02f824d7678f, - limb2: 0x9573ada1f25e9a9, + limb0: 0x9b56e23478be8c6669b76736, + limb1: 0x9e92467948bd38cc449fb3d6, + limb2: 0x28e6a22c16340027, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe0a20f949ad6edd420c9e94e, - limb1: 0x35f21964215eca093f0a137f, - limb2: 0x1279dce0b8907010, + limb0: 0x65468a679e02de082e8f56f6, + limb1: 0x1dedc979e3be84b0ff6fef52, + limb2: 0x2c14f83b91127cfb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa269381ea1461e1d98f87f28, - limb1: 0x14644bdb5f21363de2e69c18, - limb2: 0x11c0eba3d19ac39c, + limb0: 0xb363027dfece36d665be75a5, + limb1: 0x8a128ec26c4c9e4825c49586, + limb2: 0x18e66c828e20b0d6, limb3: 0x0 }, r1a1: u384 { - limb0: 0x342018d2d2f54bac630c0687, - limb1: 0xa8279637b33790aaf1cd94a, - limb2: 0x1424d1e545371423, + limb0: 0xbcac354be80fa78b209f1762, + limb1: 0xf30809052d869812ef32777c, + limb2: 0x318a314f715211, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4ba9ec5eb8b0bb9b3a72934d, - limb1: 0xd25b8dcda32fa60fa4f62938, - limb2: 0x245107d0866f0e0c, + limb0: 0x9bd44526af6b822ba414bf34, + limb1: 0x9d889b20682818109ee3f5b8, + limb2: 0x17504f66565b7973, limb3: 0x0 }, r0a1: u384 { - limb0: 0x45491c28f157f1f744393670, - limb1: 0xf2f3b4697055ab16581d7720, - limb2: 0x2cb8534c072f1479, + limb0: 0xef2d5a684ecf4a18d3fca175, + limb1: 0x6ef55bdd60dc05526e0728e7, + limb2: 0x2b2e3df0c459ea7b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9d96a3f428c5bf381047b732, - limb1: 0x4c80742e96600615ac6a3697, - limb2: 0x27104610e9cc98f, + limb0: 0x9c0debcfca9a57c72e36669c, + limb1: 0x63ea39559fb5a92d86f05e8f, + limb2: 0x8148de1c5161bae, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b47fcdd248d14357164ff63, - limb1: 0xfe9033a368ea45bcbb0daf60, - limb2: 0x240e5876c4069f16, + limb0: 0x51f1cd7837045a2605004b39, + limb1: 0x68ed291b88eaa36eba898cc8, + limb2: 0x7451a7a189e2ae5, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x73140718042a689918ab7d6e, - limb1: 0xc17b51c9529b02f824d7678f, - limb2: 0x9573ada1f25e9a9, + limb0: 0x9b56e23478be8c6669b76736, + limb1: 0x9e92467948bd38cc449fb3d6, + limb2: 0x28e6a22c16340027, limb3: 0x0 }, r0a1: u384 { - limb0: 0xe0a20f949ad6edd420c9e94e, - limb1: 0x35f21964215eca093f0a137f, - limb2: 0x1279dce0b8907010, + limb0: 0x65468a679e02de082e8f56f6, + limb1: 0x1dedc979e3be84b0ff6fef52, + limb2: 0x2c14f83b91127cfb, limb3: 0x0 }, r1a0: u384 { - limb0: 0xa269381ea1461e1d98f87f28, - limb1: 0x14644bdb5f21363de2e69c18, - limb2: 0x11c0eba3d19ac39c, + limb0: 0xb363027dfece36d665be75a5, + limb1: 0x8a128ec26c4c9e4825c49586, + limb2: 0x18e66c828e20b0d6, limb3: 0x0 }, r1a1: u384 { - limb0: 0x342018d2d2f54bac630c0687, - limb1: 0xa8279637b33790aaf1cd94a, - limb2: 0x1424d1e545371423, + limb0: 0xbcac354be80fa78b209f1762, + limb1: 0xf30809052d869812ef32777c, + limb2: 0x318a314f715211, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2298109e61206eca25a8d33b, - limb1: 0xfebd8002c36d450cbe639998, - limb2: 0x1a103eb8cdce968e, + limb0: 0xbb6b6aa45fd6fde305cb854a, + limb1: 0x9ebfe9272ee715df3e260cf2, + limb2: 0xa967b280e363e8f, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa02f5c9e7c820e34bee3601, - limb1: 0xad2466834887eb829ee30708, - limb2: 0x2388ec097cd8cd2, + limb0: 0xde057c1fb977f3a9a8d06546, + limb1: 0x754d345bce41b971016c8f09, + limb2: 0x1a84dcfcb69f5704, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ad411cf4cd951fb5b92e0e5, - limb1: 0x41826a9853e7d72089cc6e1c, - limb2: 0x2a6cf179bee6ef72, + limb0: 0x4d1764ed585ead257d9db36d, + limb1: 0xc22a6bf7842859f889bfe8a8, + limb2: 0x1b6a2b37dbbfdf8a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f89100474cdf8c1aea05e45, - limb1: 0x1286e1cd1b99cc7e340e78e5, - limb2: 0x24d37163919a540b, + limb0: 0x5d5c3503dceb3e7fc1d270d6, + limb1: 0xd6ff3039d5f6822ada745ecd, + limb2: 0x2d48e7771059919c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2298109e61206eca25a8d33b, - limb1: 0xfebd8002c36d450cbe639998, - limb2: 0x1a103eb8cdce968e, + limb0: 0xbb6b6aa45fd6fde305cb854a, + limb1: 0x9ebfe9272ee715df3e260cf2, + limb2: 0xa967b280e363e8f, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa02f5c9e7c820e34bee3601, - limb1: 0xad2466834887eb829ee30708, - limb2: 0x2388ec097cd8cd2, + limb0: 0xde057c1fb977f3a9a8d06546, + limb1: 0x754d345bce41b971016c8f09, + limb2: 0x1a84dcfcb69f5704, limb3: 0x0 }, r1a0: u384 { - limb0: 0x4ad411cf4cd951fb5b92e0e5, - limb1: 0x41826a9853e7d72089cc6e1c, - limb2: 0x2a6cf179bee6ef72, + limb0: 0x4d1764ed585ead257d9db36d, + limb1: 0xc22a6bf7842859f889bfe8a8, + limb2: 0x1b6a2b37dbbfdf8a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x8f89100474cdf8c1aea05e45, - limb1: 0x1286e1cd1b99cc7e340e78e5, - limb2: 0x24d37163919a540b, + limb0: 0x5d5c3503dceb3e7fc1d270d6, + limb1: 0xd6ff3039d5f6822ada745ecd, + limb2: 0x2d48e7771059919c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd13363c06b3431a889f0d6a6, - limb1: 0x27621448698110de1c0e818d, - limb2: 0x214d9638a6bb5f67, + limb0: 0x734a203ff92886286cb0f6df, + limb1: 0xe9f081086ed857ed55b5b076, + limb2: 0x2b34671a3732d22e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbd3459a18a382c37b21ed303, - limb1: 0xf76422bf47e219ceb3a592f3, - limb2: 0x3057d8eb26bf3dbd, + limb0: 0xf440f3b197363132ac323277, + limb1: 0xc7d72e5dca83c8c05c5bdace, + limb2: 0x2d010c1451b4f55b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x723193f1cca2bf0219acb9fe, - limb1: 0xb2bfd361d1fee8ee16947dd9, - limb2: 0x1aa808845ef22987, + limb0: 0xb2f7e61d078407ea9b803d8a, + limb1: 0xc3edeb8d3106954d3e2f8910, + limb2: 0x5caaa349beaf055, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b67c06e4647601294c582cc, - limb1: 0x3b772363af951ec7581b2b16, - limb2: 0x1aa99d9df664578d, + limb0: 0x96ae2bade369602ce6ad0022, + limb1: 0x7655b153cf3316226226b841, + limb2: 0x28a422e783969b00, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd13363c06b3431a889f0d6a6, - limb1: 0x27621448698110de1c0e818d, - limb2: 0x214d9638a6bb5f67, + limb0: 0x734a203ff92886286cb0f6df, + limb1: 0xe9f081086ed857ed55b5b076, + limb2: 0x2b34671a3732d22e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xbd3459a18a382c37b21ed303, - limb1: 0xf76422bf47e219ceb3a592f3, - limb2: 0x3057d8eb26bf3dbd, + limb0: 0xf440f3b197363132ac323277, + limb1: 0xc7d72e5dca83c8c05c5bdace, + limb2: 0x2d010c1451b4f55b, limb3: 0x0 }, r1a0: u384 { - limb0: 0x723193f1cca2bf0219acb9fe, - limb1: 0xb2bfd361d1fee8ee16947dd9, - limb2: 0x1aa808845ef22987, + limb0: 0xb2f7e61d078407ea9b803d8a, + limb1: 0xc3edeb8d3106954d3e2f8910, + limb2: 0x5caaa349beaf055, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b67c06e4647601294c582cc, - limb1: 0x3b772363af951ec7581b2b16, - limb2: 0x1aa99d9df664578d, + limb0: 0x96ae2bade369602ce6ad0022, + limb1: 0x7655b153cf3316226226b841, + limb2: 0x28a422e783969b00, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7c9e749053f037cfbe144e11, - limb1: 0x20dbce8e678e0a75caa719bd, - limb2: 0x2a54a115f161aa29, + limb0: 0xcea0e0cf0c6983e2afbf6e5b, + limb1: 0x3f3d09de5538ebb91d93244f, + limb2: 0x2e423f5cd50b1b0b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a322508405a215f489539d5, - limb1: 0xdb580d7e686950be27f6f3e5, - limb2: 0x2943efbe4c1003d9, + limb0: 0x7130aaec9de55ebe5a725993, + limb1: 0x72cdaf045315d78b3a869b99, + limb2: 0xa1e764e4914c73d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x54749ed1eb31f99e204f5dc0, - limb1: 0x70345a9627ce2befa7a5f0e5, - limb2: 0x23196c9269b0a030, + limb0: 0x3430bb0abf481f47b595f451, + limb1: 0xcad3b79a1883cc594961f8d9, + limb2: 0xabe8088cd545331, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf9166bef56c16aaaa05adf56, - limb1: 0x68c7a8092dce4c1d2c55fa95, - limb2: 0x2a42b856029bd6ce, + limb0: 0x2192c91661eb55dfd8bf44a4, + limb1: 0x947961e3d96adc04e39ba975, + limb2: 0x2ab466c577726305, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7c9e749053f037cfbe144e11, - limb1: 0x20dbce8e678e0a75caa719bd, - limb2: 0x2a54a115f161aa29, + limb0: 0xcea0e0cf0c6983e2afbf6e5b, + limb1: 0x3f3d09de5538ebb91d93244f, + limb2: 0x2e423f5cd50b1b0b, limb3: 0x0 }, r0a1: u384 { - limb0: 0x7a322508405a215f489539d5, - limb1: 0xdb580d7e686950be27f6f3e5, - limb2: 0x2943efbe4c1003d9, + limb0: 0x7130aaec9de55ebe5a725993, + limb1: 0x72cdaf045315d78b3a869b99, + limb2: 0xa1e764e4914c73d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x54749ed1eb31f99e204f5dc0, - limb1: 0x70345a9627ce2befa7a5f0e5, - limb2: 0x23196c9269b0a030, + limb0: 0x3430bb0abf481f47b595f451, + limb1: 0xcad3b79a1883cc594961f8d9, + limb2: 0xabe8088cd545331, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf9166bef56c16aaaa05adf56, - limb1: 0x68c7a8092dce4c1d2c55fa95, - limb2: 0x2a42b856029bd6ce, + limb0: 0x2192c91661eb55dfd8bf44a4, + limb1: 0x947961e3d96adc04e39ba975, + limb2: 0x2ab466c577726305, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8935d1d47ba276211eee7549, - limb1: 0x2e802b0919a1e63a5ae74e2b, - limb2: 0x145b6e703538b641, + limb0: 0x87badcb25547963493fe45fb, + limb1: 0xf0a9a8d798e720af29cb4a96, + limb2: 0x2b123e446695d170, limb3: 0x0 }, r0a1: u384 { - limb0: 0x14098080942cfccdda19497d, - limb1: 0xd5523ad1e9db0e62cf5d437d, - limb2: 0x17e3aa7b8d0466e, + limb0: 0xf5f445f3d43fcbc1452c1ce4, + limb1: 0xe43d1ec74033939714885c5a, + limb2: 0x2141f9dcee7a5abd, limb3: 0x0 }, r1a0: u384 { - limb0: 0x575920b95717e15bb3ffc872, - limb1: 0xe1f4eb5185c72ef2b77fbaaf, - limb2: 0x20ff78ff127a2288, + limb0: 0x27860bda05efc157a8db5e2d, + limb1: 0x503a4718ca16ecaa023ba303, + limb2: 0x2b7341e2f85e3579, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc2e51b31a906b83700e39abe, - limb1: 0xfe43bf632c311476335eff9, - limb2: 0x225d411c35388e5a, + limb0: 0xc2ac240ec964d13e37b39f21, + limb1: 0x8e4f2b66a2c45e0f6014c24f, + limb2: 0xe5239ba8aefe42f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xde5e8a9983775e139bfabf8f, - limb1: 0xe688353dd8463bef566be803, - limb2: 0xdbbf2fc1fa572bb, + limb0: 0xffef228891647eafc116b9e0, + limb1: 0xa7a896c5628caabdb69e24c6, + limb2: 0x828d4145301c34e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc2b5a630a91d1b8844868711, - limb1: 0x68b1e438230accc99373185f, - limb2: 0x19fb488ff36e6e27, + limb0: 0xd99eb1f318e638fe9d2bb27b, + limb1: 0x20561ade41d499ee86526f28, + limb2: 0x2d5ed2ca32e9ee59, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc1382770eab444653cc25b77, - limb1: 0xa120e65f4c4a322831e11be7, - limb2: 0x200157caabdb7443, + limb0: 0x1629ac83c66b88234a766153, + limb1: 0x60c2aa45c4528c36ef06286e, + limb2: 0x22495429f5176d57, limb3: 0x0 }, r1a1: u384 { - limb0: 0x82869f267fa25c74659e89e5, - limb1: 0xb8ee0b8209c405f287741be4, - limb2: 0x293c35ff9733a7f8, + limb0: 0x81c1484e59021fc62e92c781, + limb1: 0x98a6a6e317089c8a8b5bcb32, + limb2: 0x83dceb63ab0efce, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8935d1d47ba276211eee7549, - limb1: 0x2e802b0919a1e63a5ae74e2b, - limb2: 0x145b6e703538b641, + limb0: 0x87badcb25547963493fe45fb, + limb1: 0xf0a9a8d798e720af29cb4a96, + limb2: 0x2b123e446695d170, limb3: 0x0 }, r0a1: u384 { - limb0: 0x14098080942cfccdda19497d, - limb1: 0xd5523ad1e9db0e62cf5d437d, - limb2: 0x17e3aa7b8d0466e, + limb0: 0xf5f445f3d43fcbc1452c1ce4, + limb1: 0xe43d1ec74033939714885c5a, + limb2: 0x2141f9dcee7a5abd, limb3: 0x0 }, r1a0: u384 { - limb0: 0x575920b95717e15bb3ffc872, - limb1: 0xe1f4eb5185c72ef2b77fbaaf, - limb2: 0x20ff78ff127a2288, + limb0: 0x27860bda05efc157a8db5e2d, + limb1: 0x503a4718ca16ecaa023ba303, + limb2: 0x2b7341e2f85e3579, limb3: 0x0 }, r1a1: u384 { - limb0: 0xc2e51b31a906b83700e39abe, - limb1: 0xfe43bf632c311476335eff9, - limb2: 0x225d411c35388e5a, + limb0: 0xc2ac240ec964d13e37b39f21, + limb1: 0x8e4f2b66a2c45e0f6014c24f, + limb2: 0xe5239ba8aefe42f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xde5e8a9983775e139bfabf8f, - limb1: 0xe688353dd8463bef566be803, - limb2: 0xdbbf2fc1fa572bb, + limb0: 0xffef228891647eafc116b9e0, + limb1: 0xa7a896c5628caabdb69e24c6, + limb2: 0x828d4145301c34e, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc2b5a630a91d1b8844868711, - limb1: 0x68b1e438230accc99373185f, - limb2: 0x19fb488ff36e6e27, + limb0: 0xd99eb1f318e638fe9d2bb27b, + limb1: 0x20561ade41d499ee86526f28, + limb2: 0x2d5ed2ca32e9ee59, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc1382770eab444653cc25b77, - limb1: 0xa120e65f4c4a322831e11be7, - limb2: 0x200157caabdb7443, + limb0: 0x1629ac83c66b88234a766153, + limb1: 0x60c2aa45c4528c36ef06286e, + limb2: 0x22495429f5176d57, limb3: 0x0 }, r1a1: u384 { - limb0: 0x82869f267fa25c74659e89e5, - limb1: 0xb8ee0b8209c405f287741be4, - limb2: 0x293c35ff9733a7f8, + limb0: 0x81c1484e59021fc62e92c781, + limb1: 0x98a6a6e317089c8a8b5bcb32, + limb2: 0x83dceb63ab0efce, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x573a543cdb9215785cab1a15, - limb1: 0x92713ec173f0086a2458532b, - limb2: 0x8ddf9f90fbd1579, + limb0: 0xd832a0a9ba46b61c5fbe8bf6, + limb1: 0xf2796f5f1701bdf0ccd6f7e5, + limb2: 0xf8ea92f37492683, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4ea28768f30ac256d1ede0eb, - limb1: 0x57494ca5b520d112286db2dc, - limb2: 0x8d6336f68cb29b1, + limb0: 0x799b80332114be709062d4f6, + limb1: 0x221fa51129bf07c25ddc135d, + limb2: 0x25c4be7190c9a7bd, limb3: 0x0 }, r1a0: u384 { - limb0: 0x969fe6e4821c92f3c0f94d1c, - limb1: 0xcbf611f3e845e7fa948f2a27, - limb2: 0x2a3c9e6f84097955, + limb0: 0x9efd44ce070180ecfcbc4848, + limb1: 0xd35e21807c4ad6f062a5202d, + limb2: 0x86987df4f67a884, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa2369f5b41dbdcbc5c6861e8, - limb1: 0x4314f870281105473fea007a, - limb2: 0x11f3357edfb7b63f, + limb0: 0x820b2e59e88f4ef0e1c60032, + limb1: 0x29a9bd120466b529db6acbb5, + limb2: 0x1d16799e4e370099, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x573a543cdb9215785cab1a15, - limb1: 0x92713ec173f0086a2458532b, - limb2: 0x8ddf9f90fbd1579, + limb0: 0xd832a0a9ba46b61c5fbe8bf6, + limb1: 0xf2796f5f1701bdf0ccd6f7e5, + limb2: 0xf8ea92f37492683, limb3: 0x0 }, r0a1: u384 { - limb0: 0x4ea28768f30ac256d1ede0eb, - limb1: 0x57494ca5b520d112286db2dc, - limb2: 0x8d6336f68cb29b1, + limb0: 0x799b80332114be709062d4f6, + limb1: 0x221fa51129bf07c25ddc135d, + limb2: 0x25c4be7190c9a7bd, limb3: 0x0 }, r1a0: u384 { - limb0: 0x969fe6e4821c92f3c0f94d1c, - limb1: 0xcbf611f3e845e7fa948f2a27, - limb2: 0x2a3c9e6f84097955, + limb0: 0x9efd44ce070180ecfcbc4848, + limb1: 0xd35e21807c4ad6f062a5202d, + limb2: 0x86987df4f67a884, limb3: 0x0 }, r1a1: u384 { - limb0: 0xa2369f5b41dbdcbc5c6861e8, - limb1: 0x4314f870281105473fea007a, - limb2: 0x11f3357edfb7b63f, + limb0: 0x820b2e59e88f4ef0e1c60032, + limb1: 0x29a9bd120466b529db6acbb5, + limb2: 0x1d16799e4e370099, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x61b9358e21a5d62fa557ce76, - limb1: 0x4a6bb758938220f6adf2788, - limb2: 0x1d27f6ae1c05fdaf, + limb0: 0x86ac476dcefd85dc64fc37bb, + limb1: 0xacc7a5e6416c113a8744a2d7, + limb2: 0x158e004a9f532a84, limb3: 0x0 }, r0a1: u384 { - limb0: 0x998c4d37aefcd65cbf67672e, - limb1: 0xc28156f934f053d9f96d9764, - limb2: 0x13d65c4ad0427177, + limb0: 0x399e601600cfe1da14a488f3, + limb1: 0xe2a1e7d9d7f92add7a3957e6, + limb2: 0x3539a47d4cdc84d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x88fa49dbffb1970a5dc2c2ba, - limb1: 0x8b7271f01e88c3bfabafba2a, - limb2: 0x167b694955e8b73e, + limb0: 0xeed05e1a4ed1b575b27ed512, + limb1: 0xac1edb808ef2dedbfe1d8846, + limb2: 0x2c997577e8b3ea7f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1ff62dc25037f452e727cd7b, - limb1: 0x3e76065280afe7efebc77102, - limb2: 0x9d3602a47daf364, + limb0: 0xd9e366ebd17969e6e247b3d5, + limb1: 0x27c165ecbba78cad9b2199f6, + limb2: 0xb72ad616ca5aabf, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x61b9358e21a5d62fa557ce76, - limb1: 0x4a6bb758938220f6adf2788, - limb2: 0x1d27f6ae1c05fdaf, + limb0: 0x86ac476dcefd85dc64fc37bb, + limb1: 0xacc7a5e6416c113a8744a2d7, + limb2: 0x158e004a9f532a84, limb3: 0x0 }, r0a1: u384 { - limb0: 0x998c4d37aefcd65cbf67672e, - limb1: 0xc28156f934f053d9f96d9764, - limb2: 0x13d65c4ad0427177, + limb0: 0x399e601600cfe1da14a488f3, + limb1: 0xe2a1e7d9d7f92add7a3957e6, + limb2: 0x3539a47d4cdc84d, limb3: 0x0 }, r1a0: u384 { - limb0: 0x88fa49dbffb1970a5dc2c2ba, - limb1: 0x8b7271f01e88c3bfabafba2a, - limb2: 0x167b694955e8b73e, + limb0: 0xeed05e1a4ed1b575b27ed512, + limb1: 0xac1edb808ef2dedbfe1d8846, + limb2: 0x2c997577e8b3ea7f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x1ff62dc25037f452e727cd7b, - limb1: 0x3e76065280afe7efebc77102, - limb2: 0x9d3602a47daf364, + limb0: 0xd9e366ebd17969e6e247b3d5, + limb1: 0x27c165ecbba78cad9b2199f6, + limb2: 0xb72ad616ca5aabf, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xdc798efdc952508e57aeafa8, - limb1: 0x3d76219aa811e3119714ba94, - limb2: 0x1ee6e5eabcf397ee, + limb0: 0x6e3df860ddc87e6c46b10347, + limb1: 0xdf7d85b152d08dc52b391a23, + limb2: 0x2151ae1d0adee980, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd7e7d5d38192b76850798e3e, - limb1: 0x6205f5e5b809380152a57b92, - limb2: 0x3b64125ce7d8265, + limb0: 0xe9aab9e7e2e152c9b7b3ff8b, + limb1: 0x2e3e5ef2957768c85a7fda05, + limb2: 0x1ba06484c9948aab, limb3: 0x0 }, r1a0: u384 { - limb0: 0x58876f7395bb25e7c88c7c35, - limb1: 0x903d20e5df77436cba0d1bc7, - limb2: 0x128169e2fc995b6c, + limb0: 0xa4db947d390de54b28d90817, + limb1: 0x97ae9f2a08d19f66acfafd72, + limb2: 0x2c0f43178bbac00b, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd454707064985b7c72738ec0, - limb1: 0xee8061f10a24e4ad7f0cbfcc, - limb2: 0x1450f41fbc0b29fd, + limb0: 0xb31e0cca8442d0cdfa6a8355, + limb1: 0x11d2946936ca6ecf4d8c5263, + limb2: 0x11803eb6c5467a4d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4dce11f4e8f9fd1e7ddef6e0, - limb1: 0xc5cc9c2d400ae76761173e8e, - limb2: 0x128d6deed97bc08b, + limb0: 0x90ec2528f29f6e88cea10cd9, + limb1: 0xe38a4b080d340c5cec90db8b, + limb2: 0x2d4b92e251bf7dfb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf0af824829940cc5cd820cff, - limb1: 0x85d8177cefff89cd1a031272, - limb2: 0x2a3cd35c140823eb, + limb0: 0xb22bf09f84d3a2d5907e69b, + limb1: 0xc0258ab76526957e5222a691, + limb2: 0x2e615eddc1d9838c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x47973465facf264a165b5ea2, - limb1: 0x2fbe802ad53ecbf1c429eea8, - limb2: 0x1fb8519f6f91e57c, + limb0: 0x460a16d8d928363cde9720af, + limb1: 0xcb2ad8fc5096b71c1ab56254, + limb2: 0x1af601ac3cb97e6e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x27a390d32a01a5e6735e5b95, - limb1: 0xb1bde630cd5384a635b8ce99, - limb2: 0x11b23d6677d6da3a, + limb0: 0xa50c6bca98920204eaec6a30, + limb1: 0x9c9410401471f1572de16694, + limb2: 0x1f12a4736bdd070f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xdc798efdc952508e57aeafa8, - limb1: 0x3d76219aa811e3119714ba94, - limb2: 0x1ee6e5eabcf397ee, + limb0: 0x6e3df860ddc87e6c46b10347, + limb1: 0xdf7d85b152d08dc52b391a23, + limb2: 0x2151ae1d0adee980, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd7e7d5d38192b76850798e3e, - limb1: 0x6205f5e5b809380152a57b92, - limb2: 0x3b64125ce7d8265, + limb0: 0xe9aab9e7e2e152c9b7b3ff8b, + limb1: 0x2e3e5ef2957768c85a7fda05, + limb2: 0x1ba06484c9948aab, limb3: 0x0 }, r1a0: u384 { - limb0: 0x58876f7395bb25e7c88c7c35, - limb1: 0x903d20e5df77436cba0d1bc7, - limb2: 0x128169e2fc995b6c, + limb0: 0xa4db947d390de54b28d90817, + limb1: 0x97ae9f2a08d19f66acfafd72, + limb2: 0x2c0f43178bbac00b, limb3: 0x0 }, r1a1: u384 { - limb0: 0xd454707064985b7c72738ec0, - limb1: 0xee8061f10a24e4ad7f0cbfcc, - limb2: 0x1450f41fbc0b29fd, + limb0: 0xb31e0cca8442d0cdfa6a8355, + limb1: 0x11d2946936ca6ecf4d8c5263, + limb2: 0x11803eb6c5467a4d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x4dce11f4e8f9fd1e7ddef6e0, - limb1: 0xc5cc9c2d400ae76761173e8e, - limb2: 0x128d6deed97bc08b, + limb0: 0x90ec2528f29f6e88cea10cd9, + limb1: 0xe38a4b080d340c5cec90db8b, + limb2: 0x2d4b92e251bf7dfb, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf0af824829940cc5cd820cff, - limb1: 0x85d8177cefff89cd1a031272, - limb2: 0x2a3cd35c140823eb, + limb0: 0xb22bf09f84d3a2d5907e69b, + limb1: 0xc0258ab76526957e5222a691, + limb2: 0x2e615eddc1d9838c, limb3: 0x0 }, r1a0: u384 { - limb0: 0x47973465facf264a165b5ea2, - limb1: 0x2fbe802ad53ecbf1c429eea8, - limb2: 0x1fb8519f6f91e57c, + limb0: 0x460a16d8d928363cde9720af, + limb1: 0xcb2ad8fc5096b71c1ab56254, + limb2: 0x1af601ac3cb97e6e, limb3: 0x0 }, r1a1: u384 { - limb0: 0x27a390d32a01a5e6735e5b95, - limb1: 0xb1bde630cd5384a635b8ce99, - limb2: 0x11b23d6677d6da3a, + limb0: 0xa50c6bca98920204eaec6a30, + limb1: 0x9c9410401471f1572de16694, + limb2: 0x1f12a4736bdd070f, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x920285e4c89b6d56f8a71a16, - limb1: 0x4d23398a8756de276751e6f7, - limb2: 0x114de84b17ce9ec4, + limb0: 0xc7d43a911fd67a1046df190, + limb1: 0xa3b2ef1a29bb0724615047cd, + limb2: 0xe4806310c03ea81, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa12e9505380ced717a51425f, - limb1: 0xd10e79b1e5779355281d6d41, - limb2: 0x19f64c769e8c88a3, + limb0: 0x8b2b919a7859c004e6d83d7e, + limb1: 0x9b023b81d96659a531893965, + limb2: 0x1fb7ff79ddd1cc0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xeb577246e0fb07ef4716f371, - limb1: 0xcc22d574a016be2755a35a57, - limb2: 0x1fa2aa3f13a0af5e, + limb0: 0xcb81212d752959e0f8709116, + limb1: 0x2a4cf738761c75e3d5905b77, + limb2: 0x14f7b437f3f0f70a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b6b91d3306483eb394a5d7d, - limb1: 0x68b60c423f1bd695c373d5b1, - limb2: 0xfe8419b040c1fe8, + limb0: 0x32aaaa30b5c7af271afdeef9, + limb1: 0x89cca337f6ef6cd9643d184d, + limb2: 0x2271ea433b43c30e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x920285e4c89b6d56f8a71a16, - limb1: 0x4d23398a8756de276751e6f7, - limb2: 0x114de84b17ce9ec4, + limb0: 0xc7d43a911fd67a1046df190, + limb1: 0xa3b2ef1a29bb0724615047cd, + limb2: 0xe4806310c03ea81, limb3: 0x0 }, r0a1: u384 { - limb0: 0xa12e9505380ced717a51425f, - limb1: 0xd10e79b1e5779355281d6d41, - limb2: 0x19f64c769e8c88a3, + limb0: 0x8b2b919a7859c004e6d83d7e, + limb1: 0x9b023b81d96659a531893965, + limb2: 0x1fb7ff79ddd1cc0, limb3: 0x0 }, r1a0: u384 { - limb0: 0xeb577246e0fb07ef4716f371, - limb1: 0xcc22d574a016be2755a35a57, - limb2: 0x1fa2aa3f13a0af5e, + limb0: 0xcb81212d752959e0f8709116, + limb1: 0x2a4cf738761c75e3d5905b77, + limb2: 0x14f7b437f3f0f70a, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7b6b91d3306483eb394a5d7d, - limb1: 0x68b60c423f1bd695c373d5b1, - limb2: 0xfe8419b040c1fe8, + limb0: 0x32aaaa30b5c7af271afdeef9, + limb1: 0x89cca337f6ef6cd9643d184d, + limb2: 0x2271ea433b43c30e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7433acabde092f57f34fda3e, - limb1: 0x4b20d94b27df439c2ffbf0c7, - limb2: 0x206a39dfea369775, + limb0: 0x83cd187ea6b76db95f773abb, + limb1: 0x38132c4378560baf4f82f147, + limb2: 0x1e73e0ef9d6c6df2, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcb1ac18bb46958eecf86d479, - limb1: 0xa96e9bc22cf79585ca8d145e, - limb2: 0x16607226be1149d1, + limb0: 0x13fa637fc7e8d59bff13c7bf, + limb1: 0xcb266076a68142cdfb52e43c, + limb2: 0xf8779a30bc4923e, limb3: 0x0 }, r1a0: u384 { - limb0: 0xdb93aa23be35d71f767c5fec, - limb1: 0xfe791bf498499a8fa724f452, - limb2: 0x2557346eaaa4a661, + limb0: 0xdd4e562c68bb6c0467767a9d, + limb1: 0x977ed22d3ffa809754d6a3e6, + limb2: 0xb551268da252f8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x49dfe2fbcde19f586724d54b, - limb1: 0x2a01c96ea862a37849a9bc62, - limb2: 0x280f0e52182d7a05, + limb0: 0x8202e7c157f34ce8371734c, + limb1: 0xf9b04eaf7c57cd1560d122a0, + limb2: 0x10786b4d5ab93b34, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd144b7e7d68070df389c31be, - limb1: 0x5c1f0dca577b0c73ca9700a8, - limb2: 0x2a0176b4e1a6e207, + limb0: 0x734d9cb92244d62a2d668de7, + limb1: 0x2412fbb6fe8a9acbf8b80689, + limb2: 0x2b3b8b2dff8430ab, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdda8e702944d322083108d6, - limb1: 0x2ccecf984c8fdd914777358d, - limb2: 0x2da388e8c7fa314e, + limb0: 0xa91caf2c31f0b8f7e1ca6c1b, + limb1: 0xddd15671597c0eb969689334, + limb2: 0xf16ae1e54810451, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd5b7615386237022c6205d49, - limb1: 0x4ca58c4f67a09bb72a2cc22a, - limb2: 0x835fc447af3fc42, + limb0: 0x40f2487f6e22cc52df2d0667, + limb1: 0x7561db82d38cec91f9b0037c, + limb2: 0x11f8a53268ce76dd, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7264ec07a5c833f363e9410a, - limb1: 0x67ee3fb1b2bd11ca2ac55f16, - limb2: 0x2f69c1be5c8b49ed, + limb0: 0x6d75c8bd8e7f0f746c04a4a4, + limb1: 0x58f47f7c2a03d738930f80cd, + limb2: 0x252b7105ca6fc9b3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7433acabde092f57f34fda3e, - limb1: 0x4b20d94b27df439c2ffbf0c7, - limb2: 0x206a39dfea369775, + limb0: 0x83cd187ea6b76db95f773abb, + limb1: 0x38132c4378560baf4f82f147, + limb2: 0x1e73e0ef9d6c6df2, limb3: 0x0 }, r0a1: u384 { - limb0: 0xcb1ac18bb46958eecf86d479, - limb1: 0xa96e9bc22cf79585ca8d145e, - limb2: 0x16607226be1149d1, + limb0: 0x13fa637fc7e8d59bff13c7bf, + limb1: 0xcb266076a68142cdfb52e43c, + limb2: 0xf8779a30bc4923e, limb3: 0x0 }, r1a0: u384 { - limb0: 0xdb93aa23be35d71f767c5fec, - limb1: 0xfe791bf498499a8fa724f452, - limb2: 0x2557346eaaa4a661, + limb0: 0xdd4e562c68bb6c0467767a9d, + limb1: 0x977ed22d3ffa809754d6a3e6, + limb2: 0xb551268da252f8, limb3: 0x0 }, r1a1: u384 { - limb0: 0x49dfe2fbcde19f586724d54b, - limb1: 0x2a01c96ea862a37849a9bc62, - limb2: 0x280f0e52182d7a05, + limb0: 0x8202e7c157f34ce8371734c, + limb1: 0xf9b04eaf7c57cd1560d122a0, + limb2: 0x10786b4d5ab93b34, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xd144b7e7d68070df389c31be, - limb1: 0x5c1f0dca577b0c73ca9700a8, - limb2: 0x2a0176b4e1a6e207, + limb0: 0x734d9cb92244d62a2d668de7, + limb1: 0x2412fbb6fe8a9acbf8b80689, + limb2: 0x2b3b8b2dff8430ab, limb3: 0x0 }, r0a1: u384 { - limb0: 0xdda8e702944d322083108d6, - limb1: 0x2ccecf984c8fdd914777358d, - limb2: 0x2da388e8c7fa314e, + limb0: 0xa91caf2c31f0b8f7e1ca6c1b, + limb1: 0xddd15671597c0eb969689334, + limb2: 0xf16ae1e54810451, limb3: 0x0 }, r1a0: u384 { - limb0: 0xd5b7615386237022c6205d49, - limb1: 0x4ca58c4f67a09bb72a2cc22a, - limb2: 0x835fc447af3fc42, + limb0: 0x40f2487f6e22cc52df2d0667, + limb1: 0x7561db82d38cec91f9b0037c, + limb2: 0x11f8a53268ce76dd, limb3: 0x0 }, r1a1: u384 { - limb0: 0x7264ec07a5c833f363e9410a, - limb1: 0x67ee3fb1b2bd11ca2ac55f16, - limb2: 0x2f69c1be5c8b49ed, + limb0: 0x6d75c8bd8e7f0f746c04a4a4, + limb1: 0x58f47f7c2a03d738930f80cd, + limb2: 0x252b7105ca6fc9b3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8831dfc4ccf2c8c4b260138d, - limb1: 0xd1f5dbd5be65932223d1f5ca, - limb2: 0x1701bc443dd497fc, + limb0: 0xed3f9b44e04f68fa73726e0, + limb1: 0xaccd6e1c19eedf5c88d2d3de, + limb2: 0x14648df327991ebf, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd958c34860b32fd1112ac438, - limb1: 0xbb514d2bae4c326f340eabeb, - limb2: 0xb6f1b7af39b5f3e, + limb0: 0xdca3b98b961d7c87f0295f6c, + limb1: 0x27c558b1a54b6247711c1037, + limb2: 0x1a29b2dda2224caf, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9f4627a8dd2ea615fd4ec345, - limb1: 0xea6211bd9024ee33146b54e1, - limb2: 0x9a87cecebd01031, + limb0: 0xf5931dd053bba2ce80ecaac0, + limb1: 0x4467a917b99ebaa9e38cd75c, + limb2: 0x996c8326c22d218, limb3: 0x0 }, r1a1: u384 { - limb0: 0x417c621f059e924e4b797892, - limb1: 0x6de3b8f3f2435f41c47b5ca7, - limb2: 0x1746cfb42e7edfe9, + limb0: 0x1689da4d6237eb0cabc619cd, + limb1: 0x80be7b14466f3e80d3238f33, + limb2: 0x17b123dc27670866, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x8831dfc4ccf2c8c4b260138d, - limb1: 0xd1f5dbd5be65932223d1f5ca, - limb2: 0x1701bc443dd497fc, + limb0: 0xed3f9b44e04f68fa73726e0, + limb1: 0xaccd6e1c19eedf5c88d2d3de, + limb2: 0x14648df327991ebf, limb3: 0x0 }, r0a1: u384 { - limb0: 0xd958c34860b32fd1112ac438, - limb1: 0xbb514d2bae4c326f340eabeb, - limb2: 0xb6f1b7af39b5f3e, + limb0: 0xdca3b98b961d7c87f0295f6c, + limb1: 0x27c558b1a54b6247711c1037, + limb2: 0x1a29b2dda2224caf, limb3: 0x0 }, r1a0: u384 { - limb0: 0x9f4627a8dd2ea615fd4ec345, - limb1: 0xea6211bd9024ee33146b54e1, - limb2: 0x9a87cecebd01031, + limb0: 0xf5931dd053bba2ce80ecaac0, + limb1: 0x4467a917b99ebaa9e38cd75c, + limb2: 0x996c8326c22d218, limb3: 0x0 }, r1a1: u384 { - limb0: 0x417c621f059e924e4b797892, - limb1: 0x6de3b8f3f2435f41c47b5ca7, - limb2: 0x1746cfb42e7edfe9, + limb0: 0x1689da4d6237eb0cabc619cd, + limb1: 0x80be7b14466f3e80d3238f33, + limb2: 0x17b123dc27670866, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf8ce9da7d61e8d548555672, - limb1: 0xd614b97c253d1730af3158ca, - limb2: 0x1c46cd5ce3e014a9, + limb0: 0x8767a273979ae59410a61d6, + limb1: 0xa94677eef8680a0766b7bdcd, + limb2: 0x15c8a912d3707996, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf18f79d62ca58bdf4933cf16, - limb1: 0x85f8363580adf052d3fc1a84, - limb2: 0xe263455b6d16d04, + limb0: 0x72b1893fa891d8355e250814, + limb1: 0xb5d35ea94ee17f9c23cdf243, + limb2: 0x1d671bcc2ff01456, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc66fa8f8016ca5c4730cd669, - limb1: 0xfb92f1e65764847b7024bac2, - limb2: 0x6fa5b114e44e144, + limb0: 0x2eab3dd0cbff0fdcf9c5a50e, + limb1: 0x5aadb2a6a126687ddb17973a, + limb2: 0x16878082a7622728, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4bedf38c7dea143b08b2cf, - limb1: 0x47eb1e9619fc55f976eb173e, - limb2: 0x5cfde80df5b106c, + limb0: 0x273a60ad881d183875c615bd, + limb1: 0xa414778bb6a46ea39e5916fc, + limb2: 0x122eea2cfbd5fdab, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3c41efca1721ffd1e7d9fad3, - limb1: 0x53a0898cecc3c985e01984b2, - limb2: 0x2c53646dd8706ebb, + limb0: 0x20b3b9f61a1405d6266b5771, + limb1: 0xcb82915b7d0da4a9df5f1a20, + limb2: 0x2406411cc56e8aab, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb1437300f07f40391efe8ba9, - limb1: 0x341ff8ed3a30bdaaf7877aaf, - limb2: 0xd8b1223e1d03dc7, + limb0: 0x2106d333e371ad529f0d5b2, + limb1: 0xab4b2400bf422c768afc6579, + limb2: 0xc93f5e6ed3d5499, limb3: 0x0 }, r1a0: u384 { - limb0: 0x74d0bc9555ab7c4f7e477f53, - limb1: 0x8db426c6bb51717ffed672bc, - limb2: 0x123491c5721f765c, + limb0: 0xe3134a8d54a826fafad59d2b, + limb1: 0xc5c51ca995d4930086d0d7ad, + limb2: 0x81f9db5baeaaedc, limb3: 0x0 }, r1a1: u384 { - limb0: 0xed1e5057b6a6d71d58d23678, - limb1: 0x331674b380fd1f2b82c557f9, - limb2: 0x2b4100084df968c7, + limb0: 0x6e922172b482fd3fa892d0ae, + limb1: 0x64f6ec6958ff8a9d369e840f, + limb2: 0x276aa7150701480d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0xf8ce9da7d61e8d548555672, - limb1: 0xd614b97c253d1730af3158ca, - limb2: 0x1c46cd5ce3e014a9, + limb0: 0x8767a273979ae59410a61d6, + limb1: 0xa94677eef8680a0766b7bdcd, + limb2: 0x15c8a912d3707996, limb3: 0x0 }, r0a1: u384 { - limb0: 0xf18f79d62ca58bdf4933cf16, - limb1: 0x85f8363580adf052d3fc1a84, - limb2: 0xe263455b6d16d04, + limb0: 0x72b1893fa891d8355e250814, + limb1: 0xb5d35ea94ee17f9c23cdf243, + limb2: 0x1d671bcc2ff01456, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc66fa8f8016ca5c4730cd669, - limb1: 0xfb92f1e65764847b7024bac2, - limb2: 0x6fa5b114e44e144, + limb0: 0x2eab3dd0cbff0fdcf9c5a50e, + limb1: 0x5aadb2a6a126687ddb17973a, + limb2: 0x16878082a7622728, limb3: 0x0 }, r1a1: u384 { - limb0: 0x4bedf38c7dea143b08b2cf, - limb1: 0x47eb1e9619fc55f976eb173e, - limb2: 0x5cfde80df5b106c, + limb0: 0x273a60ad881d183875c615bd, + limb1: 0xa414778bb6a46ea39e5916fc, + limb2: 0x122eea2cfbd5fdab, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x3c41efca1721ffd1e7d9fad3, - limb1: 0x53a0898cecc3c985e01984b2, - limb2: 0x2c53646dd8706ebb, + limb0: 0x20b3b9f61a1405d6266b5771, + limb1: 0xcb82915b7d0da4a9df5f1a20, + limb2: 0x2406411cc56e8aab, limb3: 0x0 }, r0a1: u384 { - limb0: 0xb1437300f07f40391efe8ba9, - limb1: 0x341ff8ed3a30bdaaf7877aaf, - limb2: 0xd8b1223e1d03dc7, + limb0: 0x2106d333e371ad529f0d5b2, + limb1: 0xab4b2400bf422c768afc6579, + limb2: 0xc93f5e6ed3d5499, limb3: 0x0 }, r1a0: u384 { - limb0: 0x74d0bc9555ab7c4f7e477f53, - limb1: 0x8db426c6bb51717ffed672bc, - limb2: 0x123491c5721f765c, + limb0: 0xe3134a8d54a826fafad59d2b, + limb1: 0xc5c51ca995d4930086d0d7ad, + limb2: 0x81f9db5baeaaedc, limb3: 0x0 }, r1a1: u384 { - limb0: 0xed1e5057b6a6d71d58d23678, - limb1: 0x331674b380fd1f2b82c557f9, - limb2: 0x2b4100084df968c7, + limb0: 0x6e922172b482fd3fa892d0ae, + limb1: 0x64f6ec6958ff8a9d369e840f, + limb2: 0x276aa7150701480d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x772d53b94e08cb91f083d8e3, - limb1: 0x6b3ed177f24aaab5f4df81b8, - limb2: 0x14040f489f98adcb, + limb0: 0x61ef7c65799ff3f0d508bd10, + limb1: 0x8ceb75dcd1484320ee4d19e2, + limb2: 0x2233a4f232ea0574, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8f51965951ae794287ff5d9, - limb1: 0xfc0c493f7618ddd0a07f2c41, - limb2: 0x79dcd968dc5c4ee, + limb0: 0xd3f75a0f767465449a7b747f, + limb1: 0x8e7a83c0b52fc14b98d8a2fc, + limb2: 0x6f4dcbc5a5fc75a, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc8864ac9d621911afe220707, - limb1: 0xbc5574fa5d1265c5de4e0170, - limb2: 0xb413df354a2bb2, + limb0: 0xb047c044937b99ab9104d7ae, + limb1: 0x949a3cf5b836c2b04044cf2f, + limb2: 0x1337095b7cacb643, limb3: 0x0 }, r1a1: u384 { - limb0: 0x574b2d4c623e6c1ae744382c, - limb1: 0x9623f0a0cd88a35d0eb7acf8, - limb2: 0x240f88aa10c58170, + limb0: 0xe985612f2b99a2b71e3ae2ba, + limb1: 0x4cca5205bed3f1e9c56403a9, + limb2: 0x4338289e24fe1e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x772d53b94e08cb91f083d8e3, - limb1: 0x6b3ed177f24aaab5f4df81b8, - limb2: 0x14040f489f98adcb, + limb0: 0x61ef7c65799ff3f0d508bd10, + limb1: 0x8ceb75dcd1484320ee4d19e2, + limb2: 0x2233a4f232ea0574, limb3: 0x0 }, r0a1: u384 { - limb0: 0x8f51965951ae794287ff5d9, - limb1: 0xfc0c493f7618ddd0a07f2c41, - limb2: 0x79dcd968dc5c4ee, + limb0: 0xd3f75a0f767465449a7b747f, + limb1: 0x8e7a83c0b52fc14b98d8a2fc, + limb2: 0x6f4dcbc5a5fc75a, limb3: 0x0 }, r1a0: u384 { - limb0: 0xc8864ac9d621911afe220707, - limb1: 0xbc5574fa5d1265c5de4e0170, - limb2: 0xb413df354a2bb2, + limb0: 0xb047c044937b99ab9104d7ae, + limb1: 0x949a3cf5b836c2b04044cf2f, + limb2: 0x1337095b7cacb643, limb3: 0x0 }, r1a1: u384 { - limb0: 0x574b2d4c623e6c1ae744382c, - limb1: 0x9623f0a0cd88a35d0eb7acf8, - limb2: 0x240f88aa10c58170, + limb0: 0xe985612f2b99a2b71e3ae2ba, + limb1: 0x4cca5205bed3f1e9c56403a9, + limb2: 0x4338289e24fe1e, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7b23ddf12451594bd321b3d, - limb1: 0xc84b4f5aff1ef4cf7845be3a, - limb2: 0x2bbfe0869eb8486a, + limb0: 0xb0218c98a31a9008c29c55a7, + limb1: 0x603090637610abc078a9e37d, + limb2: 0x17822cdacf4f74b2, limb3: 0x0 }, r0a1: u384 { - limb0: 0x11f98c099eb62fcb082d7a28, - limb1: 0xa1a46646c42dfe9eb43665e5, - limb2: 0x28d077c62dd086d4, + limb0: 0x23d548a0944f8a21dd717202, + limb1: 0xa8378fa52cdc66eb6000ea03, + limb2: 0xf9e21213fd928ce, limb3: 0x0 }, r1a0: u384 { - limb0: 0x676a6ea5bdcfaa39f958314f, - limb1: 0x7db0059ed95c0ae65f7d33ea, - limb2: 0x7d957f5f2addb13, + limb0: 0x7f0e1c1296284fefdaf5977b, + limb1: 0xb7c443563cf486d514b4fa01, + limb2: 0x29d9616f816a966f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x57c0937b426386bd4615bbbd, - limb1: 0x5294016e27f8af8633d29672, - limb2: 0x29b8ec9055e32162, + limb0: 0x74d3f9844073ca14143cb7b, + limb1: 0x509b38baebf357554e345268, + limb2: 0x35e2b0bad13ccb3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x7b23ddf12451594bd321b3d, - limb1: 0xc84b4f5aff1ef4cf7845be3a, - limb2: 0x2bbfe0869eb8486a, + limb0: 0xb0218c98a31a9008c29c55a7, + limb1: 0x603090637610abc078a9e37d, + limb2: 0x17822cdacf4f74b2, limb3: 0x0 }, r0a1: u384 { - limb0: 0x11f98c099eb62fcb082d7a28, - limb1: 0xa1a46646c42dfe9eb43665e5, - limb2: 0x28d077c62dd086d4, + limb0: 0x23d548a0944f8a21dd717202, + limb1: 0xa8378fa52cdc66eb6000ea03, + limb2: 0xf9e21213fd928ce, limb3: 0x0 }, r1a0: u384 { - limb0: 0x676a6ea5bdcfaa39f958314f, - limb1: 0x7db0059ed95c0ae65f7d33ea, - limb2: 0x7d957f5f2addb13, + limb0: 0x7f0e1c1296284fefdaf5977b, + limb1: 0xb7c443563cf486d514b4fa01, + limb2: 0x29d9616f816a966f, limb3: 0x0 }, r1a1: u384 { - limb0: 0x57c0937b426386bd4615bbbd, - limb1: 0x5294016e27f8af8633d29672, - limb2: 0x29b8ec9055e32162, + limb0: 0x74d3f9844073ca14143cb7b, + limb1: 0x509b38baebf357554e345268, + limb2: 0x35e2b0bad13ccb3, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9d9790979ef48c788ea4955d, - limb1: 0xdc982da6931eca239d6d9103, - limb2: 0x1a2071828477978f, + limb0: 0x6895d5c4291d29c1c90b8953, + limb1: 0xec95b5c61ac9a8ad599c3e90, + limb2: 0x26c23e5359c522f8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc847082ce1f3fa2a58226ff8, - limb1: 0x598df850bafe01d9df99d945, - limb2: 0x1a306c8c822b459d, + limb0: 0x451a405ea85b8297b89b9359, + limb1: 0xdda7f09222f0158941fdd37d, + limb2: 0x1e02857c01f63f65, limb3: 0x0 }, r1a0: u384 { - limb0: 0x315854f3300343d5b3d8baca, - limb1: 0x201f79e2547617ed9bfb7949, - limb2: 0x2f5d4faf83959611, + limb0: 0x78ea9c3afbc18a4341693701, + limb1: 0x800b03441ee4cda73cff8138, + limb2: 0x1922d42efa24b0bb, limb3: 0x0 }, r1a1: u384 { - limb0: 0x725ad8212f8289871ac511aa, - limb1: 0x9bf41d12f055d6652215adc3, - limb2: 0xab7b0ec6eeda209, + limb0: 0x7853e7e04cc1bde8c9cc1cea, + limb1: 0x5522f8576b05dc4c847c56f4, + limb2: 0x215e2001892f4f2d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x9d9790979ef48c788ea4955d, - limb1: 0xdc982da6931eca239d6d9103, - limb2: 0x1a2071828477978f, + limb0: 0x6895d5c4291d29c1c90b8953, + limb1: 0xec95b5c61ac9a8ad599c3e90, + limb2: 0x26c23e5359c522f8, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc847082ce1f3fa2a58226ff8, - limb1: 0x598df850bafe01d9df99d945, - limb2: 0x1a306c8c822b459d, + limb0: 0x451a405ea85b8297b89b9359, + limb1: 0xdda7f09222f0158941fdd37d, + limb2: 0x1e02857c01f63f65, limb3: 0x0 }, r1a0: u384 { - limb0: 0x315854f3300343d5b3d8baca, - limb1: 0x201f79e2547617ed9bfb7949, - limb2: 0x2f5d4faf83959611, + limb0: 0x78ea9c3afbc18a4341693701, + limb1: 0x800b03441ee4cda73cff8138, + limb2: 0x1922d42efa24b0bb, limb3: 0x0 }, r1a1: u384 { - limb0: 0x725ad8212f8289871ac511aa, - limb1: 0x9bf41d12f055d6652215adc3, - limb2: 0xab7b0ec6eeda209, + limb0: 0x7853e7e04cc1bde8c9cc1cea, + limb1: 0x5522f8576b05dc4c847c56f4, + limb2: 0x215e2001892f4f2d, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x24fd638f7768a5053c747c1, - limb1: 0xd391dd220d70263ba9114e8, - limb2: 0xc96b39ecdb96da1, + limb0: 0x65a448f368d7e3710d14834b, + limb1: 0x635217dfd337f9702f6f17b8, + limb2: 0x1f198b90ceb4c913, limb3: 0x0 }, r0a1: u384 { - limb0: 0x91657c1f79a567bb661ae0a, - limb1: 0x35c0e62b1d7db350e0029696, - limb2: 0x14d1915d62661b56, + limb0: 0xc3121a907cd12018b69b9689, + limb1: 0x207cf7e3284727e26fd754ac, + limb2: 0x1a4bdc4230a7eaca, limb3: 0x0 }, r1a0: u384 { - limb0: 0x42fe05d924ec09f026cdee42, - limb1: 0x3c19fbad72c1a69c69629181, - limb2: 0x57d775c82d5d31, + limb0: 0x9e8b22d153fd9f376d04fa9e, + limb1: 0x2e0f764f2a5b9bc8cbeae1d2, + limb2: 0x4e8d3249f55523c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf8a198a019b94ebee52149d2, - limb1: 0x352ce2ffb490c06b3e613a9e, - limb2: 0x259c224ab58287e0, + limb0: 0x4cef4c06ff68887ba376225b, + limb1: 0x7735cbc71f1d2b17a44573e9, + limb2: 0x2a05c495aafd7d5c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2b6bdec5c5de3ee76830ab57, - limb1: 0xb394f6933f88a872a7653e6c, - limb2: 0x27c14a277989b187, + limb0: 0x2e7a68a41466b120e77eebe9, + limb1: 0x563464edeebd49cd3f67e57e, + limb2: 0x7e189b9f77aad5d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc4e2e24ffa41f5faf7b7e7b6, - limb1: 0xa23f573a14848dbf27826116, - limb2: 0x29e76fcb9fbcc492, + limb0: 0xfb61032838c8079f7a329f4e, + limb1: 0x73b431386643bf43a124cbf2, + limb2: 0x1139a0c85c4e9241, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe460c7637dbabffae04c6d8c, - limb1: 0xad3ca78b6b0cdf48f3145e3f, - limb2: 0x14879fd451e16fa8, + limb0: 0xdca1f77846c6cc5b9f674ad7, + limb1: 0xe9e20b17e38ba98ff1b54cc3, + limb2: 0xc4c3689d26c0ec3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xec6e08348dec27210791852a, - limb1: 0xc49847dbd669d0482d66862a, - limb2: 0x8bc4ccee588f9e7, + limb0: 0x9f13e9d499343802c309060f, + limb1: 0x899b15f47de2433dede1230d, + limb2: 0x6706a8a2263c125, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x24fd638f7768a5053c747c1, - limb1: 0xd391dd220d70263ba9114e8, - limb2: 0xc96b39ecdb96da1, + limb0: 0x65a448f368d7e3710d14834b, + limb1: 0x635217dfd337f9702f6f17b8, + limb2: 0x1f198b90ceb4c913, limb3: 0x0 }, r0a1: u384 { - limb0: 0x91657c1f79a567bb661ae0a, - limb1: 0x35c0e62b1d7db350e0029696, - limb2: 0x14d1915d62661b56, + limb0: 0xc3121a907cd12018b69b9689, + limb1: 0x207cf7e3284727e26fd754ac, + limb2: 0x1a4bdc4230a7eaca, limb3: 0x0 }, r1a0: u384 { - limb0: 0x42fe05d924ec09f026cdee42, - limb1: 0x3c19fbad72c1a69c69629181, - limb2: 0x57d775c82d5d31, + limb0: 0x9e8b22d153fd9f376d04fa9e, + limb1: 0x2e0f764f2a5b9bc8cbeae1d2, + limb2: 0x4e8d3249f55523c, limb3: 0x0 }, r1a1: u384 { - limb0: 0xf8a198a019b94ebee52149d2, - limb1: 0x352ce2ffb490c06b3e613a9e, - limb2: 0x259c224ab58287e0, + limb0: 0x4cef4c06ff68887ba376225b, + limb1: 0x7735cbc71f1d2b17a44573e9, + limb2: 0x2a05c495aafd7d5c, limb3: 0x0 } }, G2Line { r0a0: u384 { - limb0: 0x2b6bdec5c5de3ee76830ab57, - limb1: 0xb394f6933f88a872a7653e6c, - limb2: 0x27c14a277989b187, + limb0: 0x2e7a68a41466b120e77eebe9, + limb1: 0x563464edeebd49cd3f67e57e, + limb2: 0x7e189b9f77aad5d, limb3: 0x0 }, r0a1: u384 { - limb0: 0xc4e2e24ffa41f5faf7b7e7b6, - limb1: 0xa23f573a14848dbf27826116, - limb2: 0x29e76fcb9fbcc492, + limb0: 0xfb61032838c8079f7a329f4e, + limb1: 0x73b431386643bf43a124cbf2, + limb2: 0x1139a0c85c4e9241, limb3: 0x0 }, r1a0: u384 { - limb0: 0xe460c7637dbabffae04c6d8c, - limb1: 0xad3ca78b6b0cdf48f3145e3f, - limb2: 0x14879fd451e16fa8, + limb0: 0xdca1f77846c6cc5b9f674ad7, + limb1: 0xe9e20b17e38ba98ff1b54cc3, + limb2: 0xc4c3689d26c0ec3, limb3: 0x0 }, r1a1: u384 { - limb0: 0xec6e08348dec27210791852a, - limb1: 0xc49847dbd669d0482d66862a, - limb2: 0x8bc4ccee588f9e7, + limb0: 0x9f13e9d499343802c309060f, + limb1: 0x899b15f47de2433dede1230d, + limb2: 0x6706a8a2263c125, limb3: 0x0 } }, @@ -12176,4090 +12176,4080 @@ mod pairing_tests { let hint = MPCheckHintBN254 { lambda_root: E12D { w0: u384 { - limb0: 0xa067bc6ed72243a7647c9c9f, - limb1: 0x6f2824793024164b8e75e55e, - limb2: 0x11f88b1baa69a6c4, + limb0: 0x7162a3f16d45be7e705e6f8c, + limb1: 0xba9ec606f2cb317bba27a259, + limb2: 0x2a12b649f94c130f, limb3: 0x0 }, w1: u384 { - limb0: 0x531bb5ff6149478c9b353a48, - limb1: 0x3cde4e1f35ebfe771e657ce9, - limb2: 0x2b0331cc008943cc, + limb0: 0x978944354e09becd488a7e2b, + limb1: 0xcdedfa9b7f26b60c32d76c35, + limb2: 0x1c350e14ab8c56da, limb3: 0x0 }, w2: u384 { - limb0: 0x449f87c325a9c739d0c79b12, - limb1: 0x898dec5ceec5b09d8c7990a0, - limb2: 0xc82eb384c7fa346, + limb0: 0x1645ed1f334b9118e6035372, + limb1: 0x8f556c1119e8cded84a915cc, + limb2: 0x147541bb4431521e, limb3: 0x0 }, w3: u384 { - limb0: 0x525713cade40c6a9fd627613, - limb1: 0x712972182288d105ee7bf0dd, - limb2: 0xe8e20d0f81db654, + limb0: 0xca5c649846d97b27fe2e80e6, + limb1: 0x668e50513dde91962045627c, + limb2: 0x2ae99c9c59b5744a, limb3: 0x0 }, w4: u384 { - limb0: 0x80097fc4e74cd92c89b97ad4, - limb1: 0x2754aa87f87cf05ec20e591b, - limb2: 0x276574c3a79a1708, + limb0: 0x9fab71250e21890b0df3d9df, + limb1: 0xe832693f0a6ab8e42c086bbe, + limb2: 0x445014f49b8b79c, limb3: 0x0 }, w5: u384 { - limb0: 0x8fec45b9366ab142c11539e6, - limb1: 0xe2f04e65f1c2bd01068b2fc6, - limb2: 0xed4029188da4291, + limb0: 0x135ab378331781e545f852a7, + limb1: 0x4d836312638ef657d0e62ef2, + limb2: 0xd7dbcfd35fd140b, limb3: 0x0 }, w6: u384 { - limb0: 0x34faf6daa1f53a59155da67, - limb1: 0xc197413b87d21d7f9fde4882, - limb2: 0x15d93b70297ee7a1, + limb0: 0x345806d40dea325e4cd660a4, + limb1: 0xde20483f6f2c6c23bb2c85bf, + limb2: 0x15b5c34129231281, limb3: 0x0 }, w7: u384 { - limb0: 0x79f87d3a8287ffa5e44d0a72, - limb1: 0xedcf812b11debe5a4c4a6fb9, - limb2: 0x29252c0a39e11f94, + limb0: 0x954d63daaf1bf863bdcee957, + limb1: 0x46139c8690c802aa4e7dff49, + limb2: 0x2a1eda278ed51ed3, limb3: 0x0 }, w8: u384 { - limb0: 0xf95c59a06be2fbbe3295100c, - limb1: 0x412f6361f0cd0ca865b85a13, - limb2: 0xec7d58725ed3150, + limb0: 0x1c3fafd72a8cbb37832126c5, + limb1: 0xf62b628a3f0201d04670013b, + limb2: 0x17545446da92ca31, limb3: 0x0 }, w9: u384 { - limb0: 0x4155a67a8f077240b3fcf8a7, - limb1: 0xa368c965e4871e07204ac2d2, - limb2: 0x1bbf378b1257cc69, + limb0: 0x5073db98e30ca2d68f909908, + limb1: 0xe6c38fd40d94f42fda23b44f, + limb2: 0x2108da1da4ae0a91, limb3: 0x0 }, w10: u384 { - limb0: 0x5e319cad97de73d1adbb6a72, - limb1: 0x7aa9ab6281487cf9c4b9a57d, - limb2: 0x13c485d814cafd23, + limb0: 0x81b8744908e43c4a861855da, + limb1: 0xe67d5d74390ba67684128d06, + limb2: 0xd5e212ee63f1998, limb3: 0x0 }, w11: u384 { - limb0: 0x6c8fb2c3a65d6c07dc1f7872, - limb1: 0xca35043c2453724358c6c9fe, - limb2: 0x23be9c0d407754a3, + limb0: 0xd82da0145e5356aea4d19e7f, + limb1: 0xfd70cecd45b24c735c4085ff, + limb2: 0x166e000eb2fd6fd5, limb3: 0x0 } }, lambda_root_inverse: E12D { w0: u384 { - limb0: 0x651dad7e8e5cfc9267491909, - limb1: 0xc4e4b09aebc6b83c6a4a15ec, - limb2: 0x17cabf8dbf52dccf, + limb0: 0x1e0d8833112355b83886fdd6, + limb1: 0xb1d33cbe522f052457d0dfbf, + limb2: 0x7e60e48b1d3ab15, limb3: 0x0 }, w1: u384 { - limb0: 0x97017d274a55e79f38467902, - limb1: 0xabef5396209cc4a8c5c9ff2f, - limb2: 0x2ea5766de04949d1, + limb0: 0x1025afd15af8f8eb99121b56, + limb1: 0xcc379fbc889e153bc856bc76, + limb2: 0x80a0578e49d4e5e, limb3: 0x0 }, w2: u384 { - limb0: 0xfaec6c64aa492ef400d7c691, - limb1: 0xf0d817764f16dc8bcdf9e885, - limb2: 0x1623c4780ae895a3, + limb0: 0x6870d76c3632dd12d7877d06, + limb1: 0xfe3347aa2ecc9a2137ef36be, + limb2: 0x23ca1b6246a25ea2, limb3: 0x0 }, w3: u384 { - limb0: 0x19c61393a6bfcb8d0625b843, - limb1: 0xa275df8fa06e1aa5f85bed85, - limb2: 0x8a2882291224b5d, + limb0: 0x74de628f615099978913fe1d, + limb1: 0xe08aafa9bd494e2fc306b6a0, + limb2: 0xa6bf773794d83c2, limb3: 0x0 }, w4: u384 { - limb0: 0x44f41a9a53b542e1da5e2a5b, - limb1: 0xaacff3629adb50eae7d5e7a1, - limb2: 0xf25b0b8968609ce, + limb0: 0x1dca32da93926687c4168b02, + limb1: 0xf856c88d1ff648013d393b88, + limb2: 0x20b936960969e463, limb3: 0x0 }, w5: u384 { - limb0: 0xec13c380354fc45708d67e57, - limb1: 0xd4ed999a0267b7cf45d19f7d, - limb2: 0x1c140a8613f09adf, + limb0: 0x792e7c17bafcb28241b3b7c3, + limb1: 0xcfcad2dc0e1a448896b143c0, + limb2: 0x1261ddd63053731e, limb3: 0x0 }, w6: u384 { - limb0: 0xa0f0352107ce8aa786590480, - limb1: 0xdac55c6e4230ddfe13a48bc3, - limb2: 0xf6e89319074ccff, + limb0: 0x1af60382c323e9818a7b9fa4, + limb1: 0xdbec8d9963a517a3268bf01b, + limb2: 0xb7b01417ccc561e, limb3: 0x0 }, w7: u384 { - limb0: 0xbd5d25da3f04f061b4162df3, - limb1: 0x50599acd4d24a2e37d3f6b9c, - limb2: 0x7ae00235fa44c4c, + limb0: 0xb6548d4b9cb7ccd9db1349c9, + limb1: 0x166d9dddd322e8dd9d8df0b0, + limb2: 0x19ac614f42c6dcd1, limb3: 0x0 }, w8: u384 { - limb0: 0x9d364b1251317327fb18417e, - limb1: 0xac2365512783dfb701f7ac9d, - limb2: 0x34c0e2b7df0452, + limb0: 0x789161742cbe9b9ab8a9b3e2, + limb1: 0x63c57ea9cd2b00e09f716486, + limb2: 0x4f16376da967602, limb3: 0x0 }, w9: u384 { - limb0: 0x76730b57d9313c5e03dedfa9, - limb1: 0x427baf4a8d79b66568870a66, - limb2: 0x25e7dcf041ba94b4, + limb0: 0xc3064a7633503ac98cca8ee8, + limb1: 0x796f4bbc343732c7b4845c92, + limb2: 0x40548bf4b7f2316, limb3: 0x0 }, w10: u384 { - limb0: 0xb7a453b3483db9c976d9f286, - limb1: 0x6547ed4f325cd80e51de23c5, - limb2: 0x1608e103df9e0901, + limb0: 0xbd4e8f7392c1c0c6d9813677, + limb1: 0x3e8fefa720339ece628ee667, + limb2: 0x13bea0b881ac0821, limb3: 0x0 }, w11: u384 { - limb0: 0xe10862d531b00bb74c930ae8, - limb1: 0x93ea69155ae88bbc51e50315, - limb2: 0x10cf1ba3c662a572, + limb0: 0x59ef05f4bacd367012fd50ca, + limb1: 0x602d130283b14bf02596c310, + limb2: 0x16d42f33b956640d, limb3: 0x0 } }, w: MillerLoopResultScalingFactor { - w0: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w2: u384 { - limb0: 0xc2778d80388a54eae80e565b, - limb1: 0xf25dc130d86b34cb0fbe750e, - limb2: 0x2d47bdc1ad79a2d8, - limb3: 0x0 - }, + w0: u384 { limb0: 0x1, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w2: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w8: u384 { - limb0: 0xa228aa43fdb7f215226ece12, - limb1: 0x22463bd8b6519b59af036109, - limb2: 0x10bd041a04b54229, - limb3: 0x0 - }, + w8: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, Ris: array![ E12D { w0: u384 { - limb0: 0xf097f73a3db8466fd0945577, - limb1: 0x51a290b6a4193e3bac8200f8, - limb2: 0x259b9a0e7ac425ca, + limb0: 0xce467d0bc9fe027b303a49e2, + limb1: 0xf13f3c96ea4ca9d9e34ef6b6, + limb2: 0x2c9d08a57ada764, limb3: 0x0 }, w1: u384 { - limb0: 0xfa47bffdd7cdaa45b334741b, - limb1: 0x1d6d7038d0faf1befebffd8f, - limb2: 0x1e16846b2b96767c, + limb0: 0xd66ab54cfdd35d749276aa0, + limb1: 0x9e88c6df2a6ff7df6317918d, + limb2: 0x13752d181056ae5f, limb3: 0x0 }, w2: u384 { - limb0: 0xe7463400a7082ea0853884a3, - limb1: 0xc64dd2d59566d78388a7adaf, - limb2: 0x1a3f996155748447, + limb0: 0xa768577df8cd519ff14d569b, + limb1: 0x89bb08e3d27f94460d790831, + limb2: 0x26c47eb7ad21b651, limb3: 0x0 }, w3: u384 { - limb0: 0xe52b76344c4a1bf9ffc3a9c, - limb1: 0x30892b1d5412d29253ec400, - limb2: 0x15573423e51958bd, + limb0: 0xea7c206e9e8cc4f720d7d194, + limb1: 0x75e7058bbab3f2abefa64b01, + limb2: 0x1bc56ef46e2c8c8f, limb3: 0x0 }, w4: u384 { - limb0: 0x865e8c900a85b1b4ecb80264, - limb1: 0xd63357cf53feb28077296cf3, - limb2: 0x10446d10c3cb38d4, + limb0: 0x8fcea246b2c25d3f3319567f, + limb1: 0x984b255998fc9568a8f3f8bf, + limb2: 0x2868e92a1af93871, limb3: 0x0 }, w5: u384 { - limb0: 0x180fb181fd0e4b13a578f375, - limb1: 0x3563675089d89cd0ef8ad094, - limb2: 0x2b0ee980943e22a3, + limb0: 0x2bd97c6a1efb77518592cdc, + limb1: 0xa8dc856d9711044b0ebcfdb0, + limb2: 0x817d0618ea7138c, limb3: 0x0 }, w6: u384 { - limb0: 0x852c1242e41b702c0fa5fa81, - limb1: 0xc08b9d95101eecacf1184fdf, - limb2: 0x2aa0ef786e48ab7a, + limb0: 0x94885f295686034d2f459adf, + limb1: 0x8ff015ebc6aff6861ae55e3a, + limb2: 0xcc067028283cc11, limb3: 0x0 }, w7: u384 { - limb0: 0x983f65aecbde014b25a7d6f9, - limb1: 0x67be635b27f36367ad18f04f, - limb2: 0x2f0103b9367bed7a, + limb0: 0x5a33b96cfcfd414df56c16d0, + limb1: 0x66a568d198d6cbab2b56db77, + limb2: 0x10b975eb92902957, limb3: 0x0 }, w8: u384 { - limb0: 0x3fb384d7d3b7768d2e82d079, - limb1: 0x2c0ff8c23be3694f2304db23, - limb2: 0x16fd06ed83d08550, + limb0: 0xd3f1c97d8b2a1a2658226360, + limb1: 0x1761fbb65994c6043f6f4f9a, + limb2: 0xca82dd0f05bedd2, limb3: 0x0 }, w9: u384 { - limb0: 0x454210bb79b8db51c3b27e6a, - limb1: 0x54421e2127c5fb9ae68e3bda, - limb2: 0x2d5fba825a65fe4c, + limb0: 0xfbacb5e7c31571613e4203ad, + limb1: 0x6bf6e5059ea4fe4543795de2, + limb2: 0x1ff3179e30d3707f, limb3: 0x0 }, w10: u384 { - limb0: 0xbf608a518c87ccce5d0dca72, - limb1: 0x6f6aef156e3deaaf6b039281, - limb2: 0xc9b25aa71ccdb52, + limb0: 0x7972fe2156fe70a32d0a5c46, + limb1: 0x21a5730a54016c556cff7273, + limb2: 0x9f5d6867f404e1c, limb3: 0x0 }, w11: u384 { - limb0: 0x63890bd058e7f84999bcce2c, - limb1: 0xd28ed29246268b5fe70476c1, - limb2: 0x3cc4acaab397b9e, + limb0: 0x9a0ca9b35e7bdb3449eb314a, + limb1: 0x570cfcb7e631dee1f5d91640, + limb2: 0x25702e4504db90, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x30b8e53fb22a2af904700efd, - limb1: 0xd46378205c378f53aea3cf5, - limb2: 0x36333c0067bff76, + limb0: 0x90507cc5947fe2dcbe639328, + limb1: 0x5587bcd425e8a5d12e7e54ab, + limb2: 0x9121ad45dfa0da5, limb3: 0x0 }, w1: u384 { - limb0: 0xb41e8ab524ca19e52d85d153, - limb1: 0x35863daeb6c7a22a3c9bf6b1, - limb2: 0xf1a193a7ca148bc, + limb0: 0x364707c8f12db60b6645efd4, + limb1: 0x3e7b812d150f29f0c93f09f3, + limb2: 0xd6cd6619ab362c6, limb3: 0x0 }, w2: u384 { - limb0: 0x61475ad3adb5d882e68576a5, - limb1: 0x8e25cb723313df3a1e805571, - limb2: 0x193fdd8d4805f713, + limb0: 0xbb44bbdedfbcf9069f6687de, + limb1: 0x2263934d32e4a5ddb8335a2a, + limb2: 0x1e0f7799e802b338, limb3: 0x0 }, w3: u384 { - limb0: 0x969e3bb9a1c7d6279b6a0fa1, - limb1: 0x2c9b320d05af07515ea1450b, - limb2: 0x17f2fb378e77765f, + limb0: 0x8a2cd2bd08752b5903eba84f, + limb1: 0xa2764fd40ce834550af6afdc, + limb2: 0xed98080e5a62174, limb3: 0x0 }, w4: u384 { - limb0: 0xe8fd8fe6695de2afae26391d, - limb1: 0x22abcdabab5b46ef17e79f26, - limb2: 0x243b487a5cf283da, + limb0: 0xb120aba6313a0b65fb94e8fb, + limb1: 0x9fc437db1bf5a9a298b6360e, + limb2: 0x13d821aadd26f0f9, limb3: 0x0 }, w5: u384 { - limb0: 0x883064cb994aabd95ee7106f, - limb1: 0x1f4538ada692a8c9adcf427a, - limb2: 0x236e17ded8aecaff, + limb0: 0xe33c457888b1783bc2edd542, + limb1: 0xc4ee4375349173a0b5c9150a, + limb2: 0x2c5dd610b0245759, limb3: 0x0 }, w6: u384 { - limb0: 0xee0bb7aa7aa8268aa95514fb, - limb1: 0x63989933e8d3ea34a02823d9, - limb2: 0x24bfb812d4f078ab, + limb0: 0xc3fc4f326d227f86f55e9299, + limb1: 0x675c0843f1087f1ef75edc3b, + limb2: 0x10af71eb06c2aab9, limb3: 0x0 }, w7: u384 { - limb0: 0x92a5891afd10be42b8ccbd0d, - limb1: 0xb08da7a3130408b24ceeb81c, - limb2: 0x19ea63159481aedd, + limb0: 0xb84d6342b48faaa161b15746, + limb1: 0x48a1298bfebb34fba9cd494d, + limb2: 0xad7b37fd137c3ff, limb3: 0x0 }, w8: u384 { - limb0: 0x293d7050ed7cc961691d0567, - limb1: 0xa1e7be151e4d1f3d470c8324, - limb2: 0xcd4218a025e4428, + limb0: 0x126c61fb48e1e87b3316fbe3, + limb1: 0xc9fb2ac0db16d1cf8f4a51db, + limb2: 0x29df52fc3c63dd8b, limb3: 0x0 }, w9: u384 { - limb0: 0x96d6132d67067913c3c4aa8e, - limb1: 0xe2fc8dd841497b5827f021ad, - limb2: 0x6604d1b5245cb1d, + limb0: 0x474d43ea23ab0fb3935dd42c, + limb1: 0xd57ac64f69a786e0ff90a1a0, + limb2: 0xc2ed219326e18be, limb3: 0x0 }, w10: u384 { - limb0: 0x16769b439fec2bc3a05ffcd4, - limb1: 0xaf43cc985a615dc230702cb8, - limb2: 0x2a132f2bbe2fef, + limb0: 0x658f0bcbbce333b5372da731, + limb1: 0x4835b7281cb6a5eeac82344c, + limb2: 0x9d880ed0ceabdc6, limb3: 0x0 }, w11: u384 { - limb0: 0xf5df5373e82cb10e96a2b05d, - limb1: 0x36338729a5d0542b56e7a0a9, - limb2: 0x2d32d8bfa502fb29, + limb0: 0xa66d06735af0fca9cace2a17, + limb1: 0x7cdecd6b46bf201257352517, + limb2: 0x130000e243cf7f7d, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xad7f52314ccae015b1b5f208, - limb1: 0x452e5959d7b5f8f606678a53, - limb2: 0x344131b87eed54e, + limb0: 0xf601c1826a7d198bb9712ff5, + limb1: 0x4a4454dd284fb8b491a8d9b0, + limb2: 0x1b2c357a877ec341, limb3: 0x0 }, w1: u384 { - limb0: 0xaa7c52593fe6dae875b1788b, - limb1: 0x99008ad53cee34763cac57a, - limb2: 0x1dd589cbce6e6c75, + limb0: 0x40ae72a030aab4763b734b2d, + limb1: 0x9d6275828156a7ecd382ce82, + limb2: 0x81015b194039174, limb3: 0x0 }, w2: u384 { - limb0: 0xa5f81e09cc00650c88dc353e, - limb1: 0x464ea86f7d3859f22bd6bf0c, - limb2: 0x201877fdc85bad86, + limb0: 0x5bf61180a5b60ded2f5462c8, + limb1: 0x83bf5d678fcba384aae2a818, + limb2: 0x26c516c4fcba006f, limb3: 0x0 }, w3: u384 { - limb0: 0x42f56733c2b344573d067a0c, - limb1: 0xfd169129847186c519fdbde8, - limb2: 0x302d3dfede076efd, + limb0: 0x72436b830d2140a2fb8f680a, + limb1: 0xc899fc2fb7021aafac4f0077, + limb2: 0x2541c950e657dd51, limb3: 0x0 }, w4: u384 { - limb0: 0xa2984e6abf96aecc878b872, - limb1: 0x5933bd0436768188457a752c, - limb2: 0x1cec9a60c3909dcb, + limb0: 0x75103ba74eb15209def40d0a, + limb1: 0xeaf7bd18eede9869fec0b8fc, + limb2: 0x27a8869e7a1c99b, limb3: 0x0 }, w5: u384 { - limb0: 0xad1c2a060ad97b8a4dee7947, - limb1: 0x3b6591101306a80e6fea0d2e, - limb2: 0x18295fce9a39a19a, + limb0: 0xbec796ec674761257ea5e2f5, + limb1: 0x5b02e6ac2038fd6e7f426d9, + limb2: 0x1081bc392588c363, limb3: 0x0 }, w6: u384 { - limb0: 0xda49b10052af80088e49dc52, - limb1: 0x153bc787c3bd40ff80dd0649, - limb2: 0x1b4c6275cce36769, + limb0: 0xeb0e6be9cd9f39e4ee25b553, + limb1: 0xd4f447c6d154d7ae04d19a11, + limb2: 0xd74bad06f28d8de, limb3: 0x0 }, w7: u384 { - limb0: 0x830036d2e51ff470a0d89051, - limb1: 0x75eeaec006c4383c81341cbe, - limb2: 0x214960cae1d603ac, + limb0: 0xd28c3f9d564cab44c228d525, + limb1: 0x8faacaad122d221aa1b92840, + limb2: 0x1c298d1bcd1d26, limb3: 0x0 }, w8: u384 { - limb0: 0x5a24fc11bdd8aef5e90cb35a, - limb1: 0xfa7a2a65a9f0a97a73b1195, - limb2: 0x2ff0a3fcd049bcad, + limb0: 0x4e0fad1c33c8cc107e762dac, + limb1: 0xd4de0631e783a6f06a0b6112, + limb2: 0x17da6e630ea149ae, limb3: 0x0 }, w9: u384 { - limb0: 0xe4fb9157225b894bc748ca1e, - limb1: 0xe5fcbf25d878939d9355d7ed, - limb2: 0x2e01d29fb3204cf1, + limb0: 0x674e6bfde281f53e27dd0171, + limb1: 0xb277fa1acaf2fcb22194e8ff, + limb2: 0x5f20d4e1911b5e9, limb3: 0x0 }, w10: u384 { - limb0: 0xee2be5cf74e1501f2cdacd92, - limb1: 0x13de5c5782cd86ce01a9b92b, - limb2: 0x285a21356adda785, + limb0: 0x8aa579bd51ca76ec90a26c25, + limb1: 0xde553861d86a09b6fe284d2e, + limb2: 0x2dd4484c6d42e5a4, limb3: 0x0 }, w11: u384 { - limb0: 0xfaed7994b4a78619972bcf4d, - limb1: 0x7e361fcc0f73134b30a7d24f, - limb2: 0x2717700eaf9809c3, + limb0: 0x51864cc6e74f83d8a14408c1, + limb1: 0x7464828c0f065da754138c99, + limb2: 0x2267af3c46da6b6e, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3cc0af1e5c9e36ab2804c8, - limb1: 0x2b05b9b66f976f42a52251db, - limb2: 0x2bbe8c365bdc42db, + limb0: 0x8d04c25ecb1ba78b8ea37566, + limb1: 0xd3fa52295924a03a6c42387e, + limb2: 0xfcbe3651eff7cc1, limb3: 0x0 }, w1: u384 { - limb0: 0x5216d611c82bdd420fcac615, - limb1: 0x38d3ff037f71fc3f9caf7bf, - limb2: 0x88fddb7774d40ad, + limb0: 0xa9d6c5fb6f701af37e553191, + limb1: 0x7b3edbb656fe84491f3c66b5, + limb2: 0x2b6b696050eba46c, limb3: 0x0 }, w2: u384 { - limb0: 0xf3066cb9ce00c9bb3e6f41be, - limb1: 0x674dbae57d0f8cd2a6d2ad15, - limb2: 0x49a7d9537f7c955, + limb0: 0x4d5c56b4cf9ee52b1b779d3, + limb1: 0x95c68089f189c0c4d50083e, + limb2: 0x2a38f13dc2b9c595, limb3: 0x0 }, w3: u384 { - limb0: 0x7a2a021730fcf374e4a06148, - limb1: 0x945e75409eca8518d44670fc, - limb2: 0x1f9c6dc2ac15e831, + limb0: 0xc3ce5b7c81e2cbb1dbfd70b8, + limb1: 0x97c33e63bf773636e5ae8b51, + limb2: 0x5f0fff86fd1292d, limb3: 0x0 }, w4: u384 { - limb0: 0x24efb3009993bffd30740f3, - limb1: 0x375037b3e80d6bb10b9038c1, - limb2: 0x16b927ad2e8f4506, + limb0: 0xd31f10152ae57ee1a4ce3db1, + limb1: 0x45d5b1be74a5b60be5907208, + limb2: 0x2e2d890331b94d75, limb3: 0x0 }, w5: u384 { - limb0: 0x861a0bfbe4355aefc5cc0eac, - limb1: 0x89b080639f541695913b0aa9, - limb2: 0x25918a83adcc9d89, + limb0: 0x396c100afd746e78ee8223c9, + limb1: 0x85a612fe921ee91bd52ed377, + limb2: 0x1326c24601bbaa56, limb3: 0x0 }, w6: u384 { - limb0: 0x3ad68dee22b4dcda028a54b7, - limb1: 0xcfae434db65676751fb1ea0, - limb2: 0x93eb257e5fcfe5f, + limb0: 0x65008018c6cac736b2d1ea97, + limb1: 0xa3ff8a488646d3d5ee54f2a1, + limb2: 0x1dd51590ffd24c88, limb3: 0x0 }, w7: u384 { - limb0: 0xae407eca550e66147a878f47, - limb1: 0x7b0f0df966eb6b2ae48ffe4f, - limb2: 0x3a7df0310e09887, + limb0: 0xc3afd18fa472bc8c17555e88, + limb1: 0xf12309125a8b4c70b01b456, + limb2: 0x15b4f01af036ceb2, limb3: 0x0 }, w8: u384 { - limb0: 0x101385609d7dac4b48dba897, - limb1: 0x90306cc7bf2ab1a7f89520a0, - limb2: 0x538e782b5c05d49, + limb0: 0xf09c3c8a0f2af3d3e48eef85, + limb1: 0x968b474002cfba089f9c0281, + limb2: 0x10c94bcf2dd36f03, limb3: 0x0 }, w9: u384 { - limb0: 0xdfa4ced78cbaf4350ca24249, - limb1: 0x605c110ba53c7cf793a43c85, - limb2: 0x2f12a2a16ea88886, + limb0: 0xf7614f018fdb7730872eab22, + limb1: 0xf0e905108e4e4c6ab44a1b2f, + limb2: 0x2fe2c040c2a80fda, limb3: 0x0 }, w10: u384 { - limb0: 0x443883c624e6c2d08927d99e, - limb1: 0xdb323395cc47752de12e8369, - limb2: 0x2410637ff63e3cad, + limb0: 0x859cd56cc588b71941dc1437, + limb1: 0x9310800edc15df5e3f53482a, + limb2: 0x1493422450a54ae2, limb3: 0x0 }, w11: u384 { - limb0: 0x36aadbdc3b6ad51849deb096, - limb1: 0xcacc47cc5f7f1c4f3613e318, - limb2: 0x188c5cadccafcdd, + limb0: 0x951b5efb52bdbb0d60bfe50b, + limb1: 0xf5b893473ef6bfa59aee8390, + limb2: 0x2e4abba89e9b1b35, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1767ce85301c965b976fe113, - limb1: 0xf0074dead58405cbc0d68eaa, - limb2: 0x1fc4b221cbdd3231, + limb0: 0x1700f1780ab227e14d141448, + limb1: 0x5be1c50026a64057dbd25159, + limb2: 0x1644a533b348e30d, limb3: 0x0 }, w1: u384 { - limb0: 0x76719667212ff68b949b3a8, - limb1: 0x6c885f5e373f82cf192ffc7c, - limb2: 0x2a9087e1b6f4b74a, + limb0: 0x69f6afd4e0bc846c15e5442d, + limb1: 0x7bf63cee78b8b1aa0d206f96, + limb2: 0x11b78eed672a6fe7, limb3: 0x0 }, w2: u384 { - limb0: 0x11e75f5d59e25d209fc13621, - limb1: 0xee8877bc25a253d18f9352a0, - limb2: 0x2fb2d1c0ca9563ec, + limb0: 0x96b6d32c91209ed9aca8e86f, + limb1: 0x1155c6fb69e1f91ea58184b9, + limb2: 0x13ac047fcd1f3f0c, limb3: 0x0 }, w3: u384 { - limb0: 0x8fd0471adbbe7a880c491a6b, - limb1: 0x1ee2a123be4437fc54176ebf, - limb2: 0x12714a2535a1c948, + limb0: 0x304dd611ca78325543030d67, + limb1: 0x77527e527c0c191a56e7a35c, + limb2: 0x80edd08ef932923, limb3: 0x0 }, w4: u384 { - limb0: 0x115d9133f86fe982351d59f1, - limb1: 0xcf2ddef20877c592c3a04fed, - limb2: 0x585fcac0573ba0a, + limb0: 0xede22eb525821c4b63747863, + limb1: 0xb0a134647ca1693ba3d895d, + limb2: 0x2c68f94f162da8ae, limb3: 0x0 }, w5: u384 { - limb0: 0xc74d7e3d9901c2a770c06ccd, - limb1: 0x8c5f117cc6cf5f7c1caca603, - limb2: 0x169a0ec213f57eae, + limb0: 0x2624e84207c3292f70a63611, + limb1: 0x70c9a4a5b1328712fa09afce, + limb2: 0x2a8db8e11a7e3307, limb3: 0x0 }, w6: u384 { - limb0: 0x5101cea2dfb1f39e41c0d165, - limb1: 0x6fc5a35fff0377955435873, - limb2: 0x125b0eab49fd8775, + limb0: 0xfbad333b1b29119596d5f82c, + limb1: 0x8e77167463d2e12e981586ed, + limb2: 0x75aa4af2b7e81bf, limb3: 0x0 }, w7: u384 { - limb0: 0x211f4a34f234a4405603451, - limb1: 0xe86a13027fe00c1b380a216d, - limb2: 0x14443d5d45202e0d, + limb0: 0xd98b42543176a7f880d547c3, + limb1: 0x5ac84d04056abcb4fd2209d0, + limb2: 0xfe5895993e7a5f6, limb3: 0x0 }, w8: u384 { - limb0: 0x7140556b7e0cfbc2467eeeba, - limb1: 0xdc5f14d585069ec4a282756c, - limb2: 0x250bffe5f4338b67, + limb0: 0x5de8a818b736a85baf58f71b, + limb1: 0xabb952411e73c6ea4150ec20, + limb2: 0x124a9e474789885, limb3: 0x0 }, w9: u384 { - limb0: 0x35dd541161363984cc9cf7b5, - limb1: 0x4e207abaa6ab6f357c27076e, - limb2: 0x2ae83920f6c52bf2, + limb0: 0x1a22750c015995559322e8f, + limb1: 0x2d8958f21c4e267bfe51497c, + limb2: 0x1b97440e3728f207, limb3: 0x0 }, w10: u384 { - limb0: 0xacbe15e60758118320bd8fa, - limb1: 0xfbe53a016766dd12d6ef7a0d, - limb2: 0x234053cab0e5954, + limb0: 0x635c45bf2feb502ea2d6a986, + limb1: 0x149148f08a4bf10b0c05998d, + limb2: 0x1165cf4c776328d8, limb3: 0x0 }, w11: u384 { - limb0: 0xd05e516970763421124622d0, - limb1: 0xab02159a7e8897107fb1deda, - limb2: 0x24efccfaa37bbcba, + limb0: 0x4eeef1fb47d46de76424d1d8, + limb1: 0x310db87b28d8852d47158b2f, + limb2: 0x2d5213497baa0eb1, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xc827ee33bc6bbda10c4d0d7f, - limb1: 0x647d8555021ddf82eb43b238, - limb2: 0x23ffdd8abda91e2f, + limb0: 0xdcc3103b70d027f2fce4d06d, + limb1: 0x563cc5316b59a0f95194cdf5, + limb2: 0x186d50d1fec85ecc, limb3: 0x0 }, w1: u384 { - limb0: 0xd6c6f79e2f39d717580a4b8f, - limb1: 0xe5b18610f5ec38c7f844f7e, - limb2: 0x22b87c4649cba529, + limb0: 0x9de190afd639c486b25836e8, + limb1: 0xf02842e6f413ced385e773cd, + limb2: 0x1ed861810c6eb0ce, limb3: 0x0 }, w2: u384 { - limb0: 0xe5b58a672597e68f0c7394df, - limb1: 0x9a35a2989f2097fb00a9f24a, - limb2: 0x2bedd6a17fa3863, + limb0: 0xc91a8e105d3781051f466ca9, + limb1: 0x786f13c97f557de8eb8435d7, + limb2: 0x2ee07075cf5d4aac, limb3: 0x0 }, w3: u384 { - limb0: 0x97caba7047342e8e457dafac, - limb1: 0x84ff9568d38911675a8a3373, - limb2: 0xa25e346cc39c480, + limb0: 0x3505e8580e427c7f885102c3, + limb1: 0x98fa98bd75a420a6102a7442, + limb2: 0x1fa302dc853ddb52, limb3: 0x0 }, w4: u384 { - limb0: 0x1185e441f6dcd50b54a71ea9, - limb1: 0x113292d1472e8aafef3cdac0, - limb2: 0x27074c83a781e211, + limb0: 0xe2da284fcce7047d2b505bd2, + limb1: 0x9fadf03e5e86713a054dafae, + limb2: 0x99cc8221ee7c1aa, limb3: 0x0 }, w5: u384 { - limb0: 0xcb067765a7ebaf8e42ae5e3c, - limb1: 0xf6a2e39f3dd2b61106802962, - limb2: 0x284d71bc38108c88, + limb0: 0x96accde98062f20c81c30d9f, + limb1: 0xa5be52c0aa2c0e7b2578f127, + limb2: 0x2f4f5bccc837d7c, limb3: 0x0 }, w6: u384 { - limb0: 0x9839ba660d0e918611fd460c, - limb1: 0x6bbb4bf42e3d00ee7fab63cf, - limb2: 0x2c58dc7d7274a333, + limb0: 0x7ce16312e3421f074b644f60, + limb1: 0xe798893b556623da4509615a, + limb2: 0xb93dcb991d18491, limb3: 0x0 }, w7: u384 { - limb0: 0x6ee4666ab19d4259e6c1a7af, - limb1: 0xe3e3a4c5e42bece2e32d4c87, - limb2: 0x2aba985e97419fb4, + limb0: 0x22b4ad60cf0f4301a85e6ef3, + limb1: 0xe9813dfb20da2137a21378e3, + limb2: 0x88930a93e90c146, limb3: 0x0 }, w8: u384 { - limb0: 0x2925d7545944bad806a8ceff, - limb1: 0xcf6e7aeb8e96abe7b61aabfe, - limb2: 0x10108c42aea869a9, + limb0: 0x49b2dcc8984511daa1560ae0, + limb1: 0xcee2a2f0251243afbd011d8e, + limb2: 0x28628066219d3b64, limb3: 0x0 }, w9: u384 { - limb0: 0xc9e7d3dc4360838a04d12c3b, - limb1: 0xb26387d95568e6510b767b42, - limb2: 0x150c3a6b1daea166, + limb0: 0x69c9a1c782d4e8449f47b658, + limb1: 0x2d622899959bce5a38a20fd, + limb2: 0x1dddbb035dbc8f3, limb3: 0x0 }, w10: u384 { - limb0: 0xa502f5d4985f261d41fe410a, - limb1: 0x8fa078cbb3acf1af0b9ddf23, - limb2: 0x2e92c55e03b6c844, + limb0: 0x773af730fa7f3158563a9bc9, + limb1: 0x652478913a09d8c44994f185, + limb2: 0x73cc06c6dba3cbb, limb3: 0x0 }, w11: u384 { - limb0: 0x4ed4006b96ad39bf2e260e30, - limb1: 0xde2ed57d8871a623b49fa64f, - limb2: 0x12862444b632b10, + limb0: 0x636a765e13a7acf068bddc91, + limb1: 0x7ad9b45b9d00e147a4a70e7d, + limb2: 0x1b125ae5b4befdc7, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa8e6ae656104968cfea099d3, - limb1: 0xb8125e78b8f87d60855804c1, - limb2: 0x158e9887234dcdf3, + limb0: 0x1101d12d870bf89597896a5f, + limb1: 0x6068c2fef72b9fede8f98b2b, + limb2: 0x1da3ccbf70793b4b, limb3: 0x0 }, w1: u384 { - limb0: 0x88f2ddbb898f0f2feaa7bf8d, - limb1: 0xff338b73f809b6798ca0834a, - limb2: 0x2d988ce09f6d482a, + limb0: 0x6c77c8e4e07314bad629434e, + limb1: 0xd48522742a712bfee4f02f4d, + limb2: 0x1ab18e320351912f, limb3: 0x0 }, w2: u384 { - limb0: 0xdff5957018bc20d61d4ce195, - limb1: 0xe794136c7ba5d512bc047f3e, - limb2: 0x21942b1fc6dcb31e, + limb0: 0x94a4011f466711585535fff7, + limb1: 0xb3ec876bfd5e93dc0d98330d, + limb2: 0x2e961f17fa4a669a, limb3: 0x0 }, w3: u384 { - limb0: 0xc5454b11503f25e0d601db22, - limb1: 0xa643548f3ba8a7a88ebe9123, - limb2: 0x28d0e0a8c15dfb, + limb0: 0xa10c8c18dc0cd33dca2a0b78, + limb1: 0x216250a35c8ab180b88fa2d, + limb2: 0x13783a1edd86ed0b, limb3: 0x0 }, w4: u384 { - limb0: 0xaf4a6e78481b932dd7199b13, - limb1: 0x630a68ab29c8bbca6f446314, - limb2: 0xa1bab64fe18f93f, + limb0: 0xf370ee07b112cb890cf94caf, + limb1: 0x9aeef8c62fa6356458d128f4, + limb2: 0x12b869fa76030912, limb3: 0x0 }, w5: u384 { - limb0: 0x82c2dc6c3a27204e61df7b4b, - limb1: 0xa3b76d5c3976bb758243305, - limb2: 0x8176e40b4c2a093, + limb0: 0xd57297e640897acad43686f1, + limb1: 0xdb90eca57bab38d92e02a0f6, + limb2: 0x2605945c94928153, limb3: 0x0 }, w6: u384 { - limb0: 0x870c8d480e064c1a24fbe9de, - limb1: 0xbbd8aa2eafe2da5748c66862, - limb2: 0x278561aa1b3d31aa, + limb0: 0xfd3d64081d5c4cd9170fd24b, + limb1: 0xaa9adf8fa1ffcab9025df55d, + limb2: 0x2fde50a467d784b8, limb3: 0x0 }, w7: u384 { - limb0: 0xf3685353edde702924ac383d, - limb1: 0x10731b1d85de3f673dbac930, - limb2: 0x1627c562fbe1f00d, + limb0: 0xcb5bab65c464a4dd327bb27, + limb1: 0x81fed11e213c0da2b2df0c21, + limb2: 0x29c548cea68b2c48, limb3: 0x0 }, w8: u384 { - limb0: 0x5ca997229680d956b431cf4f, - limb1: 0x86e14b607bef7a11c395bf90, - limb2: 0x1981c0c3721a3379, + limb0: 0xc9c7857f4df8694a6c4abb6, + limb1: 0xe18f3179c9ab4ee26890f45e, + limb2: 0x28321983e251934b, limb3: 0x0 }, w9: u384 { - limb0: 0x9e41676a5f6ede81c14d361b, - limb1: 0x15255f80c37c1cd6d5c8403a, - limb2: 0x28afc7d2aaedbded, + limb0: 0x807b77e59a7f7bfd81e4e531, + limb1: 0xf8208478a796425d9039781b, + limb2: 0x1a647363d75d56e5, limb3: 0x0 }, w10: u384 { - limb0: 0x223acda03aaa4818abb46bf, - limb1: 0x6e838412d91e27fc6f48eb51, - limb2: 0x2cb9b9c42860f9d, + limb0: 0x2044be51a9211915fb144a71, + limb1: 0x8d3817c0b137839f0a2a880f, + limb2: 0xa80cfd1c626d5c8, limb3: 0x0 }, w11: u384 { - limb0: 0xec4a573945837f856d4c58e0, - limb1: 0x34a7818e565579ac3d46e3c, - limb2: 0x2277fe66952efeb6, + limb0: 0x62a0c2e34aca1fb9f2f127de, + limb1: 0xa9a6eecd8bad6f8f1c1b582d, + limb2: 0xd9a260faf6afd36, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xff56210bc2eb2e3f861afefa, - limb1: 0xdbcac4c69cd0ea4088cf2914, - limb2: 0xfa5d00fa3a07d6b, + limb0: 0xac4096b6265e56640bd0a2c3, + limb1: 0xf9f9c92a043fdf4fc3d52bcd, + limb2: 0x1c072cd43ae44630, limb3: 0x0 }, w1: u384 { - limb0: 0x1e8342aaced1999e205aaa6f, - limb1: 0xd6ac90d902ff4495f1c3ae19, - limb2: 0x305a831be5ec96f6, + limb0: 0x80138dd49beafa9efc18360d, + limb1: 0x3ee4f752e1ae512e6151a8c2, + limb2: 0x1c807f930cafb227, limb3: 0x0 }, w2: u384 { - limb0: 0x7998be5f4179bc8ff4a4fd4b, - limb1: 0x88140afb264ff90f1163da2, - limb2: 0xf98c9b2b3d9f4fe, + limb0: 0x330c6e6652f1eb3574e112cb, + limb1: 0xf00cc60a6ef671ee066f8940, + limb2: 0x22a725af6d7fcaec, limb3: 0x0 }, w3: u384 { - limb0: 0x17fd3c1c5d04e74f6d57eef2, - limb1: 0xfdb1036198238e99c3db5a22, - limb2: 0x2839e6957c9012c3, + limb0: 0x49a5969788196d6b1f7572fc, + limb1: 0x7a488877122133b533216eae, + limb2: 0x3008dc2015a2dfc3, limb3: 0x0 }, w4: u384 { - limb0: 0x54a99a0b8105b28b34b95df, - limb1: 0x56596695fd6f5af142e75e73, - limb2: 0x2d9aecd5d297b5b5, + limb0: 0x5ed3d25fa550830c546e85c2, + limb1: 0xb0aaf21d4b941bcefc28707b, + limb2: 0x852b142e0a8bc5, limb3: 0x0 }, w5: u384 { - limb0: 0xc5a701a770cb6235f1afac8b, - limb1: 0xc5f1370d5d696f1e9b1b4392, - limb2: 0x28042abfaff1bd20, + limb0: 0xd815d61587143af9251596c, + limb1: 0xd1df0ed8412f2a9fe5e0a7d, + limb2: 0x176ccc764efba88f, limb3: 0x0 }, w6: u384 { - limb0: 0x48a45a6aba8a91882480d179, - limb1: 0xa0806b463ccb8207641d526f, - limb2: 0x928c2a74144444, + limb0: 0xfdc813abb7afb3ae8fc0e2a7, + limb1: 0xc06ce26aae4f22cbf59d49e1, + limb2: 0x139045aa44022d5d, limb3: 0x0 }, w7: u384 { - limb0: 0x34e0db2d5cd9cc80c134d034, - limb1: 0x7532bfb7dc4d55c0c315e2a9, - limb2: 0xc5fb178e3d51c7c, + limb0: 0x33a98dfa3a7a5946567065db, + limb1: 0x3b38b68fd1531ac369146025, + limb2: 0x8ca895325300910, limb3: 0x0 }, w8: u384 { - limb0: 0x40a5e698089cbaaa471ce404, - limb1: 0xbc741357715b4cb4af37f564, - limb2: 0x337639bf0c7e658, + limb0: 0xfc7c960024325c17ef11bebf, + limb1: 0x2c7118fc2bc91c8a203768ba, + limb2: 0x2c054d68d57066ec, limb3: 0x0 }, w9: u384 { - limb0: 0x1e6cf1038ea83097139abc9, - limb1: 0x9f5d2f3a851bd32dac65f459, - limb2: 0x2c0460d0f82b0b20, + limb0: 0x4d55dd3988d07db4f1d985c0, + limb1: 0x59468164d291e1e57407c8b2, + limb2: 0x2a34f777fc4be117, limb3: 0x0 }, w10: u384 { - limb0: 0xf48917fa00bc95da1b867db3, - limb1: 0x69e45332e3ba5d1b0fd26696, - limb2: 0x25724b843ab5702, + limb0: 0xba27bfd6457f90d72ea00cd7, + limb1: 0xa30d99a3c076f4f04c029a36, + limb2: 0x16dc413b940d4585, limb3: 0x0 }, w11: u384 { - limb0: 0x9eb7d490470aba11979fe44c, - limb1: 0x979c66a1bf90309345100888, - limb2: 0x1d8bcc35b502c50c, + limb0: 0x98c8839559714223086b2ff9, + limb1: 0x74fe391989fdb7d6eb61a67e, + limb2: 0x48c3bfd94851bd9, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xf228671c9ec6bd6bff4eabc8, - limb1: 0xfa09c7054752b1388d619f0e, - limb2: 0x2333b633cad9dc49, + limb0: 0x7f5951f5641b5970e90595e5, + limb1: 0x922105f7efe2c1e9e8540438, + limb2: 0x2c52e1fee68f43a8, limb3: 0x0 }, w1: u384 { - limb0: 0xa236beb4a2e75aa72ace9d32, - limb1: 0xf6023d901acb49af6c1fb057, - limb2: 0x6763a99b9751fcb, + limb0: 0x8a6551fb23236b8434f1c463, + limb1: 0x4dec28651c5bb145c5d4b5bc, + limb2: 0x1442a11b8d0ea3a4, limb3: 0x0 }, w2: u384 { - limb0: 0x35c49ea7a4bf4333f3991bd4, - limb1: 0xdf66b5808cd774f5de5a40b2, - limb2: 0x13b09ff8b7b5c257, + limb0: 0x5f604525f1ac52828bfc026f, + limb1: 0x280ebc7c312c25eaa745bc99, + limb2: 0x78cf8494ba79978, limb3: 0x0 }, w3: u384 { - limb0: 0x9b6851ef424b08632c4dfcc8, - limb1: 0xf6d6d2885cd99e37a2fcba48, - limb2: 0x1bc56b586b2a4239, + limb0: 0xd9677f18224acc315ea220a5, + limb1: 0x756554cf6fc527cd0233636a, + limb2: 0x1c098edd2e76c9ce, limb3: 0x0 }, w4: u384 { - limb0: 0x70c1220532cbd542c8bb79b6, - limb1: 0xc603404a867d44f776940bb6, - limb2: 0x280b64d76ceb3b59, + limb0: 0x61122a0273b7c8da62415468, + limb1: 0xfed7bc38f07addb0e36e3302, + limb2: 0x2338157b752689de, limb3: 0x0 }, w5: u384 { - limb0: 0x1eb622133dfbc03cb366e0b3, - limb1: 0xaa01fe099166d57e8b2b7197, - limb2: 0x941c02d8fcefd98, + limb0: 0x3154a501285eb668f70f5f3b, + limb1: 0x3fe529ccae53a4466221d520, + limb2: 0x21a4802e91e4b83d, limb3: 0x0 }, w6: u384 { - limb0: 0x4ff01d4a459700051e6f543e, - limb1: 0xc9223caa0b44dfc2d9a8cfb, - limb2: 0x1ed5956d361e34d7, + limb0: 0x7746fe83c6f6b7c0a74827b8, + limb1: 0xf7c7e62e34d0acda3a147dad, + limb2: 0x24312e940b85d9b1, limb3: 0x0 }, w7: u384 { - limb0: 0xf26063c20a2581e9ea969c26, - limb1: 0x8940646e196eec2bd486120a, - limb2: 0x64cfa346ee1ca8a, + limb0: 0x8b0ca3fba513f096fe34c1a4, + limb1: 0x4db69ed672b0a3f5b5fec472, + limb2: 0x140957c9a4996dd4, limb3: 0x0 }, w8: u384 { - limb0: 0xd45eb28504025768f172642a, - limb1: 0x876e3895edcbb733747a56e2, - limb2: 0x1cd3f75b7996a5b5, + limb0: 0x1498c2417cd162541d4f566a, + limb1: 0xd076192da8e9aea44eda0461, + limb2: 0x13123e6566f0b4cd, limb3: 0x0 }, w9: u384 { - limb0: 0xc969fbf8e95a536db6836399, - limb1: 0x21cb23aeb07a00f57b19403c, - limb2: 0x268c7b9e00c3cbcb, + limb0: 0x6afe273647150d3aae28e930, + limb1: 0x6a41bc9eb1a1b8566473f3dc, + limb2: 0x2bd720811167b3cd, limb3: 0x0 }, w10: u384 { - limb0: 0x3ad82b263d38da84122bea36, - limb1: 0x1ad1e374ef8e6b5b24e28fc8, - limb2: 0x29f6a0d7f8fdb580, + limb0: 0x967b3f1190a7f49a1f8ff184, + limb1: 0xe6166c7bc543c1467dbb83be, + limb2: 0x1d1cd7e2fe09cecc, limb3: 0x0 }, w11: u384 { - limb0: 0x17181403aa333125cbefee72, - limb1: 0x3c99488f3fb1166d2f8c32e8, - limb2: 0x1aabb98dbee8224e, + limb0: 0x565533867bf7d50c743b11ce, + limb1: 0x23377a1cbceff7834247644a, + limb2: 0x10d6fd50dc4deedc, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xeb57c7acec75fbedc450373f, - limb1: 0x36df356283c0cd8449490ef7, - limb2: 0x1e3e49c1d0e450ee, + limb0: 0x745d4df1f40ad4ebfe121b6c, + limb1: 0xfeba70669b86a73e1408745e, + limb2: 0x1446be98926c2263, limb3: 0x0 }, w1: u384 { - limb0: 0x71def0201b2543c5969eeae2, - limb1: 0x49449badeaba7a78a9e721e8, - limb2: 0x26a58435fe4b8a62, + limb0: 0x3908f240d441ac80d79bd682, + limb1: 0xd1777d4b9a5d1a7b3b628c09, + limb2: 0x24e5fdb96f182b22, limb3: 0x0 }, w2: u384 { - limb0: 0x1e9738d576af2334b56b9c89, - limb1: 0x3f8c3275a886161b2987142e, - limb2: 0x1f7510892384b4de, + limb0: 0xbd943d01d2e502617e49f85f, + limb1: 0x2237e1490baff90d89454ef9, + limb2: 0xcfe6caf7fbf007, limb3: 0x0 }, w3: u384 { - limb0: 0xc242ce5ddde287f7604623b1, - limb1: 0x86df560cca6ca5daed491c97, - limb2: 0x2aa04daf291c4af4, + limb0: 0xa4d7d2aa027e0dabedcc432a, + limb1: 0x5a164c986ac6123bc27a9011, + limb2: 0x10c75b15e4481c31, limb3: 0x0 }, w4: u384 { - limb0: 0xfbff03decc28ba704c23479b, - limb1: 0xd742929882121ca3192057ce, - limb2: 0xef37a717feec3d, + limb0: 0xd3e48054b2ffda567292c881, + limb1: 0x9faa544697ffa69a5a3872a, + limb2: 0x10175f94d2867051, limb3: 0x0 }, w5: u384 { - limb0: 0xf99aaddfb16277eb1753dd47, - limb1: 0xfd37c127595f58ee78874e8f, - limb2: 0x1b72562a69098f96, + limb0: 0xb688e896cc1a38ba0700618f, + limb1: 0xbf9554e55f95518ad95cee72, + limb2: 0x11055f6ba230724c, limb3: 0x0 }, w6: u384 { - limb0: 0x73be27fe124c4ff9df510cb3, - limb1: 0xb8fb3ef6b41dcf3fb9b7bbf4, - limb2: 0x2455dffe8a983d75, + limb0: 0xb216ced4198206f71d7f5baf, + limb1: 0xc41001898e70498703aeec0, + limb2: 0xb1fbd764359ef5d, limb3: 0x0 }, w7: u384 { - limb0: 0xb85a3a6cd11cb65a86dec8c4, - limb1: 0x49c5560c48b861fe1b858396, - limb2: 0xbdf0e9ab818eae7, + limb0: 0xc434cdf4bd7a30072b6b7f78, + limb1: 0x931da3059537507e5d84aa57, + limb2: 0x1383bfc9fe589bf7, limb3: 0x0 }, w8: u384 { - limb0: 0x1c30e0f1dbede1564ce12641, - limb1: 0xda8cfb6b7c72c72c3de49864, - limb2: 0x1f5d64ef4de6b874, + limb0: 0x5cec413458c4d1294836b49b, + limb1: 0x40578c003119b4649159c80, + limb2: 0xe3b1e8a87b623af, limb3: 0x0 }, w9: u384 { - limb0: 0x93b1d95a676cf3bac2b78fc1, - limb1: 0xd377c9af492c5b34671e5ac9, - limb2: 0xcaa96f3dcf6741f, + limb0: 0x8ee88fbf58e97f2d0096c373, + limb1: 0x15f9d2f92fe6c9bbd0053b69, + limb2: 0x21014bc91afc75f5, limb3: 0x0 }, w10: u384 { - limb0: 0xd695d22d007799c30d3850b7, - limb1: 0x759cae14b0eda2cf4566a2, - limb2: 0x231babc3c89fc61a, + limb0: 0x94a5a2603b7846020dae44ff, + limb1: 0x53de5b6d1b2515399587fe6a, + limb2: 0x18cd4363e5d1830b, limb3: 0x0 }, w11: u384 { - limb0: 0x2b2040a2c63fb156b512c391, - limb1: 0xc1400081db9022b26d040c30, - limb2: 0x15df1de329bc5f4f, + limb0: 0xa2c81046559d99c6712edcaf, + limb1: 0x7589f1555d4d89f22e4825b3, + limb2: 0x1c12482044f16bd4, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3232dcbb5f19d2dcea4857, - limb1: 0x2d5ef3be380fc71a4f483531, - limb2: 0x1c7f6409773e3485, + limb0: 0x4b0f90e16b89cc645ff1d3a8, + limb1: 0xc11b34e6bb2035ef755f1d5c, + limb2: 0x120467226fd68ca, limb3: 0x0 }, w1: u384 { - limb0: 0x556d0faf409a9fa009205fb7, - limb1: 0x860bd1b0f3a2b3ca5bced489, - limb2: 0x2b34efe2464e171, + limb0: 0x949e90303fe57be96ab1ae23, + limb1: 0x4dd264142438d7d9287311cd, + limb2: 0xbde89dc0dece2ae, limb3: 0x0 }, w2: u384 { - limb0: 0xb23335d10004365814661dea, - limb1: 0xb4487fc0ef8d0a8487d625ee, - limb2: 0x3b877c2a74b8f02, + limb0: 0x9dbdfc26cd105e6525247695, + limb1: 0xd7c83a994c3fc8261951953e, + limb2: 0x1db62771fd508839, limb3: 0x0 }, w3: u384 { - limb0: 0x2396d62c18459690194432c6, - limb1: 0x84cebcc34709f380a1991c15, - limb2: 0x135a88f66808594f, + limb0: 0xf30e6aefe520854dc7555586, + limb1: 0x1397f752468e2c2ca20ad589, + limb2: 0xebc90e490c9b037, limb3: 0x0 }, w4: u384 { - limb0: 0xe0db9bc5609a40b4259ff70b, - limb1: 0x6b92d8502c9c35c7422eed82, - limb2: 0x11868adefc0be80b, + limb0: 0xb22c6cece149b4f0b80fe11c, + limb1: 0x56847ae73f33df03b6b5e76f, + limb2: 0x14a17e18b981bd58, limb3: 0x0 }, w5: u384 { - limb0: 0x2e7d869a5aa522ec57bbcf72, - limb1: 0x7eb97efa99691811b9416144, - limb2: 0xfee8e846047b44c, + limb0: 0x7d79c64601b2efb446765be5, + limb1: 0x2260b95159b962b6630f30ae, + limb2: 0x163a5f9682a05def, limb3: 0x0 }, w6: u384 { - limb0: 0x5e62720c0d35716508368dc1, - limb1: 0x34c3deef9a9f903d98d8264, - limb2: 0x1d844b1bf63649e9, + limb0: 0xe79a26d380d7a6f70dd0d4d8, + limb1: 0xf74f2bb2c7697246da06432c, + limb2: 0x27dd38fc79290056, limb3: 0x0 }, w7: u384 { - limb0: 0x14dbd84b06b31a97726724a8, - limb1: 0x54356bcd029893418a33d98a, - limb2: 0x25c820bf2ba102a8, + limb0: 0x35e9c220713e550c9953a666, + limb1: 0xfd1f822c19a0d2b1a9c763c8, + limb2: 0xc4a79ab960b1490, limb3: 0x0 }, w8: u384 { - limb0: 0xc56eca76aba4879437a34bf, - limb1: 0xae5161f3dd801f0b5265cd9d, - limb2: 0x1867ff6acf2018a, + limb0: 0xfb7390d1a4dfc2cf6eb7824a, + limb1: 0xa8a5aba67731d7d7e739c2d, + limb2: 0x2a0d4dde0e0619fb, limb3: 0x0 }, w9: u384 { - limb0: 0xdd39091abef4c765245c460c, - limb1: 0xdffb5d192b4a6da2cd500aeb, - limb2: 0xab19fbb92184d42, + limb0: 0x4fa0543eaaea2e40b0dabe4e, + limb1: 0x4ddb343535e112002f5ede2d, + limb2: 0x5572f419e64ffe5, limb3: 0x0 }, w10: u384 { - limb0: 0x9ee39cedb020b24ac33527ce, - limb1: 0x100952ba9fb80bda5ad5e88, - limb2: 0x2c58a8fb0d482156, + limb0: 0x8bd3a50906f1dfb0a79b72e6, + limb1: 0x157d5ea626bd98aa09157081, + limb2: 0x334cf12d0896e5b, limb3: 0x0 }, w11: u384 { - limb0: 0x3475ea9bb19c58a98abd1b18, - limb1: 0x8a324d0bf3b27d46b4540e94, - limb2: 0x24cd33cd167421c0, + limb0: 0x266b87345559466ae49fe637, + limb1: 0xb22348027013abf93ac67980, + limb2: 0x1a7305efdb0b9e69, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x76e56806ec530be2b84b5ee9, - limb1: 0x4a808c6d9b149e7e20ad52cd, - limb2: 0x43f6f8f00e297e1, + limb0: 0x1d39f5baca52a8866acc363f, + limb1: 0x116ee9d8bf26b3c19c1e60da, + limb2: 0x27bf9608345685b9, limb3: 0x0 }, w1: u384 { - limb0: 0x2508f9fb2d7dd1e7131bb540, - limb1: 0xbbed15e7b1b192ce80586348, - limb2: 0xd1c10159baa23a8, + limb0: 0x1f4d438a6c601b6f64a79196, + limb1: 0xb8ecc74c0dd3062b51ac94e, + limb2: 0x1915ed338bda0c59, limb3: 0x0 }, w2: u384 { - limb0: 0xa33f6c2d5c968163e33685b3, - limb1: 0xda4b82b6a3be93ef459aa1bb, - limb2: 0x743622af195e0f8, + limb0: 0x8178a4985bb075fdb12fee85, + limb1: 0x191f16256e4bd1f1295f78fc, + limb2: 0x252067684ba5a449, limb3: 0x0 }, w3: u384 { - limb0: 0x3ad7a1fb6203486cdae1c759, - limb1: 0xf741062b727c101ba4218292, - limb2: 0x854335b179d26f6, + limb0: 0xe0da5f9395041e94b22a4d47, + limb1: 0x370232ca1b09508c73802add, + limb2: 0x233ad563de06b5fe, limb3: 0x0 }, w4: u384 { - limb0: 0x54a37cebb5a049478517f30d, - limb1: 0xac8e968d6d152fc06911c3dd, - limb2: 0x12f5c9f47567df8f, + limb0: 0x251e312a799d78eaab88c63e, + limb1: 0x28e0d038d996277f43c17ac, + limb2: 0xa5b45062c131f9a, limb3: 0x0 }, w5: u384 { - limb0: 0x3025049e66d944e2f4cbf05e, - limb1: 0xcde805b56b12cfa227787e1a, - limb2: 0x17bc8e41f4463070, + limb0: 0xc41e68426923616cdb036cc5, + limb1: 0xa5c825e4b1218d44957984ec, + limb2: 0x2000edd7d543f5f0, limb3: 0x0 }, w6: u384 { - limb0: 0xea757cc5cb92d9ca44fe2721, - limb1: 0x22a81666234e0715e9eea55d, - limb2: 0x2a07b1fe9be99407, + limb0: 0x20eed39eae87d297aaf0f968, + limb1: 0xb48d18ad1cd40603ed517953, + limb2: 0x109aa66c076c0bef, limb3: 0x0 }, w7: u384 { - limb0: 0xc954f903aed376bd92d257e4, - limb1: 0xcc4a41ec26a8c3a33d4e9363, - limb2: 0x7b672866db3ab62, + limb0: 0xb2e147fbb4fe5eab7b0d4d9c, + limb1: 0x4b45be0c89da08da6b6a63f3, + limb2: 0x67aaaeebe2c6206, limb3: 0x0 }, w8: u384 { - limb0: 0x7367cb70b52102e06d1506c4, - limb1: 0x91f4faae84ef6c43ce79caa, - limb2: 0xccc059c2432922e, + limb0: 0x230e5f3eccfdac4172feb72b, + limb1: 0x634abc2ad95df3eb48fcb735, + limb2: 0x53e55d60d3f70c4, limb3: 0x0 }, w9: u384 { - limb0: 0x3f59ef78fc2d624154c141fc, - limb1: 0x6f1bc2c8848dba4ef684f933, - limb2: 0x1af7e41c258a171b, + limb0: 0x7db41ba6f7f583b995d1507b, + limb1: 0xd2b3384539b596abb1071d42, + limb2: 0xf54522908b30309, limb3: 0x0 }, w10: u384 { - limb0: 0x856591a9925d60b21458424, - limb1: 0x70eb18198286fb4279eb3cb5, - limb2: 0x1b89255db9f79af9, + limb0: 0x5017b86fd3908fc4fcb965a, + limb1: 0x243884f851652918bda912a9, + limb2: 0x10c8feb59f554822, limb3: 0x0 }, w11: u384 { - limb0: 0x26adb66c6a8d99d7639fc1c, - limb1: 0x33355a39193d22076cd6fa8e, - limb2: 0x1ca68d46c0023b92, + limb0: 0x3cbba340166f13405364ae0b, + limb1: 0x69b32033e6fbc532ea6f241b, + limb2: 0x1536fe1c39b64567, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x2dde2e05bd205ce554b213e4, - limb1: 0xcc0526ceedea580483992004, - limb2: 0xe9316a81b80404e, + limb0: 0x332b7f5def8518dfc2ae6a4f, + limb1: 0xbcb8cbe34980927782d74755, + limb2: 0xfc5775728262851, limb3: 0x0 }, w1: u384 { - limb0: 0x2f6fcaae035ec5d36ba6e1be, - limb1: 0xb770a25a04926959c8f1f7a5, - limb2: 0x12abd6eeabeda899, + limb0: 0xcb4cee42211ed8eab5e19f29, + limb1: 0x1acda355e4dd513f5288872f, + limb2: 0x291ab23b8bae5ee5, limb3: 0x0 }, w2: u384 { - limb0: 0x8f4fdafd3faf78afefd55841, - limb1: 0xf5872a360b15db81ae46908b, - limb2: 0x6d55c75d521c332, + limb0: 0xd11b538e67b7ea8d4f2f24e1, + limb1: 0x85b6203356cefbcca773b58b, + limb2: 0x2f0493626d89b7b3, limb3: 0x0 }, w3: u384 { - limb0: 0xe55c25a94f174eca26545151, - limb1: 0xf5012f93a241c612652b9073, - limb2: 0x2be289560918be96, + limb0: 0x67bab09c9015b0ae99929a05, + limb1: 0xd1d09e273c2267f80abd1065, + limb2: 0x1c48f87bd6e7df91, limb3: 0x0 }, w4: u384 { - limb0: 0x2b199e5fcd346c137be9e5c7, - limb1: 0x99adff35d31c50e3df9df835, - limb2: 0x165fa390bcf0291, + limb0: 0x24ce2831250e4e8d9132d6e5, + limb1: 0x95b80fe89a4fe07a2afec8ba, + limb2: 0x24fe8a33ab37aeda, limb3: 0x0 }, w5: u384 { - limb0: 0xadd36e35cbbfd09f8fe1b41a, - limb1: 0xb85c71ddc533f71fdc54da4f, - limb2: 0x268b21310ccdcdcf, + limb0: 0x95362d8b9d7be6f4bcbf321b, + limb1: 0xf7912d8504ccfe9054975bd, + limb2: 0xb7eebc423992992, limb3: 0x0 }, w6: u384 { - limb0: 0xa3aead5a6646d2855e9853e6, - limb1: 0x36a8848191885e204a4214cf, - limb2: 0x1d0263eae5ba7250, + limb0: 0xa8be852439533c69965e129, + limb1: 0xa52f92050f9cede82caac9b2, + limb2: 0x1ba67f385c0013a, limb3: 0x0 }, w7: u384 { - limb0: 0x7a6f525020b1127ec8848b7c, - limb1: 0xfce3c293141f06a54f86f6bd, - limb2: 0x26197c0b1ce27aee, + limb0: 0xdd20088808d12750e2090f66, + limb1: 0xa8534e201386fa2b800dfd6a, + limb2: 0x2de8528b846f1575, limb3: 0x0 }, w8: u384 { - limb0: 0xc8fa921620f54cb99136e98b, - limb1: 0xfe8b240bbdca7b5c140ad934, - limb2: 0x14b5e82cf2bf20f2, + limb0: 0x17c4dcadab29d73ed2a39f48, + limb1: 0xdfed268c7c612a5dc05e9588, + limb2: 0x15f79910014a72df, limb3: 0x0 }, w9: u384 { - limb0: 0x3cfd82c9f27774f5b180f91, - limb1: 0xbc9394324bba93ca28d187f4, - limb2: 0xb9e0b4e5d093322, + limb0: 0x16f96aabc59e89a60ad98d37, + limb1: 0xeea87d49618834a26b5f77a8, + limb2: 0x1b7b77a2129b5270, limb3: 0x0 }, w10: u384 { - limb0: 0x95b064d6ff3019d3abe0d95d, - limb1: 0x278775f9554a2be32fd68280, - limb2: 0xa3ebf669b8d3ad3, + limb0: 0xba86dea4edf2f204528ca12d, + limb1: 0x70c36682a3659396024a8b4, + limb2: 0x1f9fb990fbf10609, limb3: 0x0 }, w11: u384 { - limb0: 0xa4542e8c6bf655475a6d2e6d, - limb1: 0x95ccbfc07a36e78bed08d476, - limb2: 0x3019708211bc93bf, + limb0: 0xceabb0f932ae366914cb7efd, + limb1: 0x5326559c668e0c1044b9aeae, + limb2: 0x2a43abec6255fb3c, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x68e9b20c9d0edbb911b3b112, - limb1: 0x23f3a1dd4f532c28dd39f87d, - limb2: 0x1d7d4ca859b3f43b, + limb0: 0xb41d92c9259eac40d815d966, + limb1: 0x1eca970525cb288d3953b12a, + limb2: 0x1fc9b8f5bcd17f33, limb3: 0x0 }, w1: u384 { - limb0: 0x9134ec308592f9b60b8ebeed, - limb1: 0x35d001b1cf34f072d6931c98, - limb2: 0x26de208d100d3532, + limb0: 0x14de70d9f7bffee5a81254b6, + limb1: 0x1e50fc364bc810f6e6f45add, + limb2: 0x1a14ee9036edc45c, limb3: 0x0 }, w2: u384 { - limb0: 0xf6e6297b7099d0924707c8c9, - limb1: 0x6e11a23bd3e679a86e63dd2c, - limb2: 0x257292199991649f, + limb0: 0xcaad6abb0135c9a952e8bd1, + limb1: 0x953629dd64bd13e0942262f7, + limb2: 0x2cabc213ed2b7913, limb3: 0x0 }, w3: u384 { - limb0: 0xf148002bdc26511b35fd5187, - limb1: 0x19d929cf475c4dc7ebf8963b, - limb2: 0x302d9a4f1eb495f6, + limb0: 0x412a172579a4995e65694b1e, + limb1: 0x288974e39287b7579b604f55, + limb2: 0x5590950aeceb865, limb3: 0x0 }, w4: u384 { - limb0: 0x6be5f740f01f778e39836381, - limb1: 0xf66ac7baf46b151a5d2fc462, - limb2: 0x22ad2e6c6c59aba5, + limb0: 0xfc96238994f2184bacf941cc, + limb1: 0x41446d0128a5657aaf3d4ace, + limb2: 0xe5a2ee934087f31, limb3: 0x0 }, w5: u384 { - limb0: 0x8d0d2db4ead020ebf44840f3, - limb1: 0x2070233b86571f8ae7e1eaa1, - limb2: 0x2fcfbe86ef50f0b3, + limb0: 0xcfb183b35ec324847a9360dd, + limb1: 0xa8b1b0fcfeb2f6b4a2edc72e, + limb2: 0x198a38b04b042249, limb3: 0x0 }, w6: u384 { - limb0: 0x513b87027fc81a6798c226d5, - limb1: 0x814744bc1f682d509b6845aa, - limb2: 0x264fe2b161ba86a, + limb0: 0xeaf000f61d8be9fc012f791b, + limb1: 0x9132ef995c19808f1764ce0, + limb2: 0x14859f272508b2d4, limb3: 0x0 }, w7: u384 { - limb0: 0x367944fe358ed24c7cb45591, - limb1: 0x47f3373abd8f8d2f8ae32ea5, - limb2: 0x289c5df5a7b8258e, + limb0: 0x911fb89e68a9ebc3a4aca1fc, + limb1: 0xc52875d84d9adca238bd4b97, + limb2: 0x1a8b82df18e09f81, limb3: 0x0 }, w8: u384 { - limb0: 0xf2a660896a2276d49d53380f, - limb1: 0x788a33d2ea847870208148dc, - limb2: 0x1605a988d006c67a, + limb0: 0x739feb2547f7adc20220c070, + limb1: 0x2c9e84d93b3c8bcb7e7379f4, + limb2: 0x1ce15f5a1c38f9ec, limb3: 0x0 }, w9: u384 { - limb0: 0x5e226c5077733e1544a14e8a, - limb1: 0xfec05d0948b0db748f84eae8, - limb2: 0x1774390dc55026ce, + limb0: 0x49563bfa60bc2a4bbcfd3b7e, + limb1: 0x404602ec7b1fc57ae957993b, + limb2: 0x21927f14bbbaae96, limb3: 0x0 }, w10: u384 { - limb0: 0x54923d362b26744823fdd9b5, - limb1: 0xe4d461901aa115639347521a, - limb2: 0x27e8b821cc9b35b3, + limb0: 0x48db6d5e0e05406b7b3a144a, + limb1: 0x77e18a4c88e897d75cd4e8c1, + limb2: 0x2fd414c69b986753, limb3: 0x0 }, w11: u384 { - limb0: 0x93ccf8e308ff7738c0c5661f, - limb1: 0xc4ca191a43774a7eb642fd09, - limb2: 0xc8dc1852eceb967, + limb0: 0xfa090d4e8e2fd4b33f83467, + limb1: 0x6eae5d05a0260ab51ddd70ad, + limb2: 0xd0574b5faa530fb, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xdebc6f8c1d882e060bdb17f6, - limb1: 0x14c0e7170d4ae9eeee53e17d, - limb2: 0x5d9246447e1734b, + limb0: 0x212afb716193928013536ab5, + limb1: 0x32f50ccc411e5bd444bfa819, + limb2: 0x699453f9546c06, limb3: 0x0 }, w1: u384 { - limb0: 0xda653f0833fda78092db8abe, - limb1: 0x77887a430af4f43767094db4, - limb2: 0x5e64d22a4775714, + limb0: 0x3aecfb5097d02d332f951279, + limb1: 0xea12c3d06c849a50a4456075, + limb2: 0xef8137bc3f8e273, limb3: 0x0 }, w2: u384 { - limb0: 0xf69aa0572a888891626c348c, - limb1: 0x95b54b36674641b1d2cdeac6, - limb2: 0xec4ddf9e487c443, + limb0: 0xa1e4c722b47046e3a7344b78, + limb1: 0x102dc558c048bd2ea5ef7a96, + limb2: 0x959193df2569002, limb3: 0x0 }, w3: u384 { - limb0: 0x52adaa020f4a5f80c55bae4f, - limb1: 0xdeb6777fa2be65f3ffe3dc9d, - limb2: 0x90fbc195369b7c3, + limb0: 0x45e749851768d66929688432, + limb1: 0xab0b43c002b53617fb4a082d, + limb2: 0x18ec9e0e7a7f6e4e, limb3: 0x0 }, w4: u384 { - limb0: 0xe3e1901bdd7ed05895e50cb3, - limb1: 0xfb9563913f3465fa962d98ad, - limb2: 0x29cce4bcc56280b2, + limb0: 0xa457a299488208590cb895d4, + limb1: 0x95edadddbb8ab1e9b9d278e9, + limb2: 0xb8266b6d4dd588f, limb3: 0x0 }, w5: u384 { - limb0: 0xe08406a88c69b7dca58b3115, - limb1: 0xf287c584b79dd445c2452011, - limb2: 0x149b062bf9926d2e, + limb0: 0xd1960f3407938f6aa2f3a351, + limb1: 0xc9184a1a0b3da04397113045, + limb2: 0x83ea8b7c8ee2344, limb3: 0x0 }, w6: u384 { - limb0: 0x1f6678dd159e4313cde6a8a3, - limb1: 0x2f241a17f6fc673953d4de99, - limb2: 0x2fc5f3044a8e0e5c, + limb0: 0xc48415efa37ac0b9c8f2f98b, + limb1: 0xb1f05e3d4557695226fbe6db, + limb2: 0x978f830307a983e, limb3: 0x0 }, w7: u384 { - limb0: 0x96ee9414d88e0a6d577e662b, - limb1: 0x3d0495f4dcd70391e2b83f77, - limb2: 0x8337ebc6298abf5, + limb0: 0xf74217495f2f58afed2f6b10, + limb1: 0x446105eb170c879741431d1b, + limb2: 0x2afa14308938f6d7, limb3: 0x0 }, w8: u384 { - limb0: 0x24a1fd646b4cb0982f1ef899, - limb1: 0x54afdb08cea1c25a7fa3ef2b, - limb2: 0x1f1250618bfcc0a0, + limb0: 0x6b390e3744c5cdb779b08bc3, + limb1: 0xb63b6db3a07f7bf3dfc5f8c1, + limb2: 0x300ea6360a6859f5, limb3: 0x0 }, w9: u384 { - limb0: 0x933a374c049255d3ffbe40be, - limb1: 0xfeee94191f128b1625c9fbfa, - limb2: 0x1d5a855be4bae807, + limb0: 0xc35694b827a7506d0789134, + limb1: 0xc59a5f72f90f996a9329a952, + limb2: 0x149781a1fe2a8484, limb3: 0x0 }, w10: u384 { - limb0: 0x7b96f21347472d01724a7b04, - limb1: 0x39c7ed660dcaed1cc5614968, - limb2: 0x3015d31b068c4e6f, + limb0: 0x356c3f088a5e0e1fb5c4444b, + limb1: 0x5528db3df6717543073d815b, + limb2: 0x2d14419b75503d3e, limb3: 0x0 }, w11: u384 { - limb0: 0x363d4170b477f0071d6fb393, - limb1: 0xe52ba9bbf75762a59a9b0bf6, - limb2: 0x270b2d39f3ac1869, + limb0: 0x811ec5a03d972ecc58ad008a, + limb1: 0x3ddf760ac3dc7b5b6b831883, + limb2: 0x142b38c452e057e9, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xabcabdd64602d6bc60529649, - limb1: 0x128f7095ca905bd800e836ce, - limb2: 0x1fe9f16005a05b65, + limb0: 0x78f5da6f8a1f8bf82264a0e0, + limb1: 0x8a36983abdb2671a7413475c, + limb2: 0x163811099d0613af, limb3: 0x0 }, w1: u384 { - limb0: 0xbf74a5772a89f1de1943ba4a, - limb1: 0x275d1ce3a42e91e7448a37e2, - limb2: 0x202b1720853c768e, + limb0: 0x1b95f15f2af77d14e534db41, + limb1: 0xad7967205c7fb9b5c5c77d5, + limb2: 0x2129ad10f671e6f9, limb3: 0x0 }, w2: u384 { - limb0: 0xca86bae23f0c3403b31d7837, - limb1: 0xb5609ba36b08cdfd2798705, - limb2: 0x4b1836f52ecec4a, + limb0: 0xa9eea32badb687a5914bac8c, + limb1: 0xf21b69c7e97fd07d9147646b, + limb2: 0x1181a79cbf8c8733, limb3: 0x0 }, w3: u384 { - limb0: 0x631ec88a5db837336ba7a65a, - limb1: 0x8ec92853b02299bb16727191, - limb2: 0x17e6e16cd53389e, + limb0: 0x505379871c61a27fced3a94f, + limb1: 0x2702bfaa4e367e84f86d3ae7, + limb2: 0x150331d2c5f5f0c3, limb3: 0x0 }, w4: u384 { - limb0: 0x88e7f86e4af1692addaf9fcf, - limb1: 0x2b2c2207472fe4438831e31d, - limb2: 0x2327412f69be487, + limb0: 0xa85102a8ec3cc9ac07144917, + limb1: 0xce39329d08be3d93c817f6f0, + limb2: 0x211348ee915f068a, limb3: 0x0 }, w5: u384 { - limb0: 0xd3767f4519ed98cc72cbd18b, - limb1: 0xc40e16a63e482b94880ba871, - limb2: 0xb5a04000c89e313, + limb0: 0x2b553654b254b119f525bb92, + limb1: 0xbc57e93b2850fced91bb6786, + limb2: 0x1295f60185ba1e9, limb3: 0x0 }, w6: u384 { - limb0: 0xcf7c15daf6636ff29b36046f, - limb1: 0x3d90b54f5107e01e3c894c80, - limb2: 0x2da80e2319095745, + limb0: 0xa82fae62a2c2cde111e0fccf, + limb1: 0xc2f78ac56f6a7d44fd74e841, + limb2: 0x2a02e7cb8c611345, limb3: 0x0 }, w7: u384 { - limb0: 0xc64d88a6d2b4e590a72b6ac1, - limb1: 0x9266599ef93c1f3f4ca4d498, - limb2: 0x160ba1ded1fd77e0, + limb0: 0xb1cb070f32c656557f8e0f54, + limb1: 0x87cdc53730c45d7f1b60b0db, + limb2: 0x3a34b42587d5706, limb3: 0x0 }, w8: u384 { - limb0: 0x9d301a83158dbdd296868ad, - limb1: 0x6c259dc5caf9a565b2bf609f, - limb2: 0x16ec5acaea70aaf3, + limb0: 0x3c416c8a5aa09825c5924144, + limb1: 0xea25d6a3531045a0502b4766, + limb2: 0x13dbae531fb83958, limb3: 0x0 }, w9: u384 { - limb0: 0x70bc6eebfe41f4914d6b1ece, - limb1: 0xc904ac9629bbe7dd26195958, - limb2: 0x120c923faac80e2, + limb0: 0xaed7c369e354fa62fa14942, + limb1: 0x13d6da3f7607bd5a8632ed24, + limb2: 0x2fc09dece0743e2, limb3: 0x0 }, w10: u384 { - limb0: 0x72bc39462c8edba71cb2c0a, - limb1: 0xcb73d24349afcdb2ef350051, - limb2: 0x1bafc0088a9a9765, + limb0: 0x9252880ea91748f7c503adb1, + limb1: 0xcdda63125fcf27e12d26d829, + limb2: 0x144323f5e10f9cbf, limb3: 0x0 }, w11: u384 { - limb0: 0xa6935ffc69d8ef8282aab109, - limb1: 0xe26a24fcdab0f76ded0ef169, - limb2: 0x11d1c13796a02b1d, + limb0: 0x113ecf8d1967f031b6f6c7f1, + limb1: 0xc90bf122b3311cda16f65ad, + limb2: 0xa937f13546085e0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xecb43c46a1bc03c6e906ddd8, - limb1: 0x88c4ae5bb370a35f99ad36e8, - limb2: 0xf7d72e96ce288a6, + limb0: 0x8efbb5f00a358c6e8f7669b6, + limb1: 0x9cbb2b5ca2c155379e359515, + limb2: 0x25a4e2908646442c, limb3: 0x0 }, w1: u384 { - limb0: 0xfde88c11f13e81f5442b3132, - limb1: 0x83de0e8528b50f6303632e22, - limb2: 0x182a94f4007df6fd, + limb0: 0x2f177b8296b5a1a214440123, + limb1: 0xef79b79bd0b715b13cd211c5, + limb2: 0x23ac72a060031978, limb3: 0x0 }, w2: u384 { - limb0: 0x984f52f61a46da9bd77464e0, - limb1: 0xdfc24912e57460eb256d0e21, - limb2: 0x1911d56a37d5aa23, + limb0: 0xc1ae86ed3fe467712f35e224, + limb1: 0x6f17f7fa3472ba0ad84d97e9, + limb2: 0x24aa290034ad07b6, limb3: 0x0 }, w3: u384 { - limb0: 0xf120a67a67026980ca75602, - limb1: 0x7a86184a8c0ccda5b7474cbe, - limb2: 0x6861e57fbf1cb8c, + limb0: 0x280134ae63d6ac6bf8a42038, + limb1: 0xadbb7838d654c0076c8434e9, + limb2: 0xdc68dd8eb661fed, limb3: 0x0 }, w4: u384 { - limb0: 0x1373f626fea94a9d99a655e, - limb1: 0x24ac4163201476e06fcdebc9, - limb2: 0xc4ee9337b1e344c, + limb0: 0x6878763d2a9d021fdaffedc3, + limb1: 0x11214f4d9b70794702be06e4, + limb2: 0x1beb7a8c98e53fb6, limb3: 0x0 }, w5: u384 { - limb0: 0xa2d181fdca0e7a01b859ba37, - limb1: 0xedd6c21ad4f1433ef5fae7cd, - limb2: 0x2cae92bea44d5cae, + limb0: 0xc76a448f641de0fe96d9f986, + limb1: 0x3978abab5f302b316f151cc5, + limb2: 0x2df85caa156597fd, limb3: 0x0 }, w6: u384 { - limb0: 0xb9aca88fc369c5e8f6cd4e4e, - limb1: 0xaa55fe8da6a8dc9dcab193d3, - limb2: 0x1bcf1f56441d21fd, + limb0: 0x5e65c023f4c9066999e31095, + limb1: 0x33de96890c382fe8e8508e38, + limb2: 0xdcaa35a7a46ee55, limb3: 0x0 }, w7: u384 { - limb0: 0x22de40f0a294391ac9cc906f, - limb1: 0x1d602108e3f78c64ba595dfb, - limb2: 0x2ab2623470044356, + limb0: 0xbe6282ae9e054d98532ee9ce, + limb1: 0x22e3a0fc0fb879513d1880c2, + limb2: 0x2c8ce57d94d66e64, limb3: 0x0 }, w8: u384 { - limb0: 0xc02b9efc80128b0d464c6df, - limb1: 0x7699695b63eaa9195e9aef84, - limb2: 0x23222c8e2e0aaa14, + limb0: 0xc2d42db197be6f33572940b9, + limb1: 0x86a3fdf06a4b5858bf0ff7d3, + limb2: 0x464a9f2aa414f83, limb3: 0x0 }, w9: u384 { - limb0: 0xda500d584fdda90a315451aa, - limb1: 0xc4bbb3b6ca7d3ab2735ac652, - limb2: 0x1abeece922fffc98, + limb0: 0x77df52289abb6b007563ae49, + limb1: 0xa5d741113dd7f1cd1500de84, + limb2: 0x219d01b5e4618f25, limb3: 0x0 }, w10: u384 { - limb0: 0x799145185761e6c998ec4b4b, - limb1: 0xf5219032fa8b60b36915e7d0, - limb2: 0x137e2b155b93a89, + limb0: 0x27483aeb031cfca8e5937c75, + limb1: 0xfd6b5bef5987732b4287327c, + limb2: 0x16fadd7232bb18c1, limb3: 0x0 }, w11: u384 { - limb0: 0x93931e8c8e1ec21f7e25d512, - limb1: 0x70e3feaae816d800c952dca3, - limb2: 0x25b21ef1c1c7560d, + limb0: 0x77db5d8bf8b623a78acc7b10, + limb1: 0xb250cdd0f37577228f1798fe, + limb2: 0x1b2cd78590cb3d4b, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x6dac9b3a91efc04ac80de48b, - limb1: 0x7ec1c43a4357571723e06799, - limb2: 0x18bc5b17bbe11103, + limb0: 0x22ebd49a502e5ad081f28440, + limb1: 0x7bbb77aad92dc431f1a22a74, + limb2: 0x3f75a34739557bd, limb3: 0x0 }, w1: u384 { - limb0: 0x25442178873752bf0ae53f02, - limb1: 0x44ac4845d46027fb5d10d614, - limb2: 0x23865f3a36bbf65f, + limb0: 0xe6262276e85c49791195977b, + limb1: 0x96ddd0d34679e03d8ab5bd03, + limb2: 0xd4e5bd6244d352e, limb3: 0x0 }, w2: u384 { - limb0: 0x996230617e2807a7e9cdcaef, - limb1: 0x4a86b51181a02e553e199791, - limb2: 0xa5bf2a6874b03c5, + limb0: 0x76e81ae8167334dfbe53725a, + limb1: 0x7757fbfb43bbe0366b38056f, + limb2: 0xe44cd9c81d9cecf, limb3: 0x0 }, w3: u384 { - limb0: 0x4084fa81f8dab9d0db2ed307, - limb1: 0x3418fe2698a35e99ae50a35c, - limb2: 0x24442cb8f80069ce, + limb0: 0xb208e8dad1d844953019af97, + limb1: 0xbbada308686176156dbb2ae9, + limb2: 0x18d12572278c4166, limb3: 0x0 }, w4: u384 { - limb0: 0x25ae55d1c44fa0425cb72360, - limb1: 0x84290ba31954249dc76d8929, - limb2: 0x1787205a2de72b6c, + limb0: 0x9dd7a57eda226816959149a4, + limb1: 0x943dae3146cfc27cc1213a0a, + limb2: 0x291d4eb6f566db5f, limb3: 0x0 }, w5: u384 { - limb0: 0xc9d087fd53314b7e7a705252, - limb1: 0x156570f304f42f14a8bcf2cd, - limb2: 0x1ce9d6535f1a41bd, + limb0: 0xce4a046027534247caf8155e, + limb1: 0xe8761c7e6350f9888f539c9e, + limb2: 0x2d4dff1030f46653, limb3: 0x0 }, w6: u384 { - limb0: 0xd8626d51dac020da4f736c7, - limb1: 0xe118d0c73db066df2252c3e1, - limb2: 0x194587dbe7e783ae, + limb0: 0x199e43ed8b40bc5d204daa7a, + limb1: 0x703bd7bf9680df242d2a0744, + limb2: 0x278b77b6daf76af3, limb3: 0x0 }, w7: u384 { - limb0: 0xc2ff6eb2235d1a474327921d, - limb1: 0xd70afbfb737e2de6b7cfe514, - limb2: 0x128dd93e1a4bb104, + limb0: 0x9e8ef20a5422192dd582c162, + limb1: 0x883647cd9cc62a72ea1b42f7, + limb2: 0x2271b20740e4957b, limb3: 0x0 }, w8: u384 { - limb0: 0xaabc96c73e548b4d6bfc5a47, - limb1: 0x97075afdb2410bc4d17ed9f9, - limb2: 0x15c11d57723c99db, + limb0: 0x6a4e3ff1d5f0602127bcaa34, + limb1: 0x86c473ee2d10b17277d17329, + limb2: 0x19865cd07593aae2, limb3: 0x0 }, w9: u384 { - limb0: 0x138de8eb5f6737cdd7824f75, - limb1: 0x777a6d217f658cf06c8cc22d, - limb2: 0x23f0f37383868300, + limb0: 0x75e378f724805606bbe67cba, + limb1: 0x1d3d60afaac677a2d5a742e9, + limb2: 0x2119025040a51933, limb3: 0x0 }, w10: u384 { - limb0: 0x8fbf0f355a74272e55ac6fee, - limb1: 0xfcddda84a7a98f8fb5869667, - limb2: 0xea16c4f81673b53, + limb0: 0xb7d2d03ce40d63cfcb0d7fd1, + limb1: 0x56fc968190d3d2cd587a388f, + limb2: 0xaf15224ce1ecf10, limb3: 0x0 }, w11: u384 { - limb0: 0x99207a79662b3f0427c42f99, - limb1: 0x8ea0062a0632930cbbe1b92f, - limb2: 0x23e6f1ca48c03878, + limb0: 0x16805e251a46c4ca38badbb1, + limb1: 0x6dc0fbdf3fa399d4be77b32b, + limb2: 0x99855251cb7cd74, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xc1b98cef90b679a89298d205, - limb1: 0x34e18f7660eb05129d8e6f9f, - limb2: 0x16f39d58cf67f4fd, + limb0: 0xc66561f1480203ad584a2eda, + limb1: 0xa3ac959ec31acf5be3eceadd, + limb2: 0x2450a4a23dfc4e57, limb3: 0x0 }, w1: u384 { - limb0: 0xedba0590ba622731ae29d87b, - limb1: 0x59065c84ab4a25a805101ef5, - limb2: 0x8d0834c7b059b3b, + limb0: 0xcd484caccf1133ea8cf20e60, + limb1: 0x9b30d85d516e7c89ee8f40d, + limb2: 0x17853ae949ff8cbb, limb3: 0x0 }, w2: u384 { - limb0: 0x3fc479e07abacea04546c338, - limb1: 0xf678373eeba5c9026db50820, - limb2: 0x23d0139736185275, + limb0: 0xda81fa51a24ec4036be76120, + limb1: 0xad4415372ed4a110ce126539, + limb2: 0x2709cf9a05c4d735, limb3: 0x0 }, w3: u384 { - limb0: 0xcc780aacde04436bec88c4f2, - limb1: 0x9f8d3e1b9ef5febb46fd10e4, - limb2: 0x2cb0754010808895, + limb0: 0xbfb389fda15d392b06999ac0, + limb1: 0xca1722d90e058a545b58fdcf, + limb2: 0xb32b64993074fa2, limb3: 0x0 }, w4: u384 { - limb0: 0xefa41e52edd3449f3e5b1f80, - limb1: 0x93449c501d3073e296607d07, - limb2: 0x194fe39af71ccf67, + limb0: 0x1d2107c15842452a9b9d34f4, + limb1: 0x4e9064e63919348e68ab4a17, + limb2: 0x1e3eb6e45a3f6d3, limb3: 0x0 }, w5: u384 { - limb0: 0x13c1ddbe35c1680d15fcd328, - limb1: 0x913b1aeffc9141855a9f7613, - limb2: 0x13e4d920bce49a55, + limb0: 0x97b24c7ca09537d9f6dbc57e, + limb1: 0x6a577dbd424e9d96c0efbb21, + limb2: 0xf6aa0c3dd8d4357, limb3: 0x0 }, w6: u384 { - limb0: 0xe82ff36b07c901c261a884e8, - limb1: 0xa5ba6dadfab075fe99e96096, - limb2: 0x257d3fd07ae6fed8, + limb0: 0x4c240f9abce3598158451bed, + limb1: 0xb3836564d8a08bd77f2ac880, + limb2: 0x2183886bafa8e95e, limb3: 0x0 }, w7: u384 { - limb0: 0x79cec9cc47172c6f85362c76, - limb1: 0x574b68ba989b36fcc68e3bb0, - limb2: 0x19530adb8f2770b0, + limb0: 0x109c4d623c03593f04b8c952, + limb1: 0x674e43d6400fc1a815968174, + limb2: 0x16eb4684283667ba, limb3: 0x0 }, w8: u384 { - limb0: 0x12c6debebbffcdbb772330db, - limb1: 0xaeb6720cb98e40b8c154ec63, - limb2: 0x283d5f0a2decd9a8, + limb0: 0x119511956778583218fc3a50, + limb1: 0x9caa6241c3282a375035f4cb, + limb2: 0xcafbb2a77f1fce8, limb3: 0x0 }, w9: u384 { - limb0: 0x2c3f3d433a9d0fd85b8cff15, - limb1: 0x9fae4645011c8bba5e37b6c9, - limb2: 0x6bf050818c609e8, + limb0: 0xa20c84e02a24311b25302cba, + limb1: 0xd1fc1a2f56f66595318af0f0, + limb2: 0x1868c4835f5347fe, limb3: 0x0 }, w10: u384 { - limb0: 0xa5ea0a04d6c8931d9032a186, - limb1: 0xffd74ae3bdc1dc3406c6a355, - limb2: 0x1d88abd57259e51a, + limb0: 0x466a0bef84955c6e5ecdb7aa, + limb1: 0x62ae5f33285709cbcf9df88c, + limb2: 0x12fd457738575248, limb3: 0x0 }, w11: u384 { - limb0: 0xdb17d7a60d79250b135d4a, - limb1: 0xd3931f133455a3f598dde4ba, - limb2: 0x1f6ca9c75e80292a, + limb0: 0xe62886b363db1013b6e65699, + limb1: 0xc5aeedfda4e6405625f323ef, + limb2: 0x2932d1c21ad1fb63, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xc65533678e152ec6d52de878, - limb1: 0x7eb295b9d36c392039b30258, - limb2: 0x22b996baab368df, + limb0: 0xb2b34d54e5cdf44b21a992c9, + limb1: 0x4c92a36e681d6e43bf5aec7, + limb2: 0x2a495dedb83939ef, limb3: 0x0 }, w1: u384 { - limb0: 0xf6ead7743ae1b9d2c3a2882a, - limb1: 0x889ccc93fff1492172e5eb1a, - limb2: 0x1d4098e73bb970a8, + limb0: 0x3f030b2df5d7135260e49e61, + limb1: 0xadbb5ea613251e214baebaab, + limb2: 0x23f32135b10a219b, limb3: 0x0 }, w2: u384 { - limb0: 0xbb37a4baf898a0a7b769005c, - limb1: 0xde141cc765716c13826731ec, - limb2: 0x1a66644829be69fd, + limb0: 0xa9a13a94abc581bd29ba145b, + limb1: 0x8368ca2e6db64292cf5f4353, + limb2: 0x4ac4d792ff11a61, limb3: 0x0 }, w3: u384 { - limb0: 0x9daa132202441964f83dac47, - limb1: 0x83866acfdf5fb9194b21e586, - limb2: 0x8c838f8de74861a, + limb0: 0xdcb2999372dd7ebf80d5c6e6, + limb1: 0x756844cd2a62a8d2438af444, + limb2: 0xaa726ff5289cf35, limb3: 0x0 }, w4: u384 { - limb0: 0xa5622cc47a493f0fdaa2004b, - limb1: 0x6edc3075a6001a7eef1fcd2, - limb2: 0x9d19856717b1a6b, + limb0: 0xddaf5bf4c37993b3766f75c4, + limb1: 0xccdf8b96fa5deb83b0e209a1, + limb2: 0x19b1989cedc421c4, limb3: 0x0 }, w5: u384 { - limb0: 0x4011b648d31c587faa3e46fb, - limb1: 0xfc87a426212b58fee9bd741, - limb2: 0x1c7f18c7c262a6ba, + limb0: 0xbe6f507992de78969e89b9c6, + limb1: 0xef4ce03da22be12e6b0d4598, + limb2: 0x883af4a86d0908d, limb3: 0x0 }, w6: u384 { - limb0: 0x26a07d4bb9504dcbf933b188, - limb1: 0x481fbb9b4db1a4119ec4bccc, - limb2: 0xb95d71e59443305, + limb0: 0x152519e106745e8e591ab85e, + limb1: 0xd35079d84cd9a0a8499abd73, + limb2: 0x1557e70602a74825, limb3: 0x0 }, w7: u384 { - limb0: 0xeb80305c2138340e2f3cfb2, - limb1: 0xfcd82597edab1d458afc150e, - limb2: 0x210f2a954726438f, + limb0: 0x4802a18c25d6b6a4ea9b9f1b, + limb1: 0x57460332a69b1aa724764c97, + limb2: 0x283acbcd0460fd7b, limb3: 0x0 }, w8: u384 { - limb0: 0xcb1a00247b0ad64aa8a0a188, - limb1: 0xbbc94a1b68c15613e6c7f283, - limb2: 0x278dfe1405f26450, + limb0: 0x275db76316f15ecf2119aa3a, + limb1: 0x8994f42505af4c57421fcf97, + limb2: 0x14886b95bc986dc6, limb3: 0x0 }, w9: u384 { - limb0: 0xaf2b9b786d9fce1734216a39, - limb1: 0xdbe95b9e6e3484a73823514e, - limb2: 0xa977c5e1d15aba4, + limb0: 0xacc6f898f00b4d608e4e0a2b, + limb1: 0x32942de8edf0ed46a99cbd63, + limb2: 0x2e7fcd068fc3b869, limb3: 0x0 }, w10: u384 { - limb0: 0xc3d0608155d7a3dd7d9712be, - limb1: 0x5d6d6359151817c440fe77cd, - limb2: 0x2ee65b2a26d3c79f, + limb0: 0x8abca5a06ddabd4207889935, + limb1: 0xfcef18a15446e29678f64129, + limb2: 0x59fa0fb55452085, limb3: 0x0 }, w11: u384 { - limb0: 0xa35db7d9fcc65277bd8d16d0, - limb1: 0xe511ee50eb6303d090878a3b, - limb2: 0x28581986e74c1969, + limb0: 0xeda14f7bd2952504c10ceb67, + limb1: 0xa4034439defd2f4c709ca8a3, + limb2: 0x13385e78213f98bb, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x727873fc33dcbcb3c3a81a6, - limb1: 0xbcdb0a05e0ff32462829b81d, - limb2: 0x29fb630d9a5e558b, + limb0: 0x3105e80b7400a30994633252, + limb1: 0x65c97ed7f93f3db509f93dd5, + limb2: 0x2991c44388d7dda8, limb3: 0x0 }, w1: u384 { - limb0: 0x445fb6e8a7c8bdfb5329aff1, - limb1: 0xa1b7a72b299016bf3b28716, - limb2: 0x209a29ad34866c98, + limb0: 0xc971b8411d31e084eeafd8fc, + limb1: 0x941016972b8b361e023a5649, + limb2: 0xab9e37bc60fe063, limb3: 0x0 }, w2: u384 { - limb0: 0x8953643e0d0e3c2f7a1e047c, - limb1: 0xba83d13ba12272e5975a20b8, - limb2: 0x163939b02b0dd0ed, + limb0: 0xd719988aa964939e169cf60f, + limb1: 0x2175417ceedbbfc95b76d43d, + limb2: 0x1b834e3d159461d7, limb3: 0x0 }, w3: u384 { - limb0: 0x69766f60411db352abe7576b, - limb1: 0x51aa6e6d057f1ca594429d67, - limb2: 0x1a121762746225b9, + limb0: 0xc2df5bf6bcc9cbe4dd0d08c5, + limb1: 0xe01809981819fe25bbcc0567, + limb2: 0xe4e9339a01b7697, limb3: 0x0 }, w4: u384 { - limb0: 0x4f5d06859eb4f53cc8a3b81c, - limb1: 0x552726d4afc239e89ca33178, - limb2: 0x1b0f6c29cb90e33c, + limb0: 0x3ad2cb3fc0efb02e2956696c, + limb1: 0x802c603b6350604baad113f5, + limb2: 0x13d03e321ae1c3d6, limb3: 0x0 }, w5: u384 { - limb0: 0xc9fe9a33de23c562f9d747ec, - limb1: 0xc05ceaba45567c521bd2d018, - limb2: 0x1b518524af6f2396, + limb0: 0x670f559aa8405a3c763c250b, + limb1: 0x3b112f2e4ace61aeff8d0001, + limb2: 0x16f75c301dad47a7, limb3: 0x0 }, w6: u384 { - limb0: 0x21a4266ac392313f388e4eff, - limb1: 0x471019e661a36005bebaf860, - limb2: 0x1f4b0c6e771e47fd, + limb0: 0xefba64e0b5834234304e91a2, + limb1: 0x814d15955a5f521fd8b3b844, + limb2: 0xdf20da0556f3065, limb3: 0x0 }, w7: u384 { - limb0: 0xa94a59c5dfb87357d01235a2, - limb1: 0xb93ab5488ff2b11b14312a16, - limb2: 0x208cecb3fee16c35, + limb0: 0x2c1dc1663444b476b5b8a532, + limb1: 0xb3f6160fc759084f1fdba612, + limb2: 0x1e233ea335523e4a, limb3: 0x0 }, w8: u384 { - limb0: 0xd045b93bb49641a33260222c, - limb1: 0xe0f64ddf6cbf5df0f9659f43, - limb2: 0x17154339eb171eeb, + limb0: 0x57ac8c8179ce0eca5269dc83, + limb1: 0xa18194d557ad0a357dbcedad, + limb2: 0x2269278a716a5d01, limb3: 0x0 }, w9: u384 { - limb0: 0x3616cb1209924142c5a69eb0, - limb1: 0x9c8b47d254e300c2eb321dee, - limb2: 0x24ff1f3ebb48d9a1, + limb0: 0xdbe0a4c812f0d33b54f41559, + limb1: 0x84570ee2680f62ea1ac03212, + limb2: 0x1e5d61cae3f402d0, limb3: 0x0 }, w10: u384 { - limb0: 0xfd06d60fdee4d1f82b3a286e, - limb1: 0xeb13c49b3f1dd6464df1386e, - limb2: 0xfbe2b8481b76e39, + limb0: 0xdf9f01cb777649b48fd0adad, + limb1: 0x77918e19a1d5ab15cbea036, + limb2: 0x2b0057d5627c71c3, limb3: 0x0 }, w11: u384 { - limb0: 0xa3c72fc14aa194c5fc524e9a, - limb1: 0x347a21bcd2507ba170f294a2, - limb2: 0x10bfc8292d1aa204, + limb0: 0x2c9bfa9d78466aedc6ba8389, + limb1: 0x76b5c80ed43eeee8879669cb, + limb2: 0x3dd9173f3b1aa18, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x61032a1086e4f5736a9f8705, - limb1: 0xe66d4de8f869ee48afdebbd4, - limb2: 0x1e43141e20003b05, + limb0: 0x2eb59a915c145efdac206373, + limb1: 0x74990c2cc6387d917a7b5dd2, + limb2: 0x8de6b51fdbe48d8, limb3: 0x0 }, w1: u384 { - limb0: 0x3db1e39f592fdee98a00175, - limb1: 0x2ae7a9afdca788e2f58612fa, - limb2: 0x1612a377aec25f93, + limb0: 0x44d9052f13a6b91afc26675f, + limb1: 0x407056917ded850794c0cee, + limb2: 0x1979a24035384317, limb3: 0x0 }, w2: u384 { - limb0: 0x255387d2a8b576e04afce142, - limb1: 0x1dd55f1806c869fef2bba6dd, - limb2: 0x2344634f417490dd, + limb0: 0x99eb706c76f021f155934b75, + limb1: 0xf57edb0cc291498859c782e4, + limb2: 0x2c38d67348daa48d, limb3: 0x0 }, w3: u384 { - limb0: 0x384b1bd75049fedd54e6412e, - limb1: 0x655a3443ce6703a23000ebdd, - limb2: 0x251267c91b5ac370, + limb0: 0x9fffdbf80475b68b7c9d0bdb, + limb1: 0x4e7ef3529cc4fbdd06659f63, + limb2: 0xc9b71f09a14f8, limb3: 0x0 }, w4: u384 { - limb0: 0x65561ce7d3b76e3afa39ee30, - limb1: 0xaa50bfc8329c6771e530df89, - limb2: 0x1df21f1f31966574, + limb0: 0x9f0eb372fc94df35e5da9349, + limb1: 0xe474ccdeb185bfb5d2fb1f49, + limb2: 0x5c79af4fa1c069a, limb3: 0x0 }, w5: u384 { - limb0: 0x6bc0f30e1ff2f1946d0a7b30, - limb1: 0x17a9dd3541d4ecdaec9e78c6, - limb2: 0xed8cd43082e272c, + limb0: 0xe1a55b7f585db0bf515bb8f, + limb1: 0xe8f92a6f09806e74c828b496, + limb2: 0x264e6fa1af82fb1f, limb3: 0x0 }, w6: u384 { - limb0: 0x99e53c1cdc91c1de9052888c, - limb1: 0xba460b762b58b0699cab3e9b, - limb2: 0xed6a7e4dbfb766a, + limb0: 0x2378bd57cfc360bfb6905146, + limb1: 0x8a39511d1c4b67f4ba029e2, + limb2: 0x1aa756070c9788aa, limb3: 0x0 }, w7: u384 { - limb0: 0xca06b73d7611a9311374b351, - limb1: 0x94beaa4ff0f8f1a0616ad1cf, - limb2: 0x2663c5ecab648ac0, + limb0: 0xfa557c1b7d81aecea8ff821a, + limb1: 0xeed5a6797f74c3be9520cdf8, + limb2: 0x17d8ba0a218baeba, limb3: 0x0 }, w8: u384 { - limb0: 0xf1476d5749cd776253723503, - limb1: 0xc3dbe711d23b2832628223da, - limb2: 0xa4af4b0536cb14f, + limb0: 0x3378426a12553b1e9500287d, + limb1: 0x8311b2ed7e006ac9a948dcbd, + limb2: 0xc37b9a3ea365d50, limb3: 0x0 }, w9: u384 { - limb0: 0x98a53050f3dd7ebc63b5abf6, - limb1: 0x6d025dc1f6471f642e112b61, - limb2: 0xba52ceea67228af, + limb0: 0xca964f1109ae3c73a52c24cd, + limb1: 0x559563a233b4a38b159c9ba7, + limb2: 0x1bddfec175671b87, limb3: 0x0 }, w10: u384 { - limb0: 0x972fb8a625d21e30e067b942, - limb1: 0xceed6ffd3a1362b2605be143, - limb2: 0x2fa2aeeb2105fbd9, + limb0: 0xcf8bb6aef68b883c719f9818, + limb1: 0x12265f3e125d73f3e7da8a16, + limb2: 0x4c24510edba00df, limb3: 0x0 }, w11: u384 { - limb0: 0xbedbd9cc913bb86bc4e0f706, - limb1: 0xfffd5ae777e928ba785f1d74, - limb2: 0x1887420fedd0501, + limb0: 0xe90cb79e8fb3568943cb54be, + limb1: 0x1dcb0c1165797735828668a7, + limb2: 0x15e04ca9837ab629, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x45daf005d4ec6a8621f76e7f, - limb1: 0xf26f141752ac1c2166c4ba28, - limb2: 0x21f459be7f05fd37, + limb0: 0xe80e800f0029a76d53862291, + limb1: 0xd8b2334d5c44af6c1d31900d, + limb2: 0x2e45af190b416a30, limb3: 0x0 }, w1: u384 { - limb0: 0xf42e851d15e18423a4a7b7d3, - limb1: 0xdf13862eb068c5a2d62fa6c2, - limb2: 0x29a4f678e9748a17, + limb0: 0x8f1b8c0f09519a9279c7c34a, + limb1: 0x388e7c0d4e0a501902e75448, + limb2: 0x2c8d6a9fcba9b2ce, limb3: 0x0 }, w2: u384 { - limb0: 0x1cdea5b9e9516a16864b5801, - limb1: 0x832b0c7eca7810faa8d9aa88, - limb2: 0x157b6d637ddce0a0, + limb0: 0xdafbd8f540b4853a6a08fdfb, + limb1: 0x48b12effbb715fa7ffd810a5, + limb2: 0x124e32676f256f8c, limb3: 0x0 }, w3: u384 { - limb0: 0x81fabfd725f5633577902a8, - limb1: 0xa81dc50fd2866bb9b9905ebc, - limb2: 0xae08a7b951d8817, + limb0: 0x81e9a2bdf532957986840f5c, + limb1: 0x2d9bdcb67e2986ca9e9c4dca, + limb2: 0x2a28a9b40b9d7dbe, limb3: 0x0 }, w4: u384 { - limb0: 0x8a76f9719091c9eefa6ce55, - limb1: 0x6dec78265a77d850c9e2593, - limb2: 0x5a401d816c548ce, + limb0: 0x8866e2f79af8ee57fe02c3cf, + limb1: 0xf16de056306b4f22a2be70de, + limb2: 0x26f48439eaf31fd9, limb3: 0x0 }, w5: u384 { - limb0: 0xd0fbe99e64a33172ed912d65, - limb1: 0xb2146a0cb52ff73488fc3c49, - limb2: 0xac62926759ac83e, + limb0: 0x4bcc853870b81efc6f347292, + limb1: 0x15c9c4f46f9dae5b924d5e8a, + limb2: 0x2b85e5bb09efdc79, limb3: 0x0 }, w6: u384 { - limb0: 0x28957661a7f5295bd099c5fd, - limb1: 0x80bcd1be3e53987a9472dd5a, - limb2: 0x2bd1c9c87465f64f, + limb0: 0xb469918f565d088590facc3, + limb1: 0xc246eaa269d79e3256c51b3b, + limb2: 0x68d3e34fb90cb6d, limb3: 0x0 }, w7: u384 { - limb0: 0x79a88aee054f1084714e9a41, - limb1: 0xe1e32e8034ad8c7b4f50c7e, - limb2: 0x2ff4d9975358413b, + limb0: 0xaac70eb5725cde971b1f27e1, + limb1: 0x4b205b6279ef98fd118f4039, + limb2: 0x26ef32976e198003, limb3: 0x0 }, w8: u384 { - limb0: 0xd0817a333747ea44f05484db, - limb1: 0x4528d367e06ce031ca5b932b, - limb2: 0x147108936574b82b, + limb0: 0x9f0d6da065d8dd7a90d66d94, + limb1: 0x3e50aaa0bbd3523441ca2011, + limb2: 0x2a547efa29dbf6af, limb3: 0x0 }, w9: u384 { - limb0: 0xce8b3299c2b5d5b10f73932e, - limb1: 0xb2036a882dcffd0caf41be7b, - limb2: 0x85570099fc4903, + limb0: 0x1566231cbcfe147d9c74a501, + limb1: 0xd10a111036ef06994a4c75cf, + limb2: 0xddea3e62f9296f, limb3: 0x0 }, w10: u384 { - limb0: 0x8359b41ab9d485b5cc606003, - limb1: 0x1a89459d605ab220c1d36ed9, - limb2: 0x27fd0f1b96e4cd42, + limb0: 0xf5e8657fb5fef4cbac635ba9, + limb1: 0xb92fa4ea3f8196d0250e2f70, + limb2: 0x2a7247da78d4b770, limb3: 0x0 }, w11: u384 { - limb0: 0x894f856b9a30a557681d9d01, - limb1: 0x96cdbb3d880a91e891ccd758, - limb2: 0xf7f09e6b9df85b9, + limb0: 0x4896554cc1abc4b555aabfc1, + limb1: 0x3197ba9bdd2ed66b4e0859d7, + limb2: 0x24a0dc3bde019c04, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x190ca07e6d5d697be2c3e36b, - limb1: 0xb1d9fc7cbb2e8f8609589d40, - limb2: 0x17894b4dd1c8badd, + limb0: 0x50f6c55168a1b4284890d258, + limb1: 0xe55edcce41698c53febb077f, + limb2: 0x1f80080df43c5f6, limb3: 0x0 }, w1: u384 { - limb0: 0x3e7ec1e051403aa33d4757e5, - limb1: 0xfcfad9d8455a4983fc8a988e, - limb2: 0x62a803c47982cd8, + limb0: 0xe92b4fe73476e51df7c7848c, + limb1: 0x68a82b82a24323e42bbae48d, + limb2: 0x248f6c608362e75, limb3: 0x0 }, w2: u384 { - limb0: 0x4aee0b27fc1e599f3adbd75a, - limb1: 0x8d0678109f5cf168b91164af, - limb2: 0x1d8b49dcc834bf27, + limb0: 0x294d30da019a3129922caef3, + limb1: 0x93c45263c7ab7dfe04d970d8, + limb2: 0x1635a163ef80868c, limb3: 0x0 }, w3: u384 { - limb0: 0x62d00507e40f1cf0bd5d0461, - limb1: 0x4f1851e4d7c3300c62636661, - limb2: 0x1c301eeff03f9d4d, + limb0: 0xfaa690d1ee2c7c5b01b61006, + limb1: 0x652df1907d2d9105600666e4, + limb2: 0x41cfa1b74ac3d1e, limb3: 0x0 }, w4: u384 { - limb0: 0xd4dd81478e9c216895964960, - limb1: 0x3eabd9ac5f35c3050a739304, - limb2: 0x28e0c1b67860758e, + limb0: 0x103cb784ce1e8c197e3b8fd1, + limb1: 0xa7ec57b82f38f3a54a344cc0, + limb2: 0x22bee6549cd4f016, limb3: 0x0 }, w5: u384 { - limb0: 0xe477b6bfb7cad013dd786b57, - limb1: 0xdad14ae7b5373c0451d9284d, - limb2: 0x2af9f022697eead4, + limb0: 0xb92eb9b752ec56305d1d9d9b, + limb1: 0x69ecdb5db6581e17f082b665, + limb2: 0x249a15b5c0932e0, limb3: 0x0 }, w6: u384 { - limb0: 0xe2ac6dbb3da5c1224702200, - limb1: 0xeae2426305406aa25b820dac, - limb2: 0x2a81442e27f23026, + limb0: 0xf9d549429da7389d4fa491d0, + limb1: 0xb6d4123e186c66c4141b73e2, + limb2: 0x5bd07ccffd451e1, limb3: 0x0 }, w7: u384 { - limb0: 0xe57ec7543daca6a2782a0ec8, - limb1: 0x8856f5809d134c4ecc51610f, - limb2: 0x1e859b5352259a34, + limb0: 0x233eb62c7362277fa16702f8, + limb1: 0xc67b1034def416eef314e4de, + limb2: 0x304428aa71f8e17c, limb3: 0x0 }, w8: u384 { - limb0: 0xb7ddf53b0c649bdfa617329, - limb1: 0xe6f75b3396587ef822da9b5e, - limb2: 0x278066096b6470e7, + limb0: 0xaa19297a040677aeeb0261e, + limb1: 0x4f8ab46913d129c27ac24e55, + limb2: 0xb7c015665237e71, limb3: 0x0 }, w9: u384 { - limb0: 0xc2c98a4155a9b5a183d45bde, - limb1: 0xeb427f8e5c721e9a7bd1fd66, - limb2: 0xb533db063bc73cd, + limb0: 0xe3798f6596624db69ecf722a, + limb1: 0x7e9864b29f04312664f9976e, + limb2: 0x2757091263418578, limb3: 0x0 }, w10: u384 { - limb0: 0xf3098f9a6d73500d7c73b3b5, - limb1: 0xd018b8e4059464999201b06d, - limb2: 0x1cc59d405e3e67a7, + limb0: 0x95a9e04bea49398b99e2e212, + limb1: 0x374223cfe0e9b6263210bcf7, + limb2: 0x410304883f0b3f5, limb3: 0x0 }, w11: u384 { - limb0: 0x811eb0af40b11bef71f5c368, - limb1: 0x4293b12234ddcfc52965c154, - limb2: 0x5db7906c51168e8, + limb0: 0xcbec2f4e01c5e8a231f10988, + limb1: 0xc88d1aa49c149f9e6fa55da0, + limb2: 0x1a1395e7c145f45c, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x77bf9754aaf1165de7294780, - limb1: 0x5937488332e08435379990f, - limb2: 0x4d63f2c442b6856, + limb0: 0xcb10ba882d7e63fe969c138a, + limb1: 0xd31e3aadea937b5a79af6160, + limb2: 0x19ec81b6e23f6a46, limb3: 0x0 }, w1: u384 { - limb0: 0x2ae9cb89e3781ee94d2afbf9, - limb1: 0x161527eb823cd3022a3a4197, - limb2: 0x17625d088c66d76e, + limb0: 0x822477a5ce7ca21093e091c5, + limb1: 0xc2a9c693fd13d2891defd340, + limb2: 0x8d41b74d18a059d, limb3: 0x0 }, w2: u384 { - limb0: 0x8ec693e1389da7c25fb9c0f4, - limb1: 0x8d0ee5577a9c6694c54f49c3, - limb2: 0x12da2c04050b914, + limb0: 0xc10dd86896e31a9b4ed7d7ef, + limb1: 0x2ea6fd14a26a0eae3b7e0f68, + limb2: 0x5dcec191bdda932, limb3: 0x0 }, w3: u384 { - limb0: 0x325025373dc8e5fb43116573, - limb1: 0xd8195493c0ab8315b58ae831, - limb2: 0x5a2ed8194a1120f, + limb0: 0xc812a927db61b694bce26454, + limb1: 0xc3f8997c112cab569bd3c135, + limb2: 0x1c04387b1e07805c, limb3: 0x0 }, w4: u384 { - limb0: 0x2bd261ea740886c5459f59d3, - limb1: 0x64437e59b1adef79f9a1ef2b, - limb2: 0xf89331cd8e62137, + limb0: 0xed43e071cc870c5451377cfa, + limb1: 0xcb02a2c30847c1d1c6d88d6, + limb2: 0x31481a2e199b264, limb3: 0x0 }, w5: u384 { - limb0: 0xedada02329368de02a1c4ccc, - limb1: 0xa9886b877e5de1a07c1e2eb2, - limb2: 0x2b71250d316ea698, + limb0: 0xe9630acbf8c1f4d018e57840, + limb1: 0xfc5c9c708d98e52ec35a3c46, + limb2: 0x15796528c143029, limb3: 0x0 }, w6: u384 { - limb0: 0xcc9060245dad053c0843326d, - limb1: 0xbda7af6dbe266a4b8739e01c, - limb2: 0x2e962d3737f22c2a, + limb0: 0xb454e80432e6b3603e5450c2, + limb1: 0xd5b52f8f025ed64591184c80, + limb2: 0x124c5e0c04e00352, limb3: 0x0 }, w7: u384 { - limb0: 0xb02ed6c0b8544b4b0b037162, - limb1: 0x68305f882e3169136bce2fc4, - limb2: 0x29008b9df99d56c, + limb0: 0x88a8c02e9a61b3bee4a0b034, + limb1: 0x8e75aafc8cadc423891d1313, + limb2: 0x5483f9f926c83d1, limb3: 0x0 }, w8: u384 { - limb0: 0x585e0874747d135fe8f82ba7, - limb1: 0xfc0793ff28d4257e41eb193e, - limb2: 0x2f9a4758fde9a3d1, + limb0: 0xbf0fc73ab7ffa9a13fd6db87, + limb1: 0x9991ce12892be9c5d7f9d46e, + limb2: 0xd421fbcf9f84373, limb3: 0x0 }, w9: u384 { - limb0: 0x6dfa01441fa2d8290f7528bc, - limb1: 0xe5726e39354d88b1b5c7962, - limb2: 0x2b8d561e6996cdc2, + limb0: 0x2d84917c8062b6f766e97458, + limb1: 0x567e92957f296335498bd766, + limb2: 0x2324dea9473053c3, limb3: 0x0 }, w10: u384 { - limb0: 0x696367f4d904152d4b0376bd, - limb1: 0x8fd091171ec54a434d692161, - limb2: 0x1a50080441cc0379, + limb0: 0x85d19f8aecc93c04655c12af, + limb1: 0x7c0215d289580d001af79654, + limb2: 0x23c09018d17576b1, limb3: 0x0 }, w11: u384 { - limb0: 0xf3916ecf0f7567d53bee488, - limb1: 0xa08ef2dff5db6995b088bf93, - limb2: 0x943e695ba42c44, + limb0: 0xce699a8a99b0059a4afe4946, + limb1: 0xe44e9dd28ae72f98c716d11f, + limb2: 0xd908b0e9e743643, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x82806411a218799e0579e254, - limb1: 0x7806c105aa06f736474f3a8d, - limb2: 0x1e59af5d3f392185, + limb0: 0x1b88acf0e3e2e34b676be6a, + limb1: 0x1fd85c41c5e9f62440461f40, + limb2: 0x25acf5265a58c206, limb3: 0x0 }, w1: u384 { - limb0: 0x1750161e9fadd989002d58af, - limb1: 0xc7b88cf9dd18599df7e43bea, - limb2: 0x2d90d3922845680c, + limb0: 0x65ed1795916201edea85285b, + limb1: 0xcd46c8085e4420b739d31ff, + limb2: 0x1d0dc9862f0df1d0, limb3: 0x0 }, w2: u384 { - limb0: 0x568bab37e7498c3e3f977b6d, - limb1: 0x21b543a7815dbe0b2f48cebc, - limb2: 0xfeba20470c58687, + limb0: 0xecd2e8f903a39a0b8addd6cc, + limb1: 0x2082e9ef8a910f8a9541e883, + limb2: 0x1a5cbd138cd41a39, limb3: 0x0 }, w3: u384 { - limb0: 0x41b33801ef909cd4b59d2824, - limb1: 0xb31736421e37b518f55bcf2, - limb2: 0x2b18a21ed0d83820, + limb0: 0x2e68e538fbfead571621cc19, + limb1: 0xebfe8be18a72e40daad8d290, + limb2: 0x25c63e8499c1630b, limb3: 0x0 }, w4: u384 { - limb0: 0xa631afa7988a5e6a92cf2702, - limb1: 0xda0eef8ebefde3c53d5ad6d1, - limb2: 0x25f788d0cf9b262c, + limb0: 0xe12e430676ec71dad0d5adb1, + limb1: 0xdfc723da10f43210606196b8, + limb2: 0x10bee69ac0bff7e6, limb3: 0x0 }, w5: u384 { - limb0: 0x5c5940ba2b874d277480bd1, - limb1: 0x5b5f29c9f74afd2a1070e8e7, - limb2: 0x2afd72f5435f9e8c, + limb0: 0xdcdc3a09c9f204cf31851793, + limb1: 0xc6ff1624ffb3c3606c4d4fc4, + limb2: 0x217a8d4f35a1624, limb3: 0x0 }, w6: u384 { - limb0: 0xd23244e636b772737e26838e, - limb1: 0x74d5aab42e3ddcb25fa430af, - limb2: 0x13c03b154dc5972d, + limb0: 0x8ff9be656d6578fb4209f6e3, + limb1: 0x50eb00ee79e9eff10c4df722, + limb2: 0x80984e8da96c810, limb3: 0x0 }, w7: u384 { - limb0: 0x38ddcfd48dd9f05805eda624, - limb1: 0x78e56ff7e6ced3f592cee109, - limb2: 0x1360fcb4dc0b9fd7, + limb0: 0xc9c41bd21859d4e734618b82, + limb1: 0x8ffe23acdb27534527d6c55c, + limb2: 0x1cdc736f486c208, limb3: 0x0 }, w8: u384 { - limb0: 0x6935e10381e5e20dc865177d, - limb1: 0xc46309447bf9a22fbc7a0830, - limb2: 0x289cafef86fda874, + limb0: 0xf2b9264f0bb4c7e7aaada707, + limb1: 0x668c012a8098ba4947200015, + limb2: 0x23204d0e6fa3aae4, limb3: 0x0 }, w9: u384 { - limb0: 0x3ac3b051df30f6251a7b30e1, - limb1: 0x46eb2326dbbdacb1a5c91fa, - limb2: 0xa9bd27ef8cf66eb, + limb0: 0x5f024b6b1c7b410cfe68ae83, + limb1: 0x909cfd8b94e195a7f37128f9, + limb2: 0x12d612e110990e43, limb3: 0x0 }, w10: u384 { - limb0: 0x3eed24c5795787b857189915, - limb1: 0x675de76452208252a6ac67b, - limb2: 0x209015b575d78398, + limb0: 0xd9bdc77b6412732b47c9222, + limb1: 0x4ef2630a07ccaf0e0bf91cbf, + limb2: 0x1720f2122f73bd31, limb3: 0x0 }, w11: u384 { - limb0: 0x4345ecbd5bd887d4125609f2, - limb1: 0xacaccc77f02c7c61efc4cde4, - limb2: 0x157376aaea117b85, + limb0: 0x3f8a226b49cfb1c498fb22d8, + limb1: 0x7544d0ff451a9acf12d68f06, + limb2: 0x9bbd959cf8915a0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x698600861d8bfa2f6e389ca, - limb1: 0x8d3bdff3474113d7c7fb62a0, - limb2: 0x2b2feb28cf789e59, + limb0: 0xccb40ab6a6339c0ffc02527d, + limb1: 0xd4cadfb772b2ad4493bfafc3, + limb2: 0x138c894ce291bd4b, limb3: 0x0 }, w1: u384 { - limb0: 0x8d4172d0ba6180febc0585a5, - limb1: 0xf23b0996fc2fea67a99cdc9a, - limb2: 0x2806be5a17981124, + limb0: 0x99a65bb1a66c4c4f7c9b4ba2, + limb1: 0x5f863d51de5bb01971ec7358, + limb2: 0x3a19c4bfe41ea65, limb3: 0x0 }, w2: u384 { - limb0: 0xca6b6d25881635e905163374, - limb1: 0x60c0564f6f8e96847d1f536f, - limb2: 0xf476ebd08c77707, + limb0: 0xfa9c344de25d9993fb92076a, + limb1: 0x7bd171d67070419c2ca01ca9, + limb2: 0x28ab78cdf1fe0b56, limb3: 0x0 }, w3: u384 { - limb0: 0x622e1e64813dbed3c29da7ab, - limb1: 0xe4cbf532c3713afb02760245, - limb2: 0x1bf7be2ac94784c, + limb0: 0xf32809ec696cc281c50789a5, + limb1: 0x7af74d168fbcb213915f3f88, + limb2: 0x1a7bdacd34e68255, limb3: 0x0 }, w4: u384 { - limb0: 0x94ca927052e001151040b8a7, - limb1: 0x8fd1ed73aa33383a347873f9, - limb2: 0x1455f6581b14a554, + limb0: 0xb2a8b005ef1dc20d31fc5dae, + limb1: 0x85722e070a56cf271b5aff3f, + limb2: 0x1e6527669975e483, limb3: 0x0 }, w5: u384 { - limb0: 0xa8182f9adaa5ba0ca6f37c5a, - limb1: 0xe37b796a5170e115e1cc59c0, - limb2: 0x10cd18e447018ff1, + limb0: 0xadafdcc7c982df91bb52cb2b, + limb1: 0x7e70aa66475cc39f16748ef, + limb2: 0x34c54fb19f7c471, limb3: 0x0 }, w6: u384 { - limb0: 0x7efda37471a53cd90c37a015, - limb1: 0xd3039fc6edcfe08c67aefe53, - limb2: 0x1c2cf9624bf3f65e, + limb0: 0x24192a49281515d0d1f5c38b, + limb1: 0xfc588dec7be8e73b7ff55218, + limb2: 0x10785c80abd3a669, limb3: 0x0 }, w7: u384 { - limb0: 0xb030161ff07edab22d035c94, - limb1: 0x103a05e4e7065aba66f7ac20, - limb2: 0x20901528c5a2d6e6, + limb0: 0x2e39c7f56f4547441c84eaed, + limb1: 0x2f181995efbd21759c55a68, + limb2: 0x22644cac3d872fc2, limb3: 0x0 }, w8: u384 { - limb0: 0x3b9dd926043ac3658ae10036, - limb1: 0xae7c6b39ec1af8e54adc7390, - limb2: 0x147371cc47f57426, + limb0: 0xad21d259f09019daee2caa03, + limb1: 0xd21b76dddc883987c203a64, + limb2: 0x1a654527ff3fba5f, limb3: 0x0 }, w9: u384 { - limb0: 0x99458676d9ca9268bcd2bb99, - limb1: 0xb4ad59cdd921827e7e0b4f67, - limb2: 0x15647a5168d72980, + limb0: 0x16db69bd069898b78b6f2b43, + limb1: 0x889267a26abcfdf288f4eb55, + limb2: 0x1f00c092d22d161, limb3: 0x0 }, w10: u384 { - limb0: 0xb01410a48708511b42150e23, - limb1: 0x38c53c105255c86c4af5d58a, - limb2: 0x647eff2ff49ea90, + limb0: 0xfb1c56d10f40bcf6d550c888, + limb1: 0x418b47d6d3b152c2a7b5dbb3, + limb2: 0xa8d73a1d93f932f, limb3: 0x0 }, w11: u384 { - limb0: 0x59f3e6a55f593dcc2c8109b5, - limb1: 0x2534611c070ca6bdf5b4a447, - limb2: 0xe76ad2ea308e949, + limb0: 0xd9a5a49a78a01d1c54c67476, + limb1: 0x3908bd80ce6800111b318c3c, + limb2: 0x1685854b8bf251da, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x190e5e9581127a81dcea3791, - limb1: 0x1d8cd034a27eb6b8f0eff673, - limb2: 0x1f7126fbb3700c02, + limb0: 0x21006fdd5e2f0ef66e018f87, + limb1: 0x88f96d3b40f14915a5653e3b, + limb2: 0x23d340046f2ade70, limb3: 0x0 }, w1: u384 { - limb0: 0x6f76a16b147bdeb27c1fd48, - limb1: 0xf00ea12295e73982a60123d0, - limb2: 0x123297a15b4b5ff8, + limb0: 0xd2c514776e847b156a465562, + limb1: 0xaecca133f1c1847fb8bfd53c, + limb2: 0xc9624a5fd5fdf2b, limb3: 0x0 }, w2: u384 { - limb0: 0xc8bfaf56490845277a4798de, - limb1: 0xcb34f1dee53716954bab70e0, - limb2: 0x2bd842217716f8e7, + limb0: 0x49cfe3cb511a5064009b7955, + limb1: 0x691eba3ce1837d8fa954a8da, + limb2: 0x25b5f2c0b6d10486, limb3: 0x0 }, w3: u384 { - limb0: 0x94e6084c6e2b3bcab3af304c, - limb1: 0xff14b82940108e660d4a8119, - limb2: 0x1cd5a3903eb90e35, + limb0: 0x4ca7859e651778f0a7f1993a, + limb1: 0x77fdd4df0bdc812df9cc887d, + limb2: 0x2454850cd4f9266d, limb3: 0x0 }, w4: u384 { - limb0: 0x467135860ab4b55188cd5f28, - limb1: 0x4d98b420d51d3d4955d85fad, - limb2: 0x1699ca77fda210b6, + limb0: 0x6d55ee1bbeb1a15c6d94940a, + limb1: 0x59be525deb7833c19e1e3d9f, + limb2: 0x29241c890e9755e8, limb3: 0x0 }, w5: u384 { - limb0: 0x5ff4edf1c6155feb4a3a43dc, - limb1: 0x2fa5fde4fe680727904dd90a, - limb2: 0x1a98c0637fc03c9b, + limb0: 0x1b145f4cc8706e672408722f, + limb1: 0x434f136d1b5886217d126120, + limb2: 0x1ddaf41db35f99d0, limb3: 0x0 }, w6: u384 { - limb0: 0x9cee5945a0cbc26ae0d41e85, - limb1: 0x9be9024a26c9c5270b7a59ae, - limb2: 0x16aa4abe89464e31, + limb0: 0xb4b53584ac3a90669ed3133c, + limb1: 0xf3d6638dd1c1ecf8d4e93780, + limb2: 0xe297d42b2cb7641, limb3: 0x0 }, w7: u384 { - limb0: 0xaeaccca2043bba3840391e64, - limb1: 0xa58c86a0fc2fa2ce2044e869, - limb2: 0xc08dee8285f7ad3, + limb0: 0x33f1058389f875d595b03b0b, + limb1: 0x4565bb8b662832dc2795d1a1, + limb2: 0x1627917dbf87da34, limb3: 0x0 }, w8: u384 { - limb0: 0x29d50e4fd715998070eb31be, - limb1: 0x8545b5fe97df2876fa6ca051, - limb2: 0x5c6c753cc78867b, + limb0: 0x90bd889933068d38b1f98965, + limb1: 0xa38f803ad5b7530d0d649c91, + limb2: 0x27093bf4ff778401, limb3: 0x0 }, w9: u384 { - limb0: 0xd493d61d4389fa3e678ef7a2, - limb1: 0xb59cc78d9777f4d48560c8ca, - limb2: 0x91e046d8f6be02e, + limb0: 0xbeb7beb2ed276a54ee95ab49, + limb1: 0x88be8f505ea0c609485948d7, + limb2: 0x12ccd040ca595305, limb3: 0x0 }, w10: u384 { - limb0: 0x54e19d8d4a839a0671e555b9, - limb1: 0x42fd9d353275aba32cbab9e4, - limb2: 0x2fb91fd40e23b587, + limb0: 0x9298a231089596a6bb843ece, + limb1: 0x4b9b5d2484503c8edf73bdf9, + limb2: 0x15fdada499d73bee, limb3: 0x0 }, w11: u384 { - limb0: 0xaed628db5bc41788716bb20f, - limb1: 0x66c2f63195d6707be2487702, - limb2: 0xa0a5486cffdbe73, + limb0: 0x6d9b690d8535bcec4ad83729, + limb1: 0xd9b12e12e9bff30def2a3769, + limb2: 0x2841230d9e280418, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xbf8419753d4e174646c989e7, - limb1: 0xcaf22e1a94be9747461d8f99, - limb2: 0xc2d50e3448f114e, + limb0: 0x16b507960595b044945a6e94, + limb1: 0x1514051b796f3b7f8a3de086, + limb2: 0x27357f7d685f2723, limb3: 0x0 }, w1: u384 { - limb0: 0xa793508a4530312717066a55, - limb1: 0xf868c03e8001d095c10835eb, - limb2: 0x312a309fe1fe355, + limb0: 0x4ab45e96ffbd0907b2106956, + limb1: 0x7a93d6228b925a3f7a78936b, + limb2: 0x4c87f8b94d97b22, limb3: 0x0 }, w2: u384 { - limb0: 0x86ce0b841521c6ed286e3aa0, - limb1: 0x40df53fdaeeb245f32c5caa2, - limb2: 0x1aa419b81bdd0e9c, + limb0: 0xfe321a85076652fb3cc0ac4f, + limb1: 0x1820f7e3ec4315528cdb2611, + limb2: 0x18d3575ece0190e6, limb3: 0x0 }, w3: u384 { - limb0: 0x7978d0398569a917c08498d6, - limb1: 0x5668e95c24350d3c84870a86, - limb2: 0x1b869b393fe7f96e, + limb0: 0x4d147488d17fe20e0261ad42, + limb1: 0x14d44f857a16aaaf685a885f, + limb2: 0x2cc858a4c3e61799, limb3: 0x0 }, w4: u384 { - limb0: 0xdd3b833548ff0d86c2bc089a, - limb1: 0x5a06eef69f48e55d76c31bd1, - limb2: 0x17886a2f81299342, + limb0: 0xf6625f77eeb0bde1c3f3656a, + limb1: 0xaca6db612f2aa151f8aff75e, + limb2: 0x1f58543b894de7df, limb3: 0x0 }, w5: u384 { - limb0: 0x8a7a2d5b0377ab18e42c8c41, - limb1: 0xf5fb8e58588d08da0f333404, - limb2: 0x2b22c30630098c7a, + limb0: 0xeb26b46bb6fbd7e9f2305f49, + limb1: 0x5cc1c29de8f735322a0053b2, + limb2: 0x1d9092e859be9fdd, limb3: 0x0 }, w6: u384 { - limb0: 0xbc508d2acea5b711f594e963, - limb1: 0xf8ae86e67ce0aebe6afbaf94, - limb2: 0x1c38d2ac3aee449d, + limb0: 0xa7e52cec97e4dd263e4f4aea, + limb1: 0x710e2c580093256c6910ed06, + limb2: 0x213311ebb0283240, limb3: 0x0 }, w7: u384 { - limb0: 0x1361a9d3c9e5bef9770e9ef2, - limb1: 0x3cc4801ad0830a24a543d088, - limb2: 0x10072272bf66580f, + limb0: 0x5c7760e54bbcd48883aa6e94, + limb1: 0x111b1ced9f7ca7f8ba465dd2, + limb2: 0x2f045b63d84dff46, limb3: 0x0 }, w8: u384 { - limb0: 0x57c1d06a0a3595ea015ca09c, - limb1: 0xcc096d731f7759c3109e0e36, - limb2: 0x21cb89662a76ec31, + limb0: 0x496b9f356b12ac7501283533, + limb1: 0x21f48f6b1f41d98d5569a0a6, + limb2: 0x2636bda180b9da8f, limb3: 0x0 }, w9: u384 { - limb0: 0x4516ed9ff5b92f9f90f3df48, - limb1: 0x1662dc59a5ccb34368cd7637, - limb2: 0xcabf34b66829cc4, + limb0: 0x1dc3c4c98ac359c2e1da26ee, + limb1: 0xa0b605022a44e93d30f5f552, + limb2: 0x186d6d8f7f7eb54e, limb3: 0x0 }, w10: u384 { - limb0: 0xa865fda8c392480c1cf86e2c, - limb1: 0xa336b824099b22b04e3d6654, - limb2: 0x1ba0bd9a4e7ad756, + limb0: 0xd87eb0a5c3c5848ba2750684, + limb1: 0x51fb01a46081d71029f4ecd3, + limb2: 0x2176b1ef545beace, limb3: 0x0 }, w11: u384 { - limb0: 0xae6445f187c8f306f8db8a09, - limb1: 0x3279a7a0c37bd714d994e187, - limb2: 0xe5f22af631287c0, + limb0: 0x7f2bea7d1e7232aa687892a0, + limb1: 0x8f772b77eabe3d206eb6ef77, + limb2: 0x277fe6cddc09032f, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x5ea8ac7e8f5ef0b2c000c90c, - limb1: 0xd9f3bc8e77a6b791157e8123, - limb2: 0x693d0de0bba5b20, + limb0: 0x2ecd11f68a10677fada3a3d2, + limb1: 0xb9a11bece91580ec4ceedcc9, + limb2: 0x28160ade78e99699, limb3: 0x0 }, w1: u384 { - limb0: 0xab1de9b6dc44c64714ee00a6, - limb1: 0x2feea994b1a7a1f8dbefe79, - limb2: 0x1df77aad34e7714, + limb0: 0x2287454b227e7ee5fdfa88c8, + limb1: 0x9cd723389ac10448858c0549, + limb2: 0x1a70cc4548a3aa86, limb3: 0x0 }, w2: u384 { - limb0: 0x59e053fa50074ec129fca50d, - limb1: 0x89f14e0a8229346e38615bab, - limb2: 0x4133326de68be3f, + limb0: 0x4f92d1262f714f144af42aae, + limb1: 0x11e5aad6d9b12264f7633d1e, + limb2: 0x2f1b1f7525eb6a48, limb3: 0x0 }, w3: u384 { - limb0: 0x57460048f3e41b44a4da0de4, - limb1: 0x92d2c64348a5f3823af3aeb2, - limb2: 0x120fccb56e20ad19, + limb0: 0x863ae71ab3c710ef8910268d, + limb1: 0x2a9e7e422d4f28bd61c28f1e, + limb2: 0x2520e391f79d8de9, limb3: 0x0 }, w4: u384 { - limb0: 0xd138957be6b6d9f5ecbcac0b, - limb1: 0x59a6ab1515bb97bff9a0803, - limb2: 0x459c7e0eef14cef, + limb0: 0xea6941361fda686face6fa10, + limb1: 0x976476f62c928c8cace68785, + limb2: 0xe6b475dd74f48fc, limb3: 0x0 }, w5: u384 { - limb0: 0xc67f92580ba25f6f6d9da93f, - limb1: 0xcd154223fcbf9235a18a6061, - limb2: 0x7bfbafc4330b5ca, + limb0: 0xe80f446c5f060c2626b75587, + limb1: 0xde0796340d7983eefecef0f3, + limb2: 0x1542ae28bb191809, limb3: 0x0 }, w6: u384 { - limb0: 0xd6f440302a578189e566106d, - limb1: 0x8da5d056b46ef19ed1e04e39, - limb2: 0x9c18bcac630a29e, + limb0: 0xf8fe37b55420fd01618d8cb4, + limb1: 0x1b6dc71ede564a82c42996c, + limb2: 0x29deed4ba0d0a51, limb3: 0x0 }, w7: u384 { - limb0: 0xfa07a1c729e30d87692e9556, - limb1: 0x7dadfc983d063add7bce79d3, - limb2: 0x2c06dadfc05cffbf, + limb0: 0x5c22008fb3a470fdd79ed423, + limb1: 0x25da8c0704aaf9cbc471c7e0, + limb2: 0x135b5ff11accc0c6, limb3: 0x0 }, w8: u384 { - limb0: 0xb495e39d14027328eb66468d, - limb1: 0xc1eb261efa2e08f47c9cfbf, - limb2: 0x282ba7d8f9d7332a, + limb0: 0x4dfdff3bb6a9b5f90ce8d212, + limb1: 0x6dbc246eb1da2c608be4e195, + limb2: 0x1fab206e8d6cf9a, limb3: 0x0 }, w9: u384 { - limb0: 0x46107ad6e736ab47446af055, - limb1: 0xe5da97df96f85385314b0a43, - limb2: 0x2a8bbc0934e4887e, + limb0: 0x9b32e4d900d5482d50b03728, + limb1: 0x5b9ab146b4f75cd338ff9893, + limb2: 0x1e3baf3fff1d161f, limb3: 0x0 }, w10: u384 { - limb0: 0x3b9d8ab8127f326803c460b6, - limb1: 0x27986ae89836838068a2e358, - limb2: 0x22394bc5b1b7783, + limb0: 0x6f8f565d370fba371135cb50, + limb1: 0x8fc24b271ea4fdd1d53df6dd, + limb2: 0x19517e6785e5b263, limb3: 0x0 }, w11: u384 { - limb0: 0x5f0d42cfdad6f61d3fdbb1d9, - limb1: 0x833bf2adb52f9eda2a4e92d9, - limb2: 0x6349c82a28c308f, + limb0: 0x53a6d783ddf197d0a1b8445e, + limb1: 0x383f2a40c64e5cae15e640ee, + limb2: 0xccbcbb1014c6b9c, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xafbc0115feb47a01c70ec22d, - limb1: 0xaf265800d89c372440a037f9, - limb2: 0xfcabb0b39db5a43, + limb0: 0x3ba9b0de2ff5c1bfb276eab2, + limb1: 0x9dce18c0a1248d67baa7ec55, + limb2: 0x24ccbfddaf0e55a, limb3: 0x0 }, w1: u384 { - limb0: 0x2e7aa30618ebcf9b54b39eb4, - limb1: 0x25808c044c6cf48de940da09, - limb2: 0x106909bb86942c39, + limb0: 0x55a61d282eea46a56b3ff069, + limb1: 0x5c48e008b47fe82d42ecbe28, + limb2: 0x1deb0ea629b26b2b, limb3: 0x0 }, w2: u384 { - limb0: 0xf8a50677c3c8c40a17e906e5, - limb1: 0x6bd68a7e836206ce67c9295b, - limb2: 0x298f83a89d1c532, + limb0: 0x1c805838d3cdd3fa0632a9c0, + limb1: 0x2a6acd93933c576eea2511c4, + limb2: 0x26511d4402583d06, limb3: 0x0 }, w3: u384 { - limb0: 0x58864169696d771ded64176, - limb1: 0x3db05bf818fce0645a16c782, - limb2: 0x2e0826a3e8176783, + limb0: 0xcea59382a1ea53edde0b1a0f, + limb1: 0xdbcc0328caba848ec1ab2bc8, + limb2: 0x2a29b957d293401b, limb3: 0x0 }, w4: u384 { - limb0: 0xedfb323f5461b6c3a7e8eab0, - limb1: 0xe3ccedf3aa332b3b56cde8fb, - limb2: 0x2eaa557679da7cce, + limb0: 0x5f638752a76a6e80fcf28959, + limb1: 0xbcf43438bb59f795a2dabeee, + limb2: 0x16a1dc0d89bbd81f, limb3: 0x0 }, w5: u384 { - limb0: 0x89dd461a36d9ded8d85cfb75, - limb1: 0xbbcdec60d9ec545997df9217, - limb2: 0x1d55990ccdbdd30f, + limb0: 0x21c974d6b4368f3d291b9a8d, + limb1: 0xc2915aea978ec6b36bc04547, + limb2: 0x165aed311ef1f8f, limb3: 0x0 }, w6: u384 { - limb0: 0x6a0814a0150eae1c32110f38, - limb1: 0x1452d686360096b14ac46c5a, - limb2: 0x2be289f4284dd687, + limb0: 0x731cd420b84d3ce612a01510, + limb1: 0x7aa2380deeeb56b3def980b0, + limb2: 0x1416400f672379c6, limb3: 0x0 }, w7: u384 { - limb0: 0x9ff6ba4d928544efc483f832, - limb1: 0x421a93fd1614bfdf03ca9a5c, - limb2: 0x23edbefcf1ab789a, + limb0: 0xe79f38703f461b0d6f069e20, + limb1: 0x44a2b1d54d9b36eb385b78dd, + limb2: 0x24b83e08f5e83c97, limb3: 0x0 }, w8: u384 { - limb0: 0x1d4ecf45af26300c4b2f6b06, - limb1: 0x6ff6d2e1c39857121e9c9ba5, - limb2: 0x936cc0c4010f63a, + limb0: 0x60130d436eb273968bcd4ec9, + limb1: 0x47b7b76c1e678a0658036d67, + limb2: 0x29a4888d987fe960, limb3: 0x0 }, w9: u384 { - limb0: 0x26917d02c32b682cfb4e7c97, - limb1: 0xbedbde1f8ff9691e809d80b7, - limb2: 0x2d767b1874af4e08, + limb0: 0x260f528b84d35e9d2a3f59e2, + limb1: 0x8ec55538a13ccd199c8ce9c2, + limb2: 0x13e1ff4f6471f37b, limb3: 0x0 }, w10: u384 { - limb0: 0x6a0816ddcffce57a04733d74, - limb1: 0x729c72bd16b9747788ae7f32, - limb2: 0x50770e2d0511eca, + limb0: 0x5a926f762261bac5627ec949, + limb1: 0x49646ded0511e0e69d0307f5, + limb2: 0x181635aa9d81bfc3, limb3: 0x0 }, w11: u384 { - limb0: 0xc0bd85f33691a50bf8088952, - limb1: 0x11e9a7d3d730fedd7c24e40b, - limb2: 0x11039d1911a0edaf, + limb0: 0xc29a677a4193993e9bbe8918, + limb1: 0xa299d0711a4b1f3af2a229e9, + limb2: 0x3d1da5cdbc46e0d, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4af5d405392cecb6ce3e2e3c, - limb1: 0xd04e40e28f4274cd778075ab, - limb2: 0x31443e2279a377d, + limb0: 0x499429d0749995459cc8aaf9, + limb1: 0x8ce154de1b30484705c54088, + limb2: 0x1be6a18e83a7e6fe, limb3: 0x0 }, w1: u384 { - limb0: 0x6d77e403eeca6082bd42aa6, - limb1: 0x6357f6b93c32057ce74bfafc, - limb2: 0x458d4b3e4e3bf3e, + limb0: 0x1eb5e2c697e1362ad322eae0, + limb1: 0x1ccfda92724149c8041066c, + limb2: 0x18bf655a2a4377b7, limb3: 0x0 }, w2: u384 { - limb0: 0xce805cf9a7f92173ad5b9634, - limb1: 0xc49f88ec86bab20fffbec97f, - limb2: 0x14435db232753683, + limb0: 0x260456ec15973398d042dace, + limb1: 0xc15650cc4a5e29c7e2c4401e, + limb2: 0xa0c3a0e53559ba2, limb3: 0x0 }, w3: u384 { - limb0: 0xc7f93b805e5edca225b71a47, - limb1: 0x73f7ff782120bdc962671828, - limb2: 0x2e6ef8e2826c172a, + limb0: 0xfa81c46ee3d04f0e9d5f66d6, + limb1: 0xed1a9d6d804d279a8a2d7e9, + limb2: 0x2e871ad1d7530137, limb3: 0x0 }, w4: u384 { - limb0: 0x8a82f3e47363f9b205b793f4, - limb1: 0x5116d00451673bbfed2a838f, - limb2: 0xa605122a621eae0, + limb0: 0x4b5d4ccc5152c125a2dc9bcb, + limb1: 0xd2eb973e6fd7f3b4b67afbd5, + limb2: 0xf759d771753a710, limb3: 0x0 }, w5: u384 { - limb0: 0x86d39e1311c73f09c6b53744, - limb1: 0x775e69f8cbb3ec5eb245a96c, - limb2: 0x2245b5d8fd63b646, + limb0: 0x95282d03d32982999daf3d61, + limb1: 0xa66da5d2054ac6e9b299d52, + limb2: 0xd70fcef3f72424f, limb3: 0x0 }, w6: u384 { - limb0: 0xdb8abcb82218f621aac11b34, - limb1: 0x822425500666622f11d15de4, - limb2: 0x28999810fefe92b, + limb0: 0x1647f146fbb0d90b076c8c9e, + limb1: 0xedcc275d8d6fb25dc5e8e1d9, + limb2: 0x1141011a3d4bd1a2, limb3: 0x0 }, w7: u384 { - limb0: 0x888dbd120437f88c5f805bc8, - limb1: 0xe8f05dcb9d73374abe0225f9, - limb2: 0x305e0fbd50057edb, + limb0: 0x85836b5d82379746d4a5fe0c, + limb1: 0x517884e7c807458501d5f2bb, + limb2: 0x2bcc6e553ce46587, limb3: 0x0 }, w8: u384 { - limb0: 0x397f2e3d4b2cfd8a41bfe97a, - limb1: 0x792a575070de917ecc7e47c0, - limb2: 0x2fa2fba9ae4d8e02, + limb0: 0x1d16a3eed603a5b6c8ebdcba, + limb1: 0xac7e53d6545a5b189cb47484, + limb2: 0x6e13da8e39dd4ae, limb3: 0x0 }, w9: u384 { - limb0: 0x426d0510df3f29f2a9995adf, - limb1: 0x12b1b255f67a0c2f4ead5ac8, - limb2: 0x28ae39986f8e50a, + limb0: 0x9ff7f475ddf1617d1d5e6853, + limb1: 0xf8d8c6151c7b106a926b8549, + limb2: 0x623a90ddb6e9403, limb3: 0x0 }, w10: u384 { - limb0: 0xaede860bbf89902fc2570694, - limb1: 0x58cc02653490f6aa9b16a9df, - limb2: 0x98aba8ea44056be, + limb0: 0x86f1bc249471c54227979b14, + limb1: 0xa58b7f3c6cd2e02059dfec1f, + limb2: 0x8055c26aa89f3e2, limb3: 0x0 }, w11: u384 { - limb0: 0xce092e277a8a541d45d83d3c, - limb1: 0x6d0e502891366b87707b3fbd, - limb2: 0x64bfea3b9a6da52, + limb0: 0x8b7212f3ec7c260a7db8ffdf, + limb1: 0x73312742b312f382ef7e80df, + limb2: 0x4d4e02d409fd8f3, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x8ab784b52f4e4e502b0da905, - limb1: 0x5a6af258215ee416e4c0cc2d, - limb2: 0x907ba3fb4088328, + limb0: 0x93a0d04e5e016ea34397f60b, + limb1: 0x66964a3d4c281d098ff35581, + limb2: 0x1bea7170382cee34, limb3: 0x0 }, w1: u384 { - limb0: 0xe9006ae17814bb2a12856e2b, - limb1: 0x8afa5f8687baef11ff4f81bd, - limb2: 0x19516de2a07fb6e6, + limb0: 0x3d022444c1b71498acfbc05e, + limb1: 0xa4d082ce3aef798f0de9eb9d, + limb2: 0x234b85898efc43eb, limb3: 0x0 }, w2: u384 { - limb0: 0x58d4545b9acde96e447f77b4, - limb1: 0x443c0e0184e1a7fb38885de1, - limb2: 0x2d0f2c36991a52cd, + limb0: 0xd467b248107244dcef418d8f, + limb1: 0xb54afbab933facb543983c75, + limb2: 0x2792d19f98496efc, limb3: 0x0 }, w3: u384 { - limb0: 0x72e00cd68617e6af493c2396, - limb1: 0xad82eb859bc3df4932a192ea, - limb2: 0x134a18bb672fa1cc, + limb0: 0x671f30e2a3b6e62ab41075b4, + limb1: 0xe4363df408704cdb91817f8, + limb2: 0x2eaeb9244e003d9f, limb3: 0x0 }, w4: u384 { - limb0: 0xf9a5c32dc134a0cd76ca8e19, - limb1: 0x2395b1c535de556c30d0d32d, - limb2: 0x202a0df0200db256, + limb0: 0x7d2ea1b3dbaf93ead985b636, + limb1: 0x5a572f0d6b739ea3a1c3c2c2, + limb2: 0x68bfae80f41ed57, limb3: 0x0 }, w5: u384 { - limb0: 0x9f42b6d6efc7a924bc211d62, - limb1: 0x59ed7086a325e001b3de23dd, - limb2: 0x6563bc0c1030c98, + limb0: 0x85733e2120ef85f94d760e0e, + limb1: 0x7804ffea13318da05d0bc1ba, + limb2: 0x13d2a65620ba416, limb3: 0x0 }, w6: u384 { - limb0: 0x1cbaf4eb0d94bea3dce355c9, - limb1: 0xb6931898ca6ff3c8c9283a6, - limb2: 0x1bde155aa0aad0c9, + limb0: 0x1c5729913741a81c615c66ce, + limb1: 0x60209cd00801c8a8d58b77a1, + limb2: 0xe810643c3c916fc, limb3: 0x0 }, w7: u384 { - limb0: 0x86f11340e8f2caab4c69b414, - limb1: 0x13950dff169f72a6930580ba, - limb2: 0xbf3816cb1778ee, + limb0: 0xce4dcec120897019f36698c0, + limb1: 0xe22ca5844b56a30a2bf6cfc, + limb2: 0x100bf3260e321d4b, limb3: 0x0 }, w8: u384 { - limb0: 0x6d874a1128f8f09be7843952, - limb1: 0x9182cda84f545b6bf2699b09, - limb2: 0x2ea77f9d6fd4e893, + limb0: 0xd9f52c7d28e5e28da70fbe1b, + limb1: 0xc58b73baf81c95717081def, + limb2: 0x2ea5eab35b29ae93, limb3: 0x0 }, w9: u384 { - limb0: 0xb651683d05c30297e5d907c3, - limb1: 0xcfe6ee8d0f2a7a0feb50d8d5, - limb2: 0x1c5eb0817ded1c45, + limb0: 0x4d8eb6e02e4b376583be5ece, + limb1: 0x92c3de440f27709b7919a575, + limb2: 0x7119cdc3b4a30c5, limb3: 0x0 }, w10: u384 { - limb0: 0x49eb49e56cf0ccd14d833edb, - limb1: 0x28aad03363b94b696b55d9dc, - limb2: 0x16d88f3554f93cac, + limb0: 0x8a8629a754cfcc28a7e62b23, + limb1: 0xf842c7b083cdb00b22a860b4, + limb2: 0x23f887461f9a75c7, limb3: 0x0 }, w11: u384 { - limb0: 0x63c714cb0597e9803ccaafaf, - limb1: 0x66c286f1f7840d1f48857ecc, - limb2: 0xda5f84b2035c8bb, + limb0: 0xbb9fae98e0438986e673e52f, + limb1: 0x6eac876d05f33b786877cd5a, + limb2: 0xc66ff21eb4ebb97, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x64ac2c2bb477764fe0118d02, - limb1: 0x50331c874042bdd093d21db7, - limb2: 0x1e3a080f68a5d664, + limb0: 0xe3154c42d6885af223ab79b, + limb1: 0x62ef31f3902cb9c977b43a6b, + limb2: 0xc9feebc02aaa243, limb3: 0x0 }, w1: u384 { - limb0: 0x94134c7e5f2ab2a37740154a, - limb1: 0x8942d34481c989d7913f5b70, - limb2: 0x2da6ccc8154e5462, + limb0: 0x3f204e3c0f1b32fb29b1d880, + limb1: 0xc39b591401ee0b73d39a94c0, + limb2: 0xd924596f1209a, limb3: 0x0 }, w2: u384 { - limb0: 0xa254d43f093a40ae124c619a, - limb1: 0x40e149234de7bfc09e5fc97e, - limb2: 0x1a07ed850445eccd, + limb0: 0x94e4b80ceaa2484ed059db3a, + limb1: 0x77ce223c1f913bf19154e9fc, + limb2: 0x1e9a9f633e7c2ac1, limb3: 0x0 }, w3: u384 { - limb0: 0x58f4ed620c06e53004d35e64, - limb1: 0x22c5c9dbf2cf784bf2ba22d2, - limb2: 0xc30c6a2444482ce, + limb0: 0x5d9b0838204376324ced3e39, + limb1: 0xb5072f7d28e6c61c1e44d2e, + limb2: 0x27b8ee491bbfec54, limb3: 0x0 }, w4: u384 { - limb0: 0x53ec83d4000f037d6061431a, - limb1: 0x667c835b401252c2bdeab9bc, - limb2: 0x1d3aa1a99843021c, + limb0: 0xcf65523e2d6622a963cc1935, + limb1: 0xc1375339d30b980b46989858, + limb2: 0x2e8b265fb17e0e07, limb3: 0x0 }, w5: u384 { - limb0: 0xa0e384250a7b8bf82a8663dc, - limb1: 0x795547c82ccb18b017acecad, - limb2: 0x3039f4a8f4ae2c22, + limb0: 0x3d325619780b2dc2e272034a, + limb1: 0x1ae5e719e116552af7fd5fda, + limb2: 0x29b6cb09c6421d3c, limb3: 0x0 }, w6: u384 { - limb0: 0x471143f6c957fa339ba93924, - limb1: 0xee091201663739f5c5731d78, - limb2: 0x75fe08329786f33, + limb0: 0xb4b721d3b94e1314692f1e66, + limb1: 0x66b0613c15b90c01a1be3dc2, + limb2: 0x22c09948ddabbea2, limb3: 0x0 }, w7: u384 { - limb0: 0x398498319f10000f66eec0ec, - limb1: 0x1a70258fdbdc60fe6c64e0ee, - limb2: 0x4419abe7c7be026, + limb0: 0x40040e96f057b1dacee80419, + limb1: 0xa9a5cbf9d677fcbd0a27ab2, + limb2: 0x3bcf3c1b8a7a0d6, limb3: 0x0 }, w8: u384 { - limb0: 0xd944182ac815fba2ca51f3d0, - limb1: 0x51d18e828e00df0329f3978d, - limb2: 0x18419e3d38538474, + limb0: 0x5ea1869fe919cfe2f2cc3aaa, + limb1: 0xb911705dacd617c1adad5a57, + limb2: 0x7da0d40e74df520, limb3: 0x0 }, w9: u384 { - limb0: 0xac036cce3967b4704fa130a, - limb1: 0xd7727610bbe220f9fabdc553, - limb2: 0x1b3fa1845ae932b1, + limb0: 0x848a51900dc2f94f3961b7ce, + limb1: 0x7ca81d3edcd75f23b6cbbbad, + limb2: 0x13002c3ebf83c9f4, limb3: 0x0 }, w10: u384 { - limb0: 0x907426eba76ca0356248f987, - limb1: 0x5a98e83278cbeb66e02aa047, - limb2: 0x2879fab84d2a3465, + limb0: 0x7bb9a44226dd93ee25542942, + limb1: 0xd1b3b442dd132472aa9b36bb, + limb2: 0xb0d466703652b8b, limb3: 0x0 }, w11: u384 { - limb0: 0xa5e024b66471c9387f25fffd, - limb1: 0x24ff3fa462371e9d0815dd03, - limb2: 0x10f8408af2106d57, + limb0: 0x959bb3480f2b9ed73f798f91, + limb1: 0xd8052cb7ca24a4e6d916f61e, + limb2: 0x1069808fdbccf3ae, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x8266c6fa7240c5e84138266f, - limb1: 0x5984efac66bcb474b0ef4e2b, - limb2: 0x1b6cf69af32671dd, + limb0: 0x6164c039c36419a07de7f89a, + limb1: 0x4be596f6a32cf3da0e1af7c9, + limb2: 0x28ba061cbe6797b4, limb3: 0x0 }, w1: u384 { - limb0: 0x78cf7fa2afcfe0b5ab121a2c, - limb1: 0xe05897b13485abe42c50d439, - limb2: 0xaea0465a5a8943c, + limb0: 0x27e5176b6bde5f992bcee0b0, + limb1: 0x6ca47bf53cb762a2fa48a84a, + limb2: 0x27a675ca5923ea69, limb3: 0x0 }, w2: u384 { - limb0: 0xc07b6dc1473371dfe8597035, - limb1: 0x5187014361237d23391af35d, - limb2: 0x23e07a7280a6e6b, + limb0: 0xeb72905841d1ab44c09fa1e7, + limb1: 0x1c7c8183446aba8494b7bac6, + limb2: 0x25bfe61a582e604d, limb3: 0x0 }, w3: u384 { - limb0: 0x9a6d32588bafc0dd9bd48131, - limb1: 0xd0d7579d23cedaf1efaef43b, - limb2: 0x2f6fc8bbbe696082, + limb0: 0xb3e73a57824c960df64626a0, + limb1: 0x622ad42969f9590fca544ae4, + limb2: 0x14af8c95b97172e7, limb3: 0x0 }, w4: u384 { - limb0: 0xf946dc7c8062998f82ca1d44, - limb1: 0x3c9c177c520ec4a7c6c40c5c, - limb2: 0x2cd1aefb7bb45984, + limb0: 0x4edbd47f12a2f0e70e3fe1fb, + limb1: 0x3961c8100075ebc3fe400754, + limb2: 0x259feeed9be53238, limb3: 0x0 }, w5: u384 { - limb0: 0x1f3352a7e2f3e11fbae6f4f6, - limb1: 0x28ed2768c6d4de67d23b0f57, - limb2: 0x224d5be130c658b7, + limb0: 0xa2ed9ca19ccd683e04e5348f, + limb1: 0xf7382b81004592de25527b23, + limb2: 0x11fcf58167770e75, limb3: 0x0 }, w6: u384 { - limb0: 0x19c3ecc79dc53316fdf0730c, - limb1: 0x7cc41666cf8891e39e8862cf, - limb2: 0xf2d0fad0edc1c4b, + limb0: 0xa75d64705f10602a74ea9ad6, + limb1: 0x3c8add84fc9860ef72ff7fb6, + limb2: 0x4e6b9a1a0fe5f4d, limb3: 0x0 }, w7: u384 { - limb0: 0x11ff9e9dde69f4df4be9c918, - limb1: 0x43c5ce9ca944c9a42f38616e, - limb2: 0x1368a8827f3d381a, + limb0: 0xa27b67b05b5521fcbcafd7a4, + limb1: 0x6a6b105569f64572f7b610de, + limb2: 0xfb52bd14d26a0ad, limb3: 0x0 }, w8: u384 { - limb0: 0xd9982aaf94a1081257018455, - limb1: 0xc7572a7e3970e8fbfa4bb1d4, - limb2: 0x1bfd2a96bbdf4e13, + limb0: 0xdaf062f81c21883a293c5f7c, + limb1: 0xb64830a30a3787fdd898651d, + limb2: 0xde6db3dec7f1a71, limb3: 0x0 }, w9: u384 { - limb0: 0x9e34ab94a684303ad4748666, - limb1: 0xbd0c20bd4391e2ad045e8a31, - limb2: 0x2f501e0fcaadbdd6, + limb0: 0x246ca684918439c9635569fc, + limb1: 0x9dd977adcccfc005bcb5965f, + limb2: 0x2a745c8836559a0, limb3: 0x0 }, w10: u384 { - limb0: 0x1d77eb179b68105c9cd71884, - limb1: 0x6242d3b11f70ea57f7f323eb, - limb2: 0x1b1f9534ddcc0bb, + limb0: 0xb66f8153dec908e1a1cb7f01, + limb1: 0xc8a79c7ec612b65417c0ce82, + limb2: 0x1e5cb43a56720833, limb3: 0x0 }, w11: u384 { - limb0: 0x6b9a8182efdd652214796ade, - limb1: 0x5fb7cabc45468440956f972d, - limb2: 0x2ca1e04298f0892a, + limb0: 0x506cde208de8bb7a9b617c40, + limb1: 0x261d3ee7ed322b8486ae0012, + limb2: 0x289416d98ac9ad7d, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x40e2e83963f135a6ab3fdd, - limb1: 0xe3e74fd53bc5d9c0f9012733, - limb2: 0x20e426762813516d, + limb0: 0xb48164a9820c42d40e7570f2, + limb1: 0x7ae76c445973e8e557d712ef, + limb2: 0x3052c1daec9248f0, limb3: 0x0 }, w1: u384 { - limb0: 0x97e983d11ec7c8cd1ecf61b0, - limb1: 0x67978911c9689b9c02366d83, - limb2: 0xb88ca10fbd1dac9, + limb0: 0x6a09682ddbc5ac6abac64661, + limb1: 0xc7c29fc86e0f018af4cbc477, + limb2: 0x234c739b944d7a1, limb3: 0x0 }, w2: u384 { - limb0: 0xecca325dca7b019ca18d96df, - limb1: 0x9973445dc7305f61a05253c3, - limb2: 0x24326565031c6f4a, + limb0: 0x2028d99b249dd3057adf8c8a, + limb1: 0xe4dd51b3f25722a30ca9902, + limb2: 0x1115c7563d3758dc, limb3: 0x0 }, w3: u384 { - limb0: 0xe3af07db6d958f90e40c51ae, - limb1: 0x33cf0d2317762c5fb8cba4f, - limb2: 0x1428c9569ecc834a, + limb0: 0xe95d453a05b4d661d730447c, + limb1: 0xf94f6360977362faf4237ffd, + limb2: 0x9e196f6555d9371, limb3: 0x0 }, w4: u384 { - limb0: 0xe0c763b6c008263fce085b6e, - limb1: 0x598168a954fbb6a1c41718d8, - limb2: 0x16b1130ef4ff6c80, + limb0: 0xf57ce76b7091d3a628fe3044, + limb1: 0x9033b35107160e3c07c477f9, + limb2: 0x1e7ca36f058579ec, limb3: 0x0 }, w5: u384 { - limb0: 0xee483ec8038ab7ea6ae72b8b, - limb1: 0x9382c4aa1916be630caf0668, - limb2: 0x1e5cdf605cb92090, + limb0: 0xe54bfc6c798d5b88aab992cb, + limb1: 0xb1dec28a976d566234c8db81, + limb2: 0xd58d88a66166549, limb3: 0x0 }, w6: u384 { - limb0: 0xf861d0a6e794656aa5044ff, - limb1: 0xb5f19e1c8e0e73f433940a98, - limb2: 0x23d02f99c7fe4a61, + limb0: 0x574c31d005073e136dc7518e, + limb1: 0x4520919ec97587e8ed979249, + limb2: 0x6b736ab040c4544, limb3: 0x0 }, w7: u384 { - limb0: 0x310c555aab680c75605a1ff1, - limb1: 0x832d2a2119b7665d0acfdf4a, - limb2: 0x1f87b25d9ad87c76, + limb0: 0x877bbec2ede08b4e59c953b, + limb1: 0xe0bc7e590924e5c1e3263721, + limb2: 0x1df949940ce10e07, limb3: 0x0 }, w8: u384 { - limb0: 0x47a6affa6c9d3fea5940c51b, - limb1: 0xbbed7bdeab52a1b590da6239, - limb2: 0x2bd01cd434759b95, + limb0: 0xecc23c9f92d54180ecca0c9a, + limb1: 0x2f549ed8e5ffd17abe234dc5, + limb2: 0x26ca56ef8a2f9ed6, limb3: 0x0 }, w9: u384 { - limb0: 0x7fd0f1e7624eeee2bc31e47e, - limb1: 0xb5f852ffe227c5cd02a63d04, - limb2: 0x16737dab2522dd63, + limb0: 0x4e0feb2f9f85fb27fa2a2b8f, + limb1: 0x107d8caba244b4faa90b677b, + limb2: 0x194b9169bfa753e4, limb3: 0x0 }, w10: u384 { - limb0: 0x8c7f70b83ac5fcc83160bec0, - limb1: 0x3c7b742ec5764bb33b885a37, - limb2: 0x2f625ec407796df6, + limb0: 0x534ed17071a19508d349f3, + limb1: 0x1bea3742e5b1e648c48ce990, + limb2: 0x1c1b1c3e9d668215, limb3: 0x0 }, w11: u384 { - limb0: 0xaf34c70d6821ae58dcbf1583, - limb1: 0xbe046d6c4cd4702ac2e0071e, - limb2: 0x70a8a056c51be3b, + limb0: 0x3dc36ab1766344ac0e2dfb2a, + limb1: 0x1ad810b523267ee2faa38477, + limb2: 0x2a5114964db00ea9, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe9e44eb9994875d9273f228, - limb1: 0x4f86f543f426c7666f1e2982, - limb2: 0x59dd4c3f1f84de8, + limb0: 0xe2019d15c1208c7d7930f485, + limb1: 0xe8fe53eb5ef4ec8aa579e238, + limb2: 0x1df674ebd46d55e4, limb3: 0x0 }, w1: u384 { - limb0: 0x5fada33bff1f97922ce9b55, - limb1: 0x186642604756dedf46001ce2, - limb2: 0xa05448be6f56b0b, + limb0: 0xf1724038265a09b717b7c013, + limb1: 0xd10aa0f54ac0efb7d94d61a2, + limb2: 0x672f343da7a2ad5, limb3: 0x0 }, w2: u384 { - limb0: 0x9c63290cdc798809acbcb8d0, - limb1: 0xfe08c3d5c6e05e03fb33862d, - limb2: 0x3053737d372aaec0, + limb0: 0xd445ef6332838efc87dd0fbc, + limb1: 0xdde90bec61aa27bc81957857, + limb2: 0x189b33441c6ee2ba, limb3: 0x0 }, w3: u384 { - limb0: 0x3f13e590f35c46b9976b6286, - limb1: 0xca2ca72ae3cfcdb0f4468e8a, - limb2: 0x2f2d4e3b4a97eb6d, + limb0: 0xa7f04313d809e5569d5d2430, + limb1: 0x4d3dcbae1c8681220926fa55, + limb2: 0x20d0a22639c8c3e5, limb3: 0x0 }, w4: u384 { - limb0: 0xdd02588eea0288174e7129f3, - limb1: 0x87612f419b72022470aa0324, - limb2: 0x299a797dce620649, + limb0: 0x536c2dfd025daef71367597c, + limb1: 0x27c96032143e383c5358d335, + limb2: 0x1aefbe84e104f401, limb3: 0x0 }, w5: u384 { - limb0: 0xe0790c12dc4c97ad1934d833, - limb1: 0xe487269a187f4eade83128bf, - limb2: 0x2200331b2a4a632f, + limb0: 0x17da0ddd12bfb11013eae108, + limb1: 0xa4bb506de5c2312c4a9236c, + limb2: 0x1bba3050a7760c3e, limb3: 0x0 }, w6: u384 { - limb0: 0x1306a897043c078a145e1818, - limb1: 0x956aac6c12a4be7969a77468, - limb2: 0x1e18d922305c5532, + limb0: 0xb4766d188642163c2849cbbe, + limb1: 0xa76d15f48b55f84a13431c9, + limb2: 0x2937888ccfe90765, limb3: 0x0 }, w7: u384 { - limb0: 0x1eb85cbbc1699043aaa944d7, - limb1: 0xc4aeb57423d1b3c8a6147806, - limb2: 0x1a9669206f76dbb, + limb0: 0xed10f8df3a9276ebfd0cd40b, + limb1: 0x591c2fe1de4981a78adc6477, + limb2: 0x13f03c92fef02760, limb3: 0x0 }, w8: u384 { - limb0: 0x356ecea6450aa303ffb93862, - limb1: 0x2f39b5ac2c50ba2a70900e6d, - limb2: 0x18bf3149439e6717, + limb0: 0x3ce8e1c02f3ced894f7387a9, + limb1: 0x63bee1962fcb5c33e0d37239, + limb2: 0x98e47e256660afe, limb3: 0x0 }, w9: u384 { - limb0: 0x7090951a1f986cb393bdfe31, - limb1: 0xbbb164abe454a5a164ed8f14, - limb2: 0x2281942bfefefda3, + limb0: 0x9a6f23ed044cbd5124cd8784, + limb1: 0xd3990dce147f9dc8a04cf0a0, + limb2: 0xc17b3698e7cc084, limb3: 0x0 }, w10: u384 { - limb0: 0x28f096e96c93ac6a05ffcb9a, - limb1: 0x3fa9130fef97bb8317e966cb, - limb2: 0x778a19693486a10, + limb0: 0x4a73e69733bcc20c66bbaa09, + limb1: 0xae20cd1251d95d2bc92c6c67, + limb2: 0x276d3ae375306a2e, limb3: 0x0 }, w11: u384 { - limb0: 0xf7ce6811b34dd9395d6903ef, - limb1: 0xa0e984e9fe4740764991c2da, - limb2: 0x2cd7afcbe28c644f, + limb0: 0x43fd5cad9edfc239344231d9, + limb1: 0x52e4751602d8ec05199b0540, + limb2: 0x442f34ffc610712, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4cc0ed862e36dc0ede8f15aa, - limb1: 0xb49b65f4c895e1d6c9c20582, - limb2: 0x2945c78a3b03b4b0, + limb0: 0xd811e56813bf54471e093899, + limb1: 0x7f5f25c57f2f7eff38c9a8e9, + limb2: 0xaf6b6a4dfbdd54d, limb3: 0x0 }, w1: u384 { - limb0: 0x5e23e1036c029a369df37a25, - limb1: 0x9d92df81f26a49d05c6a51ca, - limb2: 0x5ec7061ca673eb3, + limb0: 0x9563e7488d4264ee92300127, + limb1: 0x96f0f804547c24a07e9943c2, + limb2: 0x1189b79fb3bbec1d, limb3: 0x0 }, w2: u384 { - limb0: 0xc7600b3ac340e0e54429ff02, - limb1: 0xf5295573d7cb891377a40009, - limb2: 0x2d2e17227728c5ad, + limb0: 0x92c3b6b685af8866f29382da, + limb1: 0x71dd5c390c530a3063357a56, + limb2: 0x1c897155d9a3e605, limb3: 0x0 }, w3: u384 { - limb0: 0x36e8e397119584e31f69f5f5, - limb1: 0x4f3b879204324d2da78d91f2, - limb2: 0x1d9d8c7243ad82b6, + limb0: 0x3df58025590d4a56c040f0, + limb1: 0x40cfe1cf70dc852c01745b94, + limb2: 0x2b1c42a651a66710, limb3: 0x0 }, w4: u384 { - limb0: 0x9580e19bf92f94f68e02d9d5, - limb1: 0xdcc998e86614deba4a87370c, - limb2: 0x1e73f8518436da5f, + limb0: 0xf914508ffa37d59890a383c4, + limb1: 0x4dbb4fa6b37305788282390, + limb2: 0x1525cf2939d8266c, limb3: 0x0 }, w5: u384 { - limb0: 0x6ec426783f409152bde295cc, - limb1: 0x4fe766aec9afea40baa742c2, - limb2: 0x2519df249984c57, + limb0: 0x5f3a9db3bd05b7dc6c1e8a06, + limb1: 0x14c95b3064eec660d9f75f7b, + limb2: 0x301a00670831723c, limb3: 0x0 }, w6: u384 { - limb0: 0x73955551028191f3ca6156d3, - limb1: 0xdc5fd3a449908fa1159ba985, - limb2: 0x2db79dcbe4f99b30, + limb0: 0x378ad5e583d17ab0f5eae605, + limb1: 0x7a958435c64b87d38d0a9324, + limb2: 0x1b1bf7987a2f900a, limb3: 0x0 }, w7: u384 { - limb0: 0x643a00a470be90f2a532b61e, - limb1: 0xee23e96e761cb511cac86f2e, - limb2: 0x1c4a06bcd509fdcb, + limb0: 0xe339832191072aaaf8b0de83, + limb1: 0x2e0b8dc3fbd6e944710ddea6, + limb2: 0x29985753208e9994, limb3: 0x0 }, w8: u384 { - limb0: 0x9e8df2c9bd6dbc0de2f5bc39, - limb1: 0x55dab30d5b37f42f6ddb68d6, - limb2: 0xdd35deb50b60615, + limb0: 0xd7069da477c15cd3fa2854e1, + limb1: 0xbb9ed6272e227b0d730076a5, + limb2: 0x9ca2ba867e87f4c, limb3: 0x0 }, w9: u384 { - limb0: 0xf12ecb3804096e7479ca8a97, - limb1: 0xe0bc7a61ffb082625875d2d3, - limb2: 0x9466df714d3b13b, + limb0: 0xbaa6c2335b73072667388609, + limb1: 0x4b083acc39587e3827f45e1e, + limb2: 0x300bc5aebf5d587c, limb3: 0x0 }, w10: u384 { - limb0: 0x189bbbaa3a0c72c634b2ab9a, - limb1: 0xb5692a20162f5f015b69dec3, - limb2: 0x3a55153e938cbc4, + limb0: 0x279a903a4e9696347038d5dd, + limb1: 0x54aec8eb79696e12a588cb98, + limb2: 0x19f5874b30b8d037, limb3: 0x0 }, w11: u384 { - limb0: 0xa6ca3cc560dbacbfb3ad8c07, - limb1: 0x945c192b5874fbfa36671e08, - limb2: 0x14cf3051120949bb, + limb0: 0x56133ffa4324c737662a7fac, + limb1: 0x201bdba92699345ade9c49e1, + limb2: 0x2a53684b0a85d0ed, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xabaaae6fd1b64d9931d661b5, - limb1: 0x152a7d62d3c1eff39a2369b2, - limb2: 0x29edc9a7dae9d39e, + limb0: 0x7fa07cd8e5ad5b07cf67ae0f, + limb1: 0x1bcd5f9b022b08ac4eafd9c2, + limb2: 0xda43088f2a673a, limb3: 0x0 }, w1: u384 { - limb0: 0xf9e582e84ab4fe7282fdb100, - limb1: 0x610316721d3b621287f389cd, - limb2: 0xd1e42afd302e82a, + limb0: 0xdb037a9b90050759019c7d51, + limb1: 0x38b6d22f24f04652743d5626, + limb2: 0x12ee75145a580336, limb3: 0x0 }, w2: u384 { - limb0: 0x38b75c3e1e0b617a4c606d83, - limb1: 0x807c80952553585050bc2683, - limb2: 0xc3aaa23ed2d9d90, + limb0: 0x1cff130494a2ebd9137a93e0, + limb1: 0xf8717e15fd0af61e0279654, + limb2: 0x29810ed131f784f3, limb3: 0x0 }, w3: u384 { - limb0: 0xdd06ad9ef6056a4b1878b6b4, - limb1: 0x83cdf51eea2a7d9eda80a318, - limb2: 0x26aface38dab8fb2, + limb0: 0x7404e969b81429f9e2ba0997, + limb1: 0x6103a4962c36779ef653a6f6, + limb2: 0x27dc2d78302e4e71, limb3: 0x0 }, w4: u384 { - limb0: 0xaddafc4287b34d1baf385ba7, - limb1: 0xfbc9afd2e9461c610bd77465, - limb2: 0xb64bdb11224e7ea, + limb0: 0x1dd9cc62373541ce2922d80, + limb1: 0x13a906c5ad61980484f78aef, + limb2: 0x13c16235437ddf81, limb3: 0x0 }, w5: u384 { - limb0: 0xb4d9cda5d69b8dffed73e062, - limb1: 0x82e04fdd10aacf84aa2ff2fc, - limb2: 0x839cf0755eed184, + limb0: 0xdd39cd38dcc36fdf9af5c5fc, + limb1: 0xe141befa252e59c327da002a, + limb2: 0xbd78904db1dddf7, limb3: 0x0 }, w6: u384 { - limb0: 0x224f88ae4bb3b0481e2efa23, - limb1: 0x662c6b057f30382a6559b93c, - limb2: 0xf024d0a4deb2c3a, + limb0: 0x7d5acfcbc1c17c43c85978d9, + limb1: 0xee108e92e5a9cb84abd036a3, + limb2: 0x1112ad6ed021f054, limb3: 0x0 }, w7: u384 { - limb0: 0xdc477ca778c044c338eebbb9, - limb1: 0x20e51a321d0b8557b7e32e3, - limb2: 0x15cdfe82f67062ea, + limb0: 0xa82192423b4a2df38c678d0e, + limb1: 0xef416b1df284c1a611861c74, + limb2: 0x27d22eac0796d4bc, limb3: 0x0 }, w8: u384 { - limb0: 0xec7f5f119499d9f355a0410, - limb1: 0x3bf000b45b724c7f888ce4, - limb2: 0x2776cfd5fc96f618, + limb0: 0xf8e1ea5002894f0a75a390c, + limb1: 0xace6d18768fe8016cb935e84, + limb2: 0x34945a1519315ba, limb3: 0x0 }, w9: u384 { - limb0: 0x7ed4b32eb9ec5b2cd6bb59c5, - limb1: 0x8a7e01d76c0d9105f227655e, - limb2: 0x122c629d34686c59, + limb0: 0xe39385e52a45e859160c71c0, + limb1: 0x5adb96b0589d767ee0b9b920, + limb2: 0x2f4c4c20dbac629b, limb3: 0x0 }, w10: u384 { - limb0: 0x456730b164c8d67a7592de62, - limb1: 0xe5a05ee5ba69162e4d7c437c, - limb2: 0x2f7a2c3c8e2f26ee, + limb0: 0x799eb6f1416cdc7de0edd88b, + limb1: 0x671c1c676394692471f77cae, + limb2: 0x27ace3d688550402, limb3: 0x0 }, w11: u384 { - limb0: 0xa772f85fe48d70fc2432a28b, - limb1: 0x2c6fa3ccf21f83522b193944, - limb2: 0x2b87b50782db635c, + limb0: 0x4e7a9e8730571e82efdfe4bb, + limb1: 0x714b0b19663ce9bbad6e46a2, + limb2: 0x2cc0601620e180fa, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x9742128b4a65797b0a348f13, - limb1: 0x1ae1bfe04a445059c5a1bc2f, - limb2: 0x1dee0eb506830184, + limb0: 0xd700d3c5bdd94bf0ed137d45, + limb1: 0x49d2042051af34eb676ff5b9, + limb2: 0x2df554a920ec64eb, limb3: 0x0 }, w1: u384 { - limb0: 0xdc02a72ee5b787e075634218, - limb1: 0x5a1c8e69d651378ef283808c, - limb2: 0x2579bdce721da3c9, + limb0: 0xeeff81e01d619e09296bb048, + limb1: 0x84be13817e03ba6afecf7ad5, + limb2: 0x1b02f94be993691, limb3: 0x0 }, w2: u384 { - limb0: 0x61a74ad891a86a52e175a928, - limb1: 0xeb1cb7dc416f348f6c2fbca0, - limb2: 0x1d96ec06daebc11a, + limb0: 0xf22fe45ec03848a3bbf8064c, + limb1: 0xaed96b858f6b6cbf93245e5c, + limb2: 0xd679e2fada81d89, limb3: 0x0 }, w3: u384 { - limb0: 0xf39b6b709801ae3f592b065e, - limb1: 0xad4dcad88c70fb3bb5b55c92, - limb2: 0x1b67f18d3e3fa3b7, + limb0: 0x6bc3781ac2dc5d9f52572123, + limb1: 0x56bb34fbacee9c87a2015606, + limb2: 0x3041b05e33008351, limb3: 0x0 }, w4: u384 { - limb0: 0x573a793ab1a82bed2ab8c839, - limb1: 0xc93666c5a02c8b40561d5046, - limb2: 0x2489b1a3389fb598, + limb0: 0x6ae5cbc13e3447f4664a596f, + limb1: 0x55d8423adda92e7fc1ecbddb, + limb2: 0x272ead16e67b2a44, limb3: 0x0 }, w5: u384 { - limb0: 0x3dfc6d5dd85c81478d2945d6, - limb1: 0x4b88c065eb92a93351234416, - limb2: 0x258e6040765b63ad, + limb0: 0x61bf932e12b3d0506c856e30, + limb1: 0x2603b1c66dae0a404db91e24, + limb2: 0x26e136d64f2d1f5b, limb3: 0x0 }, w6: u384 { - limb0: 0x5d0b5fcf5d737c909b44bf24, - limb1: 0x78964d0c8046b804cfb156d4, - limb2: 0x19f77a4a2d23d9b2, + limb0: 0x12d054f2ed9b489ba8b31caa, + limb1: 0x3d5befb3dff27be22c187a45, + limb2: 0x695771e187c6739, limb3: 0x0 }, w7: u384 { - limb0: 0x423ee584071520416bb61b2a, - limb1: 0x4fd0b2c177ab9527d041ce5c, - limb2: 0x10a7bd9ba3383dc8, + limb0: 0xb678cdcd0350174c37c2966f, + limb1: 0x6db000f41cdd9754ef4b7931, + limb2: 0x1996118bbc7f2da4, limb3: 0x0 }, w8: u384 { - limb0: 0x66120ae20240991ab70f116, - limb1: 0xf076fab9a6c95a85275f2097, - limb2: 0xcf7227fa89cc4d8, + limb0: 0x71a8bdb3fdff51e6b0177d4f, + limb1: 0xb930db1c491b57392fe90fa4, + limb2: 0x8e4c021c356a879, limb3: 0x0 }, w9: u384 { - limb0: 0x6672d10c3e31eb477967542e, - limb1: 0x9975b41bdb7cf5f4efa14140, - limb2: 0x2e099e8b21aec48f, + limb0: 0xb22e9e681d3d283afdf2acf3, + limb1: 0xf0e6b4a3cb6f63585c869375, + limb2: 0xdb7cf59206c23e2, limb3: 0x0 }, w10: u384 { - limb0: 0xd34d1fdc3e33bf642f64347e, - limb1: 0x61330328613e3748a393b9e8, - limb2: 0x53ef4de0f24976c, + limb0: 0x594ec704f178c86551ed4ee6, + limb1: 0x1523b7b661aa07053243b6c2, + limb2: 0x226dfde61691df21, limb3: 0x0 }, w11: u384 { - limb0: 0x1630b046ccfa39c07067502a, - limb1: 0xe415fdb993791b2280f13a55, - limb2: 0x120b4ea5c8d3e3ca, + limb0: 0xfa842c8ca5eb93d3bc7facd, + limb1: 0x1c11a13a7a5e4c0f3628e216, + limb2: 0x1d36d4e7ad00cb5a, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb7e3cc8bcbe2bc8373798e60, - limb1: 0x4da1a4b3518d3e063b250d17, - limb2: 0xbaf9667a624d9a1, + limb0: 0x2bf340d6ce9b1dcc4899be71, + limb1: 0xacc905cec1df56df55799848, + limb2: 0x1f9ea5a93b78c189, limb3: 0x0 }, w1: u384 { - limb0: 0xd57fdfb60e8ccacc97d6d335, - limb1: 0x514c5e68fcf14ee6b595c746, - limb2: 0x249f9b20725d50b, + limb0: 0x29f087b450a535cd5f744124, + limb1: 0x3b7e53b5311a17dfd0cf74d6, + limb2: 0xb44d7ad4da08c0e, limb3: 0x0 }, w2: u384 { - limb0: 0x29d3ae0975e4654e6b07bb60, - limb1: 0x1ace56b34c1f57fab6c50415, - limb2: 0xa40182388ecb1f, + limb0: 0xba0d4229232bdfc13c6bb1db, + limb1: 0xca3c72409f920502f244b81c, + limb2: 0x25b09e7f98f448ac, limb3: 0x0 }, w3: u384 { - limb0: 0x5586f2b1e9db96f7a088af8a, - limb1: 0xe2545bdac156d93f7bb21764, - limb2: 0x265e343f8fc6b8e2, + limb0: 0x35588a9288be948febc080c, + limb1: 0x36ec16cf402de157539992f5, + limb2: 0x12419fb1fbb2e61e, limb3: 0x0 }, w4: u384 { - limb0: 0x1dc5a558abc92266ec1554df, - limb1: 0x19a328a28b6c72f0880032d3, - limb2: 0xa2182d0f9ebf364, + limb0: 0xd525d425bc97adb0fa4d2df0, + limb1: 0xbcbf3c6306d9d6b02e9ec007, + limb2: 0x2c50912285765524, limb3: 0x0 }, w5: u384 { - limb0: 0x5dabd0e007469a92761aa248, - limb1: 0x97a0f12f65c4393563b731cb, - limb2: 0xf433faa78a4335c, + limb0: 0x66b2fbb313fa01b9b7b86d45, + limb1: 0x9c14bca20aa514538548e0a3, + limb2: 0x183cf78c57ac1d14, limb3: 0x0 }, w6: u384 { - limb0: 0x4c9ef51ea1320c9e5dd2da49, - limb1: 0xf5c643b0fbc682a9a67fbc45, - limb2: 0x4a249864309c573, + limb0: 0x8948015862641be58c8e1c2c, + limb1: 0xab8149086f45913c24cc5e9b, + limb2: 0x1d74a2b304b58f11, limb3: 0x0 }, w7: u384 { - limb0: 0x5e2a3d316c9f700b0d42db24, - limb1: 0x85ff0430463a0f6566f156fd, - limb2: 0x29e0b3d4300b1354, + limb0: 0x6acee650a6fa6b01fa79fdef, + limb1: 0x8f40a91e09091769008c9234, + limb2: 0x2f29e7975db074fe, limb3: 0x0 }, w8: u384 { - limb0: 0xfc8b59bc537917c456e70ec7, - limb1: 0x4f548350f634549ef88f1f50, - limb2: 0x2bca436d0455926e, + limb0: 0xfd70fd3028e6c538e2098b7d, + limb1: 0x7b2d6e0d60d42b1aa2a0dd81, + limb2: 0x2e2cb7a7d355be8b, limb3: 0x0 }, w9: u384 { - limb0: 0xf1a8781542241592470d6485, - limb1: 0xbd178d94ac1246343235744b, - limb2: 0x604efb5e45fa130, + limb0: 0xb66284ef8ed5088bd1962f93, + limb1: 0xf17b5e751e0fe18bb803b4b5, + limb2: 0x45ad32773eb0bc7, limb3: 0x0 }, w10: u384 { - limb0: 0x475af567e067677d2c11ecd, - limb1: 0x4778ce052fcbdfea1e8289b9, - limb2: 0x11fc7c67791be2e1, + limb0: 0x2948b1910d0f2ed4eaaab084, + limb1: 0x769f91bf8ceb127d15fd8f69, + limb2: 0x2e029def4cb4cfa7, limb3: 0x0 }, w11: u384 { - limb0: 0x63b619252eb1a0262746492b, - limb1: 0x3672f1e9b3528b40713be634, - limb2: 0x26b4102d33a611d5, + limb0: 0x9e26f4c217a02e5d5390bc73, + limb1: 0x81e45129b5c26e78b28ff2ad, + limb2: 0x14b696d3a957a88d, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb0f6f5057cb07ae49ae9f805, - limb1: 0xcb8ab225fdc4dc54eb85356b, - limb2: 0x2e3ae2d123bab83d, + limb0: 0x31eeaaa51971c12f988bc168, + limb1: 0xee17d083c1a2e7a584a951a3, + limb2: 0x2026edfbc0ae5872, limb3: 0x0 }, w1: u384 { - limb0: 0x4403a6ec741e225470f325ad, - limb1: 0xc41a87894474718cc41f6513, - limb2: 0xe265c501bedc87c, + limb0: 0x344f30bf3233694c47173fdf, + limb1: 0xb989f93bc410a5663b6a8cbe, + limb2: 0x8f5258809b719fc, limb3: 0x0 }, w2: u384 { - limb0: 0x625c9ac660c36f846f4b8c2d, - limb1: 0x17991d9a3ffc25558c9ae50, - limb2: 0x16c6c47085f6675, + limb0: 0xe12ac3e11fca1074caea1030, + limb1: 0x280709db2e98e3eec7cac556, + limb2: 0x246296736164d758, limb3: 0x0 }, w3: u384 { - limb0: 0xb3d8ed6e05ae7c77e10eda50, - limb1: 0x8405fe9934584b44940a9610, - limb2: 0x1c0032c5997ca62a, + limb0: 0x1e23588b58ab0b53ebe3b3e7, + limb1: 0xf13a714e5a6cbf9a2c3a93cf, + limb2: 0x10d5bf37d84bd944, limb3: 0x0 }, w4: u384 { - limb0: 0x928cdcfa47fb2c45d54329b8, - limb1: 0xd75a39af842a48b76253a732, - limb2: 0x2f9283d5c9a36012, + limb0: 0x20aa54c8fd93fe580f1b1e0c, + limb1: 0x1ea362197254add7d1a9b782, + limb2: 0xb4bb902c75685db, limb3: 0x0 }, w5: u384 { - limb0: 0xadd11a191d271f57da03262b, - limb1: 0x297cf23cad31949656625feb, - limb2: 0x61d17a37ee9c591, + limb0: 0xbb68bbf44c4816247e6dead6, + limb1: 0x8f9c9424c88f094e2d002724, + limb2: 0x177a7b5be461e556, limb3: 0x0 }, w6: u384 { - limb0: 0x2b4a675df385dd72ed672742, - limb1: 0xc0105d52d701af0d31e69bc2, - limb2: 0x83362ed4dbec30d, + limb0: 0x66b675a3acc3c4bd54a540c6, + limb1: 0xe3a9ce7a0ba0ab7c300fbe85, + limb2: 0x7758f2a98e70fac, limb3: 0x0 }, w7: u384 { - limb0: 0xbbc29dd7211097e3e4c98bd4, - limb1: 0xe786cf383571740a4c4e9b99, - limb2: 0x2dfc9249c5a76a2e, + limb0: 0xf5751770e8ef78205c3cd65, + limb1: 0x5e729002a31dbd609cb8d6a6, + limb2: 0x263061a7a8b147c6, limb3: 0x0 }, w8: u384 { - limb0: 0x4e63474a0ce822d52d09ab07, - limb1: 0xf3ea858973bf62a4dc2ea771, - limb2: 0xa3b022494c0e015, + limb0: 0xeb3eec465b14f0ecebcaf8c7, + limb1: 0x23d29307f553766501a66e14, + limb2: 0x1a88154c011c6a2a, limb3: 0x0 }, w9: u384 { - limb0: 0x89f78811ceaffe86310730d5, - limb1: 0xe48241557e5f8f8aad2e6e54, - limb2: 0x272c93fbf4376048, + limb0: 0x8fd4a18122cd6e7cff732c54, + limb1: 0xec4c2377048a155ab45514c8, + limb2: 0x18922f7d5e5f1a1f, limb3: 0x0 }, w10: u384 { - limb0: 0x4efb01912e79cdd5777a09b5, - limb1: 0xbb187d64f74475397a0bfee7, - limb2: 0x11c80c722b5070f9, + limb0: 0x13457249a756cb9a7203335f, + limb1: 0x95e936a9ca00da828bf7099, + limb2: 0x75b0635068ca0d2, limb3: 0x0 }, w11: u384 { - limb0: 0xfd484f13276d5c191b6ca70a, - limb1: 0x3a2f1f6c33b62fef4f680a5c, - limb2: 0x2a2f7f4bb300c2ca, + limb0: 0x944ae2150a9063a3208a54e8, + limb1: 0xf59e84380a56a4408d25630, + limb2: 0x278cfea1a25eb319, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb95553a9e4003ced307563c9, - limb1: 0x256f0df41f4a35f6c095ae31, - limb2: 0x1f94a3b863d4499, + limb0: 0x33407bf491b3e56f5113377a, + limb1: 0x3155469d5b2e8a9543ad2539, + limb2: 0xac4418cea6a378e, limb3: 0x0 }, w1: u384 { - limb0: 0x82563d077449122fc514304c, - limb1: 0xef0931ef5c48f2958bacedb9, - limb2: 0x2ba3820fb1bee598, + limb0: 0x7bc7db86301afc04b0f9b32, + limb1: 0x28a3d8b2c278a4009cd37a4f, + limb2: 0xa5b3760fb243ae5, limb3: 0x0 }, w2: u384 { - limb0: 0xebd0d2909e2c73461ee603ce, - limb1: 0x193e19727de0e7fed0594ff6, - limb2: 0x18868dcdbfef35e4, + limb0: 0xde6712638508bd1467002550, + limb1: 0xf70fa931a31e1b5756c4b9aa, + limb2: 0x11622a68401cadae, limb3: 0x0 }, w3: u384 { - limb0: 0x95a8876ac1bd476187562553, - limb1: 0xc1867fd3f3b2797b034a61cb, - limb2: 0x2f4a7d223a000c6d, + limb0: 0x221b45e205d290695e1071a3, + limb1: 0x370c40414a783931b197178d, + limb2: 0xe414747775b0062, limb3: 0x0 }, w4: u384 { - limb0: 0xf4e85d4686f3395d173a6cf9, - limb1: 0xafd2a07fdd145bcad2f57e6, - limb2: 0x60954fcff4ecc10, + limb0: 0x893955a16124f2084427e53c, + limb1: 0xcb1cfbd4f2048cc385c6e638, + limb2: 0x258b9c4a01ec905a, limb3: 0x0 }, w5: u384 { - limb0: 0xd90c765c5f4d5efc5cb3e0b6, - limb1: 0x213b9da0c6aa352671c252e7, - limb2: 0x34ffc0be43bce9e, + limb0: 0x2af0cba0f9bf64431cc14d0b, + limb1: 0x1b0aa4f956d68380ba48f250, + limb2: 0xe3d3afb53a498f, limb3: 0x0 }, w6: u384 { - limb0: 0x4290ed69e8daf4eb2bcc10fe, - limb1: 0x4bfd0d24ab739edf8db5aece, - limb2: 0x54f5b972132ce11, + limb0: 0x6198d868cbaf2b339fae918f, + limb1: 0x8c80e6c5c22c0aa0e69cc9df, + limb2: 0x1ad5056c7c91697f, limb3: 0x0 }, w7: u384 { - limb0: 0x85db7bec349ef359fe42cb1e, - limb1: 0xc217d527d53e6d47f8dcfa42, - limb2: 0x1e6f2139dceec3e3, + limb0: 0x96960a31c42a821c48dcc25f, + limb1: 0xe2d0ca830db47823ef1c8b1f, + limb2: 0x6b8481bf6f543fa, limb3: 0x0 }, w8: u384 { - limb0: 0x83f9c5bd838783d308e4636c, - limb1: 0x6423de37031ac867e65943a0, - limb2: 0x95945ddf132e167, + limb0: 0x3942306a57d73066fb76938c, + limb1: 0xbddab23a07a8bb025eda19c9, + limb2: 0x1544edc1ff2335c8, limb3: 0x0 }, w9: u384 { - limb0: 0xa05d391df782b2d41d0a11fb, - limb1: 0x817a3df93d1b999afa60502, - limb2: 0x1f3e099c9457b25b, + limb0: 0xe04685f349f800bfd00e47fc, + limb1: 0x852246957ae1c73abbd65e9a, + limb2: 0x7a1f18413f7739a, limb3: 0x0 }, w10: u384 { - limb0: 0xa072a3336e36e51e832e32b, - limb1: 0x96fecc67554029f530144531, - limb2: 0x234794f3d93b375f, + limb0: 0x79c6974b928d8fdba15ede01, + limb1: 0xcdd6cc7aac5d0b524b18c1f4, + limb2: 0x1136c0142d86cd76, limb3: 0x0 }, w11: u384 { - limb0: 0xe02505babe97c3aa1d333775, - limb1: 0xc350c0961404d01a8dcd641a, - limb2: 0x2ce1672566b68d40, + limb0: 0xd2bcc022c60de83f797752c1, + limb1: 0xb7a3880f02bbb15ba6c49b9c, + limb2: 0x2b8826bf7c8bb386, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe0f2444e0862bba0a8bd7785, - limb1: 0x36727e86ad554ac576768c38, - limb2: 0x25bf4f756e0e5075, + limb0: 0x5c1c3af4eaf72dca8e6a12cb, + limb1: 0x40579e4aaa190201056014f9, + limb2: 0x2861cb2f8a1589f5, limb3: 0x0 }, w1: u384 { - limb0: 0xaed11ca32c9d73d65c8d72c7, - limb1: 0xfa6380d2870371426fdbd2d5, - limb2: 0xa15baaebccab832, + limb0: 0x82cd6463a1a2c0dfb22cbbad, + limb1: 0x5a0bfad7c2cf952945b31325, + limb2: 0x1197c86931aac04, limb3: 0x0 }, w2: u384 { - limb0: 0x65a0a86a3b42b4a8b94f1445, - limb1: 0xd66f124f8d0c61629f703fe4, - limb2: 0x3eef99e757283c5, + limb0: 0xba2f87c798fc424cc54706b2, + limb1: 0x5ffb5e2b78ac6ced3f04010d, + limb2: 0xee5c0d7ccf38408, limb3: 0x0 }, w3: u384 { - limb0: 0xf1576ba0393548f222b1e235, - limb1: 0x9d5e7d2501115d550e5b03d3, - limb2: 0x1d0353f649498c93, + limb0: 0x4b1916a432255aa30fe7bf3e, + limb1: 0x6e3a93e44515b399a60355ca, + limb2: 0x281c1efe08f8a966, limb3: 0x0 }, w4: u384 { - limb0: 0x443842e822870c09453df6f4, - limb1: 0x16ae1ae2866594303cd8b15b, - limb2: 0x175b341e35cbaef8, + limb0: 0xbd42ef5b906d97a38346af46, + limb1: 0xe7ec49e481499e378d3af8e6, + limb2: 0x1af87eb4a86c61c4, limb3: 0x0 }, w5: u384 { - limb0: 0xafa3583c68b87e561e3d22cc, - limb1: 0x7ff2b8bb324f159f131146a5, - limb2: 0x1216ae8a1a6ebd0b, + limb0: 0x4b9f06a88bc47cf471c6d2eb, + limb1: 0xab0215f8f57ec9a82457d036, + limb2: 0x121915171f2dacbd, limb3: 0x0 }, w6: u384 { - limb0: 0xe61e3cbc0730432d928c7302, - limb1: 0x3ba97a26e0b04dfce1ba3ee1, - limb2: 0x895aa3d5b654301, + limb0: 0xf1ddcc9a2edcf7176445d5b, + limb1: 0x27cb0ab2252756f8c3c4a15b, + limb2: 0x1816710e9eb27345, limb3: 0x0 }, w7: u384 { - limb0: 0x839c19bc52c1cb128cdecaf5, - limb1: 0xfab9c23aaab9a314db4bda0f, - limb2: 0x281cb260fa1d578b, + limb0: 0x2b224e0b6853c77fe58a6ce2, + limb1: 0x35bbd256449386a7dd668d46, + limb2: 0x210e02f03842f7d3, limb3: 0x0 }, w8: u384 { - limb0: 0x898e4d2cadf36d2d137bcbd3, - limb1: 0x6d9fe2591900229b571e234d, - limb2: 0x1bdd95a4ca0a6b98, + limb0: 0xf685cd91d8be5f71080cb4c6, + limb1: 0xadd5fd8e50fbf80033338271, + limb2: 0x72f1cd400c4f4bf, limb3: 0x0 }, w9: u384 { - limb0: 0x592aa7cca679de35b7e52808, - limb1: 0x51b0f05861e9ba253423606d, - limb2: 0x2a3478a5955d1690, + limb0: 0xea9d7cb22c2d4965c7107013, + limb1: 0x36eeda8b5d69527d393379ea, + limb2: 0x16087c962d1ed24c, limb3: 0x0 }, w10: u384 { - limb0: 0x26031c1afa9053f64d38d723, - limb1: 0x7f0db156389e158523d132d6, - limb2: 0x9ab1f6e58d8acb3, + limb0: 0xc5c2f89664cf10cd6332823f, + limb1: 0xf6e5ccccdb388dbcd9c30d1, + limb2: 0x2b5ad1936c3fb5f, limb3: 0x0 }, w11: u384 { - limb0: 0xd6d41a125b2cbc66fa18b86d, - limb1: 0x518a84d4c4ba8af25551e21f, - limb2: 0x1a99830e54fa32e3, + limb0: 0x9a21108ddfe3398ae4189b87, + limb1: 0x2368f758fa5950ab33220584, + limb2: 0x23de73ac2e449211, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x619b914b762c1e1c25ace325, - limb1: 0x42f8b0419bc69400c6ba0ef7, - limb2: 0x4de7ec03741f199, + limb0: 0xf541af8837a033cee74e8200, + limb1: 0x36636e065f8bd2241a86c87f, + limb2: 0x24366c307edd59c9, limb3: 0x0 }, w1: u384 { - limb0: 0xd3eea9a42a5830823c59cd29, - limb1: 0x8efe173c7a81b01b9cbd8feb, - limb2: 0x24a15e379513a597, + limb0: 0x2cb5696b7cb0aa0858789e7d, + limb1: 0x15c475964b64b95bfe4bc33, + limb2: 0x13e6af2a3735bb93, limb3: 0x0 }, w2: u384 { - limb0: 0x69d808ad31eaef85a8bbaafb, - limb1: 0x269a78c65d3dca6f50cf5b89, - limb2: 0x1a16b8f82f0691c9, + limb0: 0x2c6a97908f6fb667eb6aecee, + limb1: 0x93e8d443b5bbd247f74bf8ed, + limb2: 0x76ce1be8272084d, limb3: 0x0 }, w3: u384 { - limb0: 0x4f69d89a2b15463d34e4992c, - limb1: 0xd7b7f8a6b2ce2ee0e41d83e, - limb2: 0xa7ced4c1e74064d, + limb0: 0x2bac72092aed3735a5665255, + limb1: 0xbb61f8d19a3c8a5ff75dddb4, + limb2: 0xa73b763f450c713, limb3: 0x0 }, w4: u384 { - limb0: 0x3f221da1891a0d51b1c26c92, - limb1: 0x9dc632bc41292c37c7507a42, - limb2: 0xc499c79159c4648, + limb0: 0x987eb77f56afaeb1fb52cc68, + limb1: 0xef56bf8a8b123e6fc6bc1888, + limb2: 0x1c14ef2c4d348ba0, limb3: 0x0 }, w5: u384 { - limb0: 0xad7d02f61e2274f982373c0b, - limb1: 0x1962539161ae578bf48c9094, - limb2: 0x948e94358e174c8, + limb0: 0x12ecf08858f856ebc4af92dc, + limb1: 0xeaec258324e64f66a92a3299, + limb2: 0x247488f02f646081, limb3: 0x0 }, w6: u384 { - limb0: 0xbcb63892c8bb161ede77d315, - limb1: 0x61ef4ee72ad9f5bd3ffab01b, - limb2: 0xc487ba74f3c4500, + limb0: 0x6d2c2fcfbd8746d18347f534, + limb1: 0xfeb84a73aa9fe6807f7d3268, + limb2: 0x27424df416c3c6d3, limb3: 0x0 }, w7: u384 { - limb0: 0xfbdb796537f0177268a93c46, - limb1: 0x3845a9be77b5069e79b19585, - limb2: 0x66c113c2a5e8cd5, + limb0: 0x29785e2235e0ae90bf4486b9, + limb1: 0xc4d0fc16f38eea269befc906, + limb2: 0x8082e460f123cd3, limb3: 0x0 }, w8: u384 { - limb0: 0xbd7673e5eea3d85322d6bf1, - limb1: 0x2cc61161e0ada5ee20a35d9e, - limb2: 0x1f082289b21e3888, + limb0: 0x549b5919d536eee33ccbb78, + limb1: 0x6b1c2367c05ff78e3203267, + limb2: 0x2bb1eaac13b1edb8, limb3: 0x0 }, w9: u384 { - limb0: 0xbca35555d0573288c94569a4, - limb1: 0xa0178e6c296bfa96a1e77ecd, - limb2: 0x959e2a8c10eb629, + limb0: 0xef9985c7a19762a95768faf5, + limb1: 0x209b0ef8b6e640df0090c16a, + limb2: 0x1a03f9dea9d0708f, limb3: 0x0 }, w10: u384 { - limb0: 0xc7b232a3afd50a4030beda6d, - limb1: 0x7e2693a95c9c3a31f7b3ac98, - limb2: 0x5d8aa30eb038e, + limb0: 0xb7ca1d2975bf978e1242e35d, + limb1: 0x80708e1145de6db97c65821c, + limb2: 0x1e365659889a2315, limb3: 0x0 }, w11: u384 { - limb0: 0x3a1585704aa0a230bb20b2f0, - limb1: 0x9c96386d4c263241e0d918f5, - limb2: 0x2a40f930ade1bd3b, + limb0: 0xd9518ac30f49218f1bd73fab, + limb1: 0x60643515e9862caef8fd226e, + limb2: 0x1c0f6a4bf7ddefc5, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x616bf520127963b0c8563034, - limb1: 0x5342e352e2b207b5088850ce, - limb2: 0x137d28d56917c33f, + limb0: 0x394f9db51e7b75355f564eed, + limb1: 0xab63495b67ef7e6ce4192259, + limb2: 0x261529bedd46478a, limb3: 0x0 }, w1: u384 { - limb0: 0x4a213cbf0ad18a66516ad6d3, - limb1: 0x4720c18d7c97a7b73a72eb5c, - limb2: 0x29fe79cc743a1898, + limb0: 0xc4791d76cdebd38e819b6d08, + limb1: 0xe5f2f1dbf6d2827aabd3aa47, + limb2: 0x592087f8fe038d3, limb3: 0x0 }, w2: u384 { - limb0: 0x40bf26361a0496cddb84da5a, - limb1: 0xe7f3b014f8ba18df5f27112d, - limb2: 0xa9fd225a0ce22d1, + limb0: 0xf0855a626353d1c9b3041689, + limb1: 0xb5db5b595e93a90f2b0d63cb, + limb2: 0x21ab49ab8cffa24, limb3: 0x0 }, w3: u384 { - limb0: 0xf0d91fa16fd370077955fba3, - limb1: 0x28b85097122145ec1bdf7f15, - limb2: 0x1785d87c0ac64ccd, + limb0: 0xe9951a47d24ddac85a308c3a, + limb1: 0x7ee9c9d117d8f2e5bfffe613, + limb2: 0x12a4cd7b9ab8112e, limb3: 0x0 }, w4: u384 { - limb0: 0x9a5d450a64537b37ecedd1b8, - limb1: 0x3a9b874748aca573d34297c2, - limb2: 0x2d15dc7ea8bdf71c, + limb0: 0x91b1798671a643eecb9b11c, + limb1: 0x9a055a54e1076cd9198220c6, + limb2: 0x1aa4b9e73abd181d, limb3: 0x0 }, w5: u384 { - limb0: 0xddeb3beeac745693995e54bc, - limb1: 0xf442b762a7701dc97afd984c, - limb2: 0x1254e2f120e9694c, + limb0: 0x2ffebb7145e7f1dfb2b8127b, + limb1: 0x80ff02cf52bd80a76eb962f2, + limb2: 0x2e405756c7a4a47f, limb3: 0x0 }, w6: u384 { - limb0: 0xcebf9add8d6875ad891e7a50, - limb1: 0x440533980d38370bb6de2710, - limb2: 0x24a00703d29c2e6c, + limb0: 0x26c198b93852df4d25063186, + limb1: 0xc0df63efe3a1e82b3a69ce48, + limb2: 0xc3f84ef079a414a, limb3: 0x0 }, w7: u384 { - limb0: 0x2e85ef3742e04fd7604a461e, - limb1: 0x6427cf423c666b926294fbef, - limb2: 0x1346b74734c50397, + limb0: 0x1fc3e3f411e7edd4c20c1381, + limb1: 0x9f814e4d42bb5419cb5d0c84, + limb2: 0x1dc40d928887b6a6, limb3: 0x0 }, w8: u384 { - limb0: 0x1fd937e4ebd8a2adaf1d7ff5, - limb1: 0xa7624ee1d314ec81b26d7978, - limb2: 0x2116c581b4a11b48, + limb0: 0x8f585b78e23e8454ab2455d5, + limb1: 0x304c6c9991c3369edc3aa6ba, + limb2: 0x278ebeeb0f534be7, limb3: 0x0 }, w9: u384 { - limb0: 0xb2c0947b3e7a754cb42f8cc2, - limb1: 0x46d645a2cdcf24ead5bd0122, - limb2: 0x289df850bb9b01ec, + limb0: 0x54b772667da3147d9c7e62a2, + limb1: 0xd92dc87edf17f02cf02646ca, + limb2: 0xfdf5e881628bf04, limb3: 0x0 }, w10: u384 { - limb0: 0x1cf819e511de8767e12bc217, - limb1: 0x2df5fb88a9fd6fb954faa3b2, - limb2: 0x8fbf64c331cc529, + limb0: 0x5ea138f74ccfe2f5fac07588, + limb1: 0x15d838e59ce2b961f577d939, + limb2: 0x2d8367e6a7adc8bf, limb3: 0x0 }, w11: u384 { - limb0: 0xb0c4259150cf7cb6c1a88903, - limb1: 0x4907c9c3f2a76f366f2a6ca6, - limb2: 0x2ebf0fba86cbf801, + limb0: 0xfdfebcd625fc9e575de420df, + limb1: 0x404462aaecf05112964b9fcb, + limb2: 0x1209b518ab2d1836, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x604f92ba18b8123e05e77dee, - limb1: 0x1c42c600b1be06831ecaf57d, - limb2: 0x97e3f3f5460beb1, + limb0: 0x57baf731a4d339660e74505f, + limb1: 0x1c128617d77d53fd5a6594a0, + limb2: 0xc7f836141b8c788, limb3: 0x0 }, w1: u384 { - limb0: 0xc3c06fd7b444553d71b56f40, - limb1: 0x602da2abce2fb490110b6a6d, - limb2: 0x25fb46a55b01d1b3, + limb0: 0x9322a5c78b8466d0b3765fc7, + limb1: 0x7dd6b00945cdfaa37d5a7291, + limb2: 0xce1ccbdd57a9229, limb3: 0x0 }, w2: u384 { - limb0: 0xf55102129526f0097d5031c1, - limb1: 0xf5608cade2f923702a41d65a, - limb2: 0x48b07bfca3d63ed, + limb0: 0xc3eb4cc4caff2ab9ab0c6057, + limb1: 0xd9ea505cb98f4ba86b829a1c, + limb2: 0x5a4164ba14ef9af, limb3: 0x0 }, w3: u384 { - limb0: 0xa6e3f09d59e06731cd84c144, - limb1: 0x47110c55a746614e0ce9c91a, - limb2: 0x27437e111d9d0d8c, + limb0: 0xf4d89c986cfdcce47b2ffced, + limb1: 0xb43de91a1278ee98dfd711dd, + limb2: 0x29e56d2d5ac2b274, limb3: 0x0 }, w4: u384 { - limb0: 0xfcae4a7f241612c263cfe34f, - limb1: 0x50a4ac57e3bc6e5c713b5f9c, - limb2: 0x2a248814e4830263, + limb0: 0xd956ecd08bcbc3fb0414d28e, + limb1: 0xc0b0d4cf42a5da33232bd4ce, + limb2: 0x1b088279d741401d, limb3: 0x0 }, w5: u384 { - limb0: 0xa64b30c4168280d2801faed6, - limb1: 0x6d38cdb9b8bdd645e7f41b91, - limb2: 0x21b0ce95584140d6, + limb0: 0xe192887e49fb7af104279c2f, + limb1: 0xb718d15ce1e0e9325c96d8b2, + limb2: 0x28f3966548a3984, limb3: 0x0 }, w6: u384 { - limb0: 0xfc942f1f0f88e7e58c21fb9c, - limb1: 0x5d6d3c64ef00fcee0f820d65, - limb2: 0x25a28ced9f5b2104, + limb0: 0x245ddeeffe448026c839b514, + limb1: 0x5b05cd075bf8a7d3e2a25f2, + limb2: 0x1529d9f900ddf872, limb3: 0x0 }, w7: u384 { - limb0: 0x4e4367cc7fcc0483bfca0934, - limb1: 0x6705bc609216b3da1ae3dcc6, - limb2: 0x176f91f4e4392faa, + limb0: 0xecbc80d0972a9fe7b18c1e40, + limb1: 0x863d96f570a23d4a678b6e86, + limb2: 0x2485f25c3b0ca914, limb3: 0x0 }, w8: u384 { - limb0: 0x46a113f999df633868d36f92, - limb1: 0x9e073fc6fb42a814a3096f7a, - limb2: 0x127dd369b36f674c, + limb0: 0x1685f9cbbb6cb572ba017416, + limb1: 0x156336af20c15f099523fbda, + limb2: 0x261cf6c21e821f67, limb3: 0x0 }, w9: u384 { - limb0: 0xea01b0bf95017c32b72f5c99, - limb1: 0xa93af2734d55c1de9105689f, - limb2: 0x299872ce2be0ff92, + limb0: 0x280f350bb0133bf06acc9f31, + limb1: 0x3bde7001318bdc1c89908a54, + limb2: 0x2c85f0638fa726ac, limb3: 0x0 }, w10: u384 { - limb0: 0x1656835a790ce985936b8e0e, - limb1: 0x7b5c2581740252693b71efdc, - limb2: 0x1485373f658dc7c1, + limb0: 0xcca15a1988ebc44e1a01d26f, + limb1: 0x620de8e078fd4ce7907af76a, + limb2: 0xc5ed411b4821638, limb3: 0x0 }, w11: u384 { - limb0: 0xcdbea9a3156e5499f5a7e277, - limb1: 0x36de90c9f41aaa4fc695ea0c, - limb2: 0xbcbb228b4059b4e, + limb0: 0x58395439da2ffe52dd334051, + limb1: 0x27c6de07b5e502504daef430, + limb2: 0x29cf24c137ec7567, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x2312627a910bf5a746f0b88d, - limb1: 0xb327657f5f5bc58081320167, - limb2: 0x15f3acfa5450f9be, + limb0: 0xc4da14dcaf67520de8267128, + limb1: 0xe7832adbdf37f25b066ca702, + limb2: 0x9c8d143c7083909, limb3: 0x0 }, w1: u384 { - limb0: 0xf4d96a8323c6f9480c9d00a6, - limb1: 0x16d2a51078b5597aa657d58b, - limb2: 0x26ddc07ee0d94011, + limb0: 0xb9913035300d50b55b90ac6e, + limb1: 0x2609335a3b22d2aabc91c2c4, + limb2: 0x185df051487f2d20, limb3: 0x0 }, w2: u384 { - limb0: 0x9914a1d26c55b00404dc249d, - limb1: 0x1d8bd64620ea9f2ed966bb29, - limb2: 0x287943e9281ccd59, + limb0: 0xe01c66deefcec98591fe4e5f, + limb1: 0x1f54189a8b9d95a052235d16, + limb2: 0x112757bc7090bfd8, limb3: 0x0 }, w3: u384 { - limb0: 0x7b1c91d263e11843c2060c5, - limb1: 0xde423793a6dcab6d2a2ecdf1, - limb2: 0x3af217c2550783b, + limb0: 0x5f6667377eb8b284dd46f6de, + limb1: 0x7b0832ec7c00a2b6433c2252, + limb2: 0x347ed2383736e82, limb3: 0x0 }, w4: u384 { - limb0: 0xbb003577e6dc7dba87cbac82, - limb1: 0xd71b88f32dec5671e91014f, - limb2: 0x23119b0beea77b1c, + limb0: 0xb8082299c2206140fbc4957, + limb1: 0x598f4c3f875bdd5fdae8f1f3, + limb2: 0x2614093922347e14, limb3: 0x0 }, w5: u384 { - limb0: 0x875ff1de08a922f083b424d5, - limb1: 0x1ea43271a57a478b1bd0e0f2, - limb2: 0x58628d14ef5280f, + limb0: 0xccf11805c7e88e98c12335a5, + limb1: 0x40487757c4cc3b25c995599e, + limb2: 0x705eea2b9aefeff, limb3: 0x0 }, w6: u384 { - limb0: 0x2555ed0a30bf4796e2fec5f9, - limb1: 0xa2fb8f2a47ecf85e7faec400, - limb2: 0x2d74552af83b78b, + limb0: 0x1903adfbea7a40019f112e94, + limb1: 0xffab02dfaadfbd3ee50459f1, + limb2: 0x1dac59a8279039ee, limb3: 0x0 }, w7: u384 { - limb0: 0xa4f9503943cc6583939f095c, - limb1: 0xcda6ed549e6e024ef548a351, - limb2: 0x2fcc36ff460ba980, + limb0: 0xed65931e6de3ac8a0fb6ffae, + limb1: 0x6616e282ea336456f8ce56a3, + limb2: 0x25d709dfd57fc4a3, limb3: 0x0 }, w8: u384 { - limb0: 0x954657ff678f641f1c59d14d, - limb1: 0x8d5156d7f4b350ef6807030f, - limb2: 0x2b05c2b7f3bb73c7, + limb0: 0x55428e9490d41d0bb9944c92, + limb1: 0xa8dc37095bd5269c08ae98c8, + limb2: 0x1a99de1bc0cc9f15, limb3: 0x0 }, w9: u384 { - limb0: 0xd3cf93f4e72b36f85550fbee, - limb1: 0x3ba9b11397538df02c47c6f2, - limb2: 0x29b6ba5642b49da1, + limb0: 0x8fe32bcc4bd516c2ee39b67b, + limb1: 0x7ce941fcecb889d7ca399a0d, + limb2: 0x256dc88293a6efd4, limb3: 0x0 }, w10: u384 { - limb0: 0x960cb158b60d6176e8b7ddc5, - limb1: 0xf20d0030fcc3542d5274c6b, - limb2: 0x23c14f8bdbcaee08, + limb0: 0xd7785754357527250d6e58db, + limb1: 0x8c233c68a84c9b2729c4c804, + limb2: 0x2686d18b72797cb6, limb3: 0x0 }, w11: u384 { - limb0: 0xa5ea25e9563eb21f8ff813b9, - limb1: 0xca61d76da9d673c92a99eeb0, - limb2: 0x1792972f50e09129, + limb0: 0x6a60815b5059895f58964b5c, + limb1: 0xc091683daeed1b76499e5a04, + limb2: 0x42851d56b9f39e, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x365b02cf76957e1a2c7e9bcf, - limb1: 0xd65189e1d20017a99ecb7afd, - limb2: 0x8142d212f601356, + limb0: 0xe4b18a6fd7e8e5157b445a7c, + limb1: 0x6e90ab10569ce7a06a79f0fd, + limb2: 0x29e3688e9e10ff36, limb3: 0x0 }, w1: u384 { - limb0: 0x109d358befd97a3c0d1d5cb9, - limb1: 0x7a6a9b9bac65611103bc6889, - limb2: 0x524b4050ca7f33, + limb0: 0xdd84f8fe35b499079dfbe9e6, + limb1: 0xce3504d945953a9d1fb99daa, + limb2: 0xac63e559b1b7acc, limb3: 0x0 }, w2: u384 { - limb0: 0xb1551cd02901e92572b6d93f, - limb1: 0x581bcf1dff0892e91822e7af, - limb2: 0x246f432233c217f8, + limb0: 0xa5ea0f21b846b8312724d76b, + limb1: 0x85ec1c1bcf820b92fab5a37c, + limb2: 0xabecb2fcff9ac81, limb3: 0x0 }, w3: u384 { - limb0: 0xad0e6145280a6276855ca2f8, - limb1: 0x97b21a2c16610b5a2686f7f4, - limb2: 0x2fe33b40affbd554, + limb0: 0x7ff98cec28f1f4e372ec45f5, + limb1: 0xa53325dd5dad5ec90bda94e6, + limb2: 0x1f2dd9ffb69c57fc, limb3: 0x0 }, w4: u384 { - limb0: 0xbde92a2844fd1d4f8d8ea667, - limb1: 0xb1303a41fe2365409424efba, - limb2: 0x6072b4642742a77, + limb0: 0x75b8dee14f59a9b3df67b7c4, + limb1: 0xc02d68f561be537ab4e4fa34, + limb2: 0x2b0e2aaf84b4b9bf, limb3: 0x0 }, w5: u384 { - limb0: 0xc4be091191d2d37a9cb20f82, - limb1: 0xf00fa17b4a9e3bd058c0d26b, - limb2: 0x246a88db725b3f1b, + limb0: 0x9127f2f042108479acfbc6a1, + limb1: 0x419d320edb49983aa4e9287b, + limb2: 0x17f14388a0f9333f, limb3: 0x0 }, w6: u384 { - limb0: 0x25820bc9943d15bc284178e0, - limb1: 0xb579b7547937bdcd5af9f29c, - limb2: 0x2abcea5a196488cd, + limb0: 0xb710d2ae7825241e35186cbd, + limb1: 0xea1bb2fa5ce1266a649df9f1, + limb2: 0x189af73ac2193864, limb3: 0x0 }, w7: u384 { - limb0: 0x5a779fd0cf36bb8dad72696e, - limb1: 0x76442c838d5d189ee304a64, - limb2: 0x16bc5b7fb65d4487, + limb0: 0x668a213cea362d4507dae203, + limb1: 0xc41658fe21e5d9423082b2a6, + limb2: 0x2ae887fb1c22a6f9, limb3: 0x0 }, w8: u384 { - limb0: 0x9bec8d71b29fe316f650486, - limb1: 0x56de9043f7f04a56b1164790, - limb2: 0x28c4d1b3d24edac, + limb0: 0x2364ee3590225f4b3f87a8e6, + limb1: 0x5e9c5d0f0a9b5436f1fe55d9, + limb2: 0x2cd67aacde631193, limb3: 0x0 }, w9: u384 { - limb0: 0xdc9f68a1be7047404a246756, - limb1: 0xb799c92051d83a975f2313a7, - limb2: 0x1b07bc34529b5cdf, + limb0: 0x59656a7b17e4fdabfe60230b, + limb1: 0x328bfdb293bbaf9cae14d05f, + limb2: 0xde430c32a7d3ee7, limb3: 0x0 }, w10: u384 { - limb0: 0x4f1c83f879c93d18022b763a, - limb1: 0x26343d608066b55f99ea4573, - limb2: 0x599f497d1a7a656, + limb0: 0xf4b983bc021101a37338716, + limb1: 0x7eae3920541a08f01bb5d885, + limb2: 0x1240261e30450b47, limb3: 0x0 }, w11: u384 { - limb0: 0x2805540fd8bd1bb8d8e8f5b3, - limb1: 0x1a1cc871eced70fa497cb40c, - limb2: 0x25fe6befc59642e4, + limb0: 0xa4ef92aed141a62ab131d3bf, + limb1: 0xaab40e5a36fef663be4bd7f9, + limb2: 0x1638aa37c169d8e8, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x7b5a29a63782620fbce6139e, - limb1: 0xbd79d3a3315118ed35120223, - limb2: 0x104f1ed1960797d1, + limb0: 0x7159daba2bd3d4b20c231587, + limb1: 0x5f4f4b350102d96a6724911a, + limb2: 0x485ed6231b75c6c, limb3: 0x0 }, w1: u384 { - limb0: 0xf53bae09121d7bf12eb7aab9, - limb1: 0xf6d15b4954435768c6250ed6, - limb2: 0x195d971d1e943ec8, + limb0: 0x77ccc804dab396477c919cfa, + limb1: 0x9324c84d74abf87dee2265b, + limb2: 0xcd2488bb8e578b3, limb3: 0x0 }, w2: u384 { - limb0: 0x8de2b6d13eb6fe8ea56b3c06, - limb1: 0x41172e5902efd96751f6db8f, - limb2: 0x1827a52b05f73fc0, + limb0: 0xd5e63f35e23525ae0bee7b9c, + limb1: 0x8a477fd2e8e1b5cb6433d5c9, + limb2: 0x197a341a550be143, limb3: 0x0 }, w3: u384 { - limb0: 0x84b04eeb0e19463159ef67c6, - limb1: 0x914a90a6f07137506d26ebaa, - limb2: 0x179ec8b0d71cdfcb, + limb0: 0xf1d7edf3e2e9cf30751c6382, + limb1: 0xa0e14d85b1b24a2fd39c65e2, + limb2: 0x13b2cfc560a23ca7, limb3: 0x0 }, w4: u384 { - limb0: 0xd8528e98c7c628f66c25d201, - limb1: 0x2049383e68f1c26e1ca79ce4, - limb2: 0x2f4b8e2a1837deed, + limb0: 0xcf2a5c26771a987db8dcbf44, + limb1: 0x2378f15d324ec3f9eb0991df, + limb2: 0x2d7d9a6a243bc90d, limb3: 0x0 }, w5: u384 { - limb0: 0x4857b1cfca81a1b0d8f66050, - limb1: 0xb08e14280460ca670d8267b5, - limb2: 0x22adc3bf4752900d, + limb0: 0xc95e2f9f909e1977420a3ea8, + limb1: 0xec7b81c995c8eef61bd3e27c, + limb2: 0x8fc849aca921d94, limb3: 0x0 }, w6: u384 { - limb0: 0x79520e1169187ca743a65ea9, - limb1: 0x96b6c43cbe64b051604e0273, - limb2: 0x29efb18e64bb52d8, + limb0: 0x8f7632c46219d2c1b9bfe565, + limb1: 0x6627c956b87e92efccb7b8d2, + limb2: 0x16d435e104da2994, limb3: 0x0 }, w7: u384 { - limb0: 0x9d3f6fe48a178e6dd6eaa614, - limb1: 0x7c7ec065e859128ccf7cb589, - limb2: 0x26635df8228c166e, + limb0: 0x4265d268d305d8250c69710d, + limb1: 0x20ccaceb8c74cd5e14f6d8c4, + limb2: 0x2a4c45f279cafa6e, limb3: 0x0 }, w8: u384 { - limb0: 0xe9302993d1a21be603475704, - limb1: 0x92676d39fa42b480a06bed15, - limb2: 0x2b91c8aa12f0721f, + limb0: 0xebb654ff228574db07b2c6c0, + limb1: 0x9ba7f8f1e5d9655e09797074, + limb2: 0x9387b3128c3fb5a, limb3: 0x0 }, w9: u384 { - limb0: 0x225a1c457b8769b07d39fa09, - limb1: 0xc0aa59a1d1e72971775c5eca, - limb2: 0x1add1a7567d04bec, + limb0: 0x9b4ca01e3bfeed5adc5b6b08, + limb1: 0x8f11a192086ee68d33f08aca, + limb2: 0x110ecc00d02a58a5, limb3: 0x0 }, w10: u384 { - limb0: 0xbde00c7a67a2d9f8e9a1d3dd, - limb1: 0xca39b0739b08932de67159b0, - limb2: 0x28a12750d669c389, + limb0: 0xd01024e73c2a3ac89869b7dd, + limb1: 0x748192538e5cbb5e88419ea, + limb2: 0x1f090f7e3bb6ec1b, limb3: 0x0 }, w11: u384 { - limb0: 0x48d43859afb0f378736b6084, - limb1: 0xf00e4f023e3d7797aa048476, - limb2: 0x2034f30806379124, + limb0: 0xf58b47f587534f2c727f1423, + limb1: 0xcd955bf802c97b91c87dcdee, + limb2: 0x1071b472258b0485, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x6c9cd6592cb6d2eb49e4c8d3, - limb1: 0xffca7cb3c460cc85fdc214b2, - limb2: 0x3a5b9dacfbd03aa, + limb0: 0x8d565223865d0a878a2eb292, + limb1: 0xec7197a0906352e6bccef23, + limb2: 0xce4018b0c32e697, limb3: 0x0 }, w1: u384 { - limb0: 0x28c9aaf7c03306767bf60a12, - limb1: 0x66c9c5e004460f7b417f9e14, - limb2: 0x6d63f85d66006c0, + limb0: 0x5533c982d18799c84dd1cdab, + limb1: 0x711a7e6041136edb86cb73bf, + limb2: 0x9ad5d3801ab8c83, limb3: 0x0 }, w2: u384 { - limb0: 0x95e862adab0af96f1769f11e, - limb1: 0xb6a45c788d292d00e813e235, - limb2: 0x251c621c19d2327, + limb0: 0x7903d7616c06f1dce94b23c8, + limb1: 0xe9b9c1efa38c0717bc8bae79, + limb2: 0x1c9f756b0ee6f4e6, limb3: 0x0 }, w3: u384 { - limb0: 0xa22a79c5dad2fd84e69427e8, - limb1: 0x15d9535ea3e4208c782cddd4, - limb2: 0x20dfc5a496972846, + limb0: 0xeef41a7b349ff537d76e41e, + limb1: 0x78ac1293f01f841377bcba22, + limb2: 0x4cbab3ba7e8784d, limb3: 0x0 }, w4: u384 { - limb0: 0xb478a5e6fe15351d9ec755e4, - limb1: 0x4332f291d5695d85fdd3791b, - limb2: 0x2fcdf1af0fe616cc, + limb0: 0x9bb2dbd92a9bee90ca07d490, + limb1: 0xd5d9a11c60a8ab99e32ace8e, + limb2: 0x2b73e647218407d6, limb3: 0x0 }, w5: u384 { - limb0: 0x3bce3097e685be5825e1506c, - limb1: 0x9a41ae2a93a32079ae6dfe2a, - limb2: 0xcc1dd9cebfb29f2, + limb0: 0x96eefd960407424f7e9f9cc8, + limb1: 0x760a1c6d278d7296008e1c95, + limb2: 0x27ade564c851c171, limb3: 0x0 }, w6: u384 { - limb0: 0x8ef27eaad8ffbeb30f44eeaa, - limb1: 0x7514159871571227d5f618ef, - limb2: 0x25fdefe47ddc0c73, + limb0: 0xdc5bd6453d52586249ba8dba, + limb1: 0x5b0c23c02e81c722d0478c60, + limb2: 0x12d92d02ca4d4bcc, limb3: 0x0 }, w7: u384 { - limb0: 0x4bf210d89fd6c482b041260c, - limb1: 0x3876680c735feb32b209c4b7, - limb2: 0xdf6f12816620fa2, + limb0: 0x40964ffd3da48758dbe44111, + limb1: 0x813b23748664189292da010c, + limb2: 0xa75d47c3806ddc8, limb3: 0x0 }, w8: u384 { - limb0: 0x20544bf81cbb8c2933f41972, - limb1: 0x5c8981731830c5b0bfec76be, - limb2: 0xbd267841646eda, + limb0: 0xa38097aa3fdf667f28980246, + limb1: 0xb2c9dd1ce2257fe19c5d71e5, + limb2: 0x1444beab8d99742b, limb3: 0x0 }, w9: u384 { - limb0: 0x7f9ec2fc8dfab31ea8e92144, - limb1: 0xdd5f3c726b0482f15d3df988, - limb2: 0x123014b27d6f6434, + limb0: 0xcdbfdf1bbd6c1b281eff645b, + limb1: 0xe0b77d4e850aa17aaab4e41b, + limb2: 0xcefd8b7bebd333e, limb3: 0x0 }, w10: u384 { - limb0: 0x12d22668fa2d2c1c469dcfd7, - limb1: 0x9aba9d9d3df868f64b4532e2, - limb2: 0x2c145dea0b95ca63, + limb0: 0xa49b804050e513cb3a8755c8, + limb1: 0xab8869bd1ddb8d1c2e9e5c6b, + limb2: 0x22a8aea50c2cb464, limb3: 0x0 }, w11: u384 { - limb0: 0x3cb08a2b634f024b58fbc3af, - limb1: 0xba7c00aacfc2de94a305eafb, - limb2: 0x27f834f7a2cf3576, + limb0: 0x10e8399a380759c2a67687f1, + limb1: 0x63d284c24026f3b88c09f490, + limb2: 0x2a9511cc3db1100b, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x9fa8810e0fd324ae7751c3cd, - limb1: 0x73c8c14efc74b2e0c59ffad3, - limb2: 0x1d31c6a39966c651, + limb0: 0xdae5fecd3f2a162a51b755a6, + limb1: 0xd9afc6c6d73bd869a2105585, + limb2: 0x2c84c2bbe1004565, limb3: 0x0 }, w1: u384 { - limb0: 0x912b047745ac1dbf08830f60, - limb1: 0x3245f6ecf56e85c3e7b2793, - limb2: 0x21fd40cb3c2c049c, + limb0: 0xe72558de910897cc31c23d25, + limb1: 0xd3c75292f4969209000d2f5f, + limb2: 0x29639cee8d534afa, limb3: 0x0 }, w2: u384 { - limb0: 0xc3e7a5f253884a4f6d031dd4, - limb1: 0x833d2ae74a3168315e463f22, - limb2: 0x166506fd3da6b2f4, + limb0: 0xd25f670b53b4fffbe8724c6c, + limb1: 0x536db873d272709463ec9661, + limb2: 0x19d4c6e7dd8ed83f, limb3: 0x0 }, w3: u384 { - limb0: 0x5901c6f0b860bf960ff79e2b, - limb1: 0x2d8614d8e885c909e99c662c, - limb2: 0xa5c8ba54f2491e6, + limb0: 0xb586d7d50a788cedc2bccfd8, + limb1: 0x5e3e76ccc9cf38b8af269dd4, + limb2: 0x43f189188ece1a8, limb3: 0x0 }, w4: u384 { - limb0: 0xf29bf721978bd8716562e3be, - limb1: 0x27d631087e82c69f69a6c637, - limb2: 0x260e53cb5a221dad, + limb0: 0x21b2bf4653ef4d23d125698f, + limb1: 0x64652d80fe9240ea6e07d2d8, + limb2: 0x23b72569a56b5703, limb3: 0x0 }, w5: u384 { - limb0: 0xed9326a81054f8e48e06a01c, - limb1: 0xaa0f4dee82bbd825ed858f14, - limb2: 0x1e75ffcbfa6e804, + limb0: 0xb43e4add631c147458940c08, + limb1: 0x577579d422db883301b48731, + limb2: 0x154c83e7b7645261, limb3: 0x0 }, w6: u384 { - limb0: 0x1da4748e0242a39c5ab687c, - limb1: 0xe997f1b2e240ed8a39adc5d6, - limb2: 0x3010bc90f89abeb3, + limb0: 0xbb65c31c973d1a3626db56d4, + limb1: 0xc6429c72610207398e387f3b, + limb2: 0xe9088d35ad246d0, limb3: 0x0 }, w7: u384 { - limb0: 0x2118106dc6f5528d6bc30bde, - limb1: 0x58b0d5cd78414e201fd437d2, - limb2: 0x2c77972f20ad72c4, + limb0: 0xd14f1c9599e1e65fa3e3eb71, + limb1: 0x17e9f0084ee386b188e5442c, + limb2: 0xb1c16678c31dd9c, limb3: 0x0 }, w8: u384 { - limb0: 0x2e555e9cc4df92b662a895b7, - limb1: 0x50aeb239fa70c352f491e411, - limb2: 0x9488859e3d3e2a5, + limb0: 0x61f2857c460bf65c73d6dff5, + limb1: 0x551ac308ec7dfbdaa621700d, + limb2: 0x63e47ef9f936207, limb3: 0x0 }, w9: u384 { - limb0: 0x9402c6e3a0ea15883ccc576, - limb1: 0x5cbd987dedbfc3277675d062, - limb2: 0x8ba9be306d0d04c, + limb0: 0x4f724885e8f8beb7690ba3b7, + limb1: 0x71f03c83459321316aac06d0, + limb2: 0x1d0d099bde4b9875, limb3: 0x0 }, w10: u384 { - limb0: 0x5011d52ca1766ea26a1c7f1f, - limb1: 0xfa76f08046958736b13f279c, - limb2: 0x1daab06e72fda65, + limb0: 0xd7602b4d7c8ba87cd4aea246, + limb1: 0x862d04015b0765b295976c89, + limb2: 0x77d4a8cd9fdffa8, limb3: 0x0 }, w11: u384 { - limb0: 0xb41e5e65aa00339e6963dd5d, - limb1: 0x69aea824c0241066c90ab252, - limb2: 0x1417d2b0504efab9, + limb0: 0x3de430e362dfeebacf3e9916, + limb1: 0xc3f589b8aa25c95feb4846fd, + limb2: 0x104a9d602c0d9d4d, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xc79969a0a1a6fa6d56a1d2c5, - limb1: 0x7a0a0bd7a7ef995f08ebaf64, - limb2: 0x20d4bc45d6983415, + limb0: 0x3a2678cfcbca303a232e7bc5, + limb1: 0x1d2637edca8c2587e0ef2ac6, + limb2: 0x20c8f1bb33f2abfd, limb3: 0x0 }, w1: u384 { - limb0: 0x4666bb130a9c075a34c50e90, - limb1: 0xc62ceab0b4bfb6aa5bc6e3c1, - limb2: 0x20e8f002d0a84482, + limb0: 0x1c934f5e609b210f2f735d15, + limb1: 0xfc480a1de857101a6f1df7bc, + limb2: 0x2576509df102a1ce, limb3: 0x0 }, w2: u384 { - limb0: 0x479d80639aca1ae8c6c60645, - limb1: 0x72e9166a190b1b4404099584, - limb2: 0x2ad1bc37943f18d4, + limb0: 0x3a882a82e15155e6da324d4c, + limb1: 0x3cdcc5201ba866fae606700f, + limb2: 0x13eb43e498b1d84c, limb3: 0x0 }, w3: u384 { - limb0: 0x58f37a311de18257bda596d4, - limb1: 0xb7c1ac3f8629224296be7a03, - limb2: 0x2e4460f201d0cb43, + limb0: 0xbb1de7d76bf8555f0c8b7d32, + limb1: 0xb9cfa63571cba47545f0bda0, + limb2: 0x16ef391eb157b6e8, limb3: 0x0 }, w4: u384 { - limb0: 0xf552779b791f9dca717edda7, - limb1: 0x55a92c4836a1a69982030249, - limb2: 0x8ea8bf3e3092a71, + limb0: 0x7703c400351a24ad577a476b, + limb1: 0xa9dc8c2788647e1a81f2d93, + limb2: 0xaf75d3a41f5ddb2, limb3: 0x0 }, w5: u384 { - limb0: 0x9d65d9a3f97843ab63d4b88e, - limb1: 0xc8aa42bde86e01fbb9edc67, - limb2: 0x11446230ad881e0d, + limb0: 0xf718b7ce1e0dfeda32a3c288, + limb1: 0x71b1841dd005a12d643ea304, + limb2: 0x2236332f27ed5e26, limb3: 0x0 }, w6: u384 { - limb0: 0x96f1e55877b1700d8bca0081, - limb1: 0x35b62aa5d46303339bca6870, - limb2: 0x1148f5ac56de11d, + limb0: 0x8c2db80e54c4399865419782, + limb1: 0x4205ad2d1851187e4e6fb643, + limb2: 0x27872e1e3ece752f, limb3: 0x0 }, w7: u384 { - limb0: 0x840111a94f8b5ee37171fe24, - limb1: 0xc5aefa07affe4520486bf955, - limb2: 0x21a40fc062ceb8ff, + limb0: 0x4c9707812783360b4c4f85bd, + limb1: 0x45e14cad608c3d505b5f8d25, + limb2: 0x29fab2ebf48cadc7, limb3: 0x0 }, w8: u384 { - limb0: 0xe2f75459b16261243e7f45b8, - limb1: 0xc1d3c1f9c49928101f2b1cf5, - limb2: 0x2ec6335e131ad3fe, + limb0: 0x48709d2d89237ba2418fecb1, + limb1: 0xe5f6d6186d234bd3d0d56b40, + limb2: 0x695953f025f64c4, limb3: 0x0 }, w9: u384 { - limb0: 0x64d479c6b444a58b56263b79, - limb1: 0xb4b9cbaaf8af71f1849761c4, - limb2: 0x1eb0be64db968c25, + limb0: 0x2cb0229fdc28f8a1abd5c20a, + limb1: 0x18e62daa670a9d63dd45cd55, + limb2: 0x5841ab048c6c963, limb3: 0x0 }, w10: u384 { - limb0: 0xc83ee3e79aff5770cd3ac258, - limb1: 0x3013a80cd29e93071135179, - limb2: 0x17d3315c7a551538, + limb0: 0xbdce4ded37f82fb5da707785, + limb1: 0xd98d20973053e11d1e077b33, + limb2: 0x3e088d1427b93fa, limb3: 0x0 }, w11: u384 { - limb0: 0xcc62690b512896614750f977, - limb1: 0xd9c164f72b6be25e35df56c6, - limb2: 0xf061900ae815735, + limb0: 0xbe2f635cdc4af8322b72de42, + limb1: 0x3ca32c1d4f135b7380e7a58d, + limb2: 0x20321184e1393288, limb3: 0x0 } }, @@ -16267,756 +16257,756 @@ mod pairing_tests { .span(), big_Q: array![ u384 { - limb0: 0x48a9f90b87fab819aa9f67c6, - limb1: 0xce19e32af48bb44e330c2cfc, - limb2: 0x18c5b49c17b52120, + limb0: 0x7c7ddb93a8ebde78a4bd06b4, + limb1: 0xf697c7a5fa3dc881f58ec3ca, + limb2: 0x12555260a0a2a2c4, limb3: 0x0 }, u384 { - limb0: 0xe099e37745fe7f4011dddb1, - limb1: 0xe487f2cbc336ec9419b95b76, - limb2: 0x2fc0ea8a045717a5, + limb0: 0x197004b051de7e63c1f4a0f4, + limb1: 0x4f40feda3be350aa2887b696, + limb2: 0x17145a5dad2558f9, limb3: 0x0 }, u384 { - limb0: 0xb47b2e7c6c178b1b6f51cce1, - limb1: 0xe1be7255cf81630c285b302e, - limb2: 0x25751d0fad34a8, + limb0: 0xe3f15a166d91ef97b075c12f, + limb1: 0x14243dc88fdd4764c5703a76, + limb2: 0x1ba12b4202e84063, limb3: 0x0 }, u384 { - limb0: 0xa8ab2106a0c991bec8316e56, - limb1: 0x6ef812f1a1cc2fa4f4fd55c1, - limb2: 0x9a2187b258515a6, + limb0: 0xad7cba8218415de169732a51, + limb1: 0xfc8c006e330ad669a05e27a2, + limb2: 0x1185408556fdad1, limb3: 0x0 }, u384 { - limb0: 0xe0a2931f86b1593e2803b1d, - limb1: 0x3a934957f5508a0c6680b12c, - limb2: 0x1c91d0f23c39f10e, + limb0: 0x921b3b7fd3c9868b2185ac6, + limb1: 0xbc9143a18c57aede88971af9, + limb2: 0x264a84e566a68175, limb3: 0x0 }, u384 { - limb0: 0xc3bc757356bbaf961ebfca85, - limb1: 0x4d611be8f49acb97107c0998, - limb2: 0x2f6e788c42b60146, + limb0: 0xfd7e8fd9797bcb05eb17a509, + limb1: 0x6125d06481b5155126cc68d1, + limb2: 0x8cd0053b29b5f70, limb3: 0x0 }, u384 { - limb0: 0x88cfa10a2d7f64c68e47dd22, - limb1: 0xfab3cb1dd2eb32dab71260a1, - limb2: 0x1683a7d1748e89a8, + limb0: 0xc2dd4ed209fee73a050f676a, + limb1: 0x35ae79611fa0182686c29c54, + limb2: 0xd992637ce8fa43e, limb3: 0x0 }, u384 { - limb0: 0xb798c16ef8ce2006e2b3cb39, - limb1: 0x81bc534d3060361659d914af, - limb2: 0x15a90e6a74adc075, + limb0: 0xf2f9f1caed50c1041edeab9b, + limb1: 0x60d872f529d151ff4a4ae44b, + limb2: 0xd5aca4d66c9c324, limb3: 0x0 }, u384 { - limb0: 0xb7a9dc7c795296ed23d30dab, - limb1: 0xa3ed159cd4f488359d41bf44, - limb2: 0x25d105b94b072c3a, + limb0: 0x55aefe5987f89f5a4b3e45ef, + limb1: 0xd150118e7b9641bbeb0d7af6, + limb2: 0x22b8898083b08d30, limb3: 0x0 }, u384 { - limb0: 0x1b9771e75fada9c0ee9031dd, - limb1: 0x495736e865b6a6a797410668, - limb2: 0x10672696e5bfab2a, + limb0: 0x9a9f623f0bd9be34886e21a1, + limb1: 0xb57995cb7828059b66411c03, + limb2: 0x2f0c030eef66c7b3, limb3: 0x0 }, u384 { - limb0: 0xf1dfa38d08000a3be4a677a2, - limb1: 0xb389febc997e637f1ed92f20, - limb2: 0xa8a10d25f94990e, + limb0: 0xae9911dda20cdade5fd8aea3, + limb1: 0xedfa9d80922f6405ecf12073, + limb2: 0x50c80d7c06e471c, limb3: 0x0 }, u384 { - limb0: 0x457a03e3726171e5aaa8f09f, - limb1: 0x757fc868babadc5702628ed6, - limb2: 0x156f3346d473e606, + limb0: 0x3e9674bcf5faec3cbc38add0, + limb1: 0xb892682d695aca5cc16245, + limb2: 0x1d7f5cfeae5f4a34, limb3: 0x0 }, u384 { - limb0: 0x62eeab85bb4b03a023d39f56, - limb1: 0x71308d783ac13382f526ece1, - limb2: 0x119bc2f93dcca337, + limb0: 0x98863b6f5e1478eb2d9ae258, + limb1: 0xe8eaa64f4810d13065cd2ce, + limb2: 0x39aebe7c6c69896, limb3: 0x0 }, u384 { - limb0: 0x236a398ba5469c8e173c40b9, - limb1: 0x691cee3e4d49a58404661247, - limb2: 0x1b3dc86f49448a26, + limb0: 0xb9115dbf2ce2454a207b5bdd, + limb1: 0xb3d782ae47c2e93a78c78042, + limb2: 0x177aea7581c073d, limb3: 0x0 }, u384 { - limb0: 0x85b710923d9e828e12d42d3, - limb1: 0x40f7ae7b3c350430b34a1722, - limb2: 0x189a1aeed11dff4a, + limb0: 0x88529708b6e71af77d188b8, + limb1: 0x81546c03f732c16cd663c1c3, + limb2: 0x16520865f8492afe, limb3: 0x0 }, u384 { - limb0: 0x4f8108d3949520c4aaa257b9, - limb1: 0x775d8f9029c2f16532dbd31a, - limb2: 0x2c0d8003ddf52943, + limb0: 0xd8ce74c397f858b8bf54ba9, + limb1: 0x530dce8f6b2787e5c4f228f2, + limb2: 0x3e9871448deb355, limb3: 0x0 }, u384 { - limb0: 0xcd9a350f5dec64e416e81001, - limb1: 0x4f7b1da12c6dcc331d0f8a1a, - limb2: 0x16770a73d46b401e, + limb0: 0x278f1fc4d4da213851aca4db, + limb1: 0x4d51ef4c31e319c5cb83ee45, + limb2: 0x19bbf577353d2680, limb3: 0x0 }, u384 { - limb0: 0xb86add717d325ab03e9de52a, - limb1: 0xe2d10813e1c5ebfbb0a6b526, - limb2: 0x2787ba9caf16f885, + limb0: 0x4cba1b95fbe08572dcc2b9b1, + limb1: 0x5c5df768ebe4736b8605cbfe, + limb2: 0x16d770c3db19c7e9, limb3: 0x0 }, u384 { - limb0: 0x8e39d16fd5db4e29c763bcd5, - limb1: 0x99a4021f8a00cb374aebe5a3, - limb2: 0x91030c572798d3, + limb0: 0xaff7f202f1e5d33b2c998e95, + limb1: 0x15798024a711023d38adb2dc, + limb2: 0x665330ac7d6e469, limb3: 0x0 }, u384 { - limb0: 0x27a34e0efa05ed14dec6ddc4, - limb1: 0x88d9a51eee280922ca29aa81, - limb2: 0x2bc41ac9b702b827, + limb0: 0x54ef1f333c6cecb9c75eb0fc, + limb1: 0x76cae28a0e1104a503d44485, + limb2: 0x19b1356abd880175, limb3: 0x0 }, u384 { - limb0: 0x8b2ab5573c8b06cd2c3d2f74, - limb1: 0x5e5e547625c90116de6bc108, - limb2: 0x9ae7251c4984244, + limb0: 0xe32b609d83e1906b46acc0dd, + limb1: 0x39f9732a33b52231020cae42, + limb2: 0x2f199e44e9f30857, limb3: 0x0 }, u384 { - limb0: 0xf2b24862f754c713eed52160, - limb1: 0x70325e132e792eba603ed125, - limb2: 0x1896c2972845ae64, + limb0: 0x2304eb6e6d0df52bdeef6fdf, + limb1: 0x87f04e083b368a98e4cdd3e9, + limb2: 0x27e8750b8ce6c1f0, limb3: 0x0 }, u384 { - limb0: 0xca29320d5c09eb3c76108380, - limb1: 0xc59e9989f69f8db4185a8665, - limb2: 0x218d1144bec26aaa, + limb0: 0x7d62690274d2342f4c46860, + limb1: 0x8d75b83e2509e9309abf0477, + limb2: 0x401a45a6faa235d, limb3: 0x0 }, u384 { - limb0: 0x9094a4f1240984286cf5e7fa, - limb1: 0x33daecef7133ab561a3d4556, - limb2: 0x116b3dab9630eb74, + limb0: 0x76c21bd5674ae72c0007d511, + limb1: 0x54ce34b6de0dfe4772df5179, + limb2: 0xcc36656c99723a2, limb3: 0x0 }, u384 { - limb0: 0x6028333965837dbf5023fbd7, - limb1: 0x3cb480620916745ef2325bea, - limb2: 0x1131f449f696ffa9, + limb0: 0xbf21332dd61dc79bb4aca8dd, + limb1: 0xeb6d8ed079576e9ac1c3759b, + limb2: 0x30cf338198f22e1, limb3: 0x0 }, u384 { - limb0: 0x3959cca4973719e31709ba49, - limb1: 0x73316e238449fd9042f2f9b6, - limb2: 0x2cf27c7aa80b53b9, + limb0: 0xd7c4f7cb317617033803c6c8, + limb1: 0xab19ab567c946d564bff0e9f, + limb2: 0xa72757ca66088dd, limb3: 0x0 }, u384 { - limb0: 0xa9fc2b46287b2c999ca69a4f, - limb1: 0x29122efa93b80f4080f97c0, - limb2: 0xe0ea816bc095ce2, + limb0: 0xca6ac7c6723754e407f4a5f6, + limb1: 0x921115ef42b950071049c8e2, + limb2: 0x29ebc2647078c76d, limb3: 0x0 }, u384 { - limb0: 0x96957e98bc43fa6b654443c2, - limb1: 0x7b9d31f2523e1bc0f958115a, - limb2: 0x12c3ed19a3d2abf6, + limb0: 0x6c5a23ba6291325020a97c94, + limb1: 0x344803884eddc6c4b3b30686, + limb2: 0x2cee18f6cf5df63a, limb3: 0x0 }, u384 { - limb0: 0xcadd65f64cee36f378b204b8, - limb1: 0xcb0785ef06b1b5c565d83368, - limb2: 0x8df2b03c7a2846a, + limb0: 0xbc493d3c5149efa65caaee91, + limb1: 0xdc81a8fd4f13aa9b1ac36f7d, + limb2: 0x10cf96d527cea417, limb3: 0x0 }, u384 { - limb0: 0x77db461c112ece74afe4b54f, - limb1: 0xf1a7fe136188c7eee305439c, - limb2: 0xc63bc078713128a, + limb0: 0x3e71fb65c6f6cf41d0295d3, + limb1: 0x4cc5d7edbf88c25d9224547b, + limb2: 0x5bb0e86bb2d4add, limb3: 0x0 }, u384 { - limb0: 0xb3ad994a968f648f5e50d31e, - limb1: 0x5f572979c2d7ea0a8d342e45, - limb2: 0x244d7d3a4fd0066d, + limb0: 0x13a7b30818e23c3cec0fa17a, + limb1: 0xbfc78a834f87e43821851e6, + limb2: 0xab824ab4a158652, limb3: 0x0 }, u384 { - limb0: 0xfa48cb3099f3ffa6a78f13e5, - limb1: 0xadf66c3ad71016cdf824c0db, - limb2: 0x1b6c95d8aacf361c, + limb0: 0xdcaf3d6c7af2ee11ddb38f89, + limb1: 0x6bb3e286a7fd1ab8e93bdb05, + limb2: 0x2050a18ce4cdfaa9, limb3: 0x0 }, u384 { - limb0: 0x68485e359c0bb7daa9be0f50, - limb1: 0x61c2c4b0ec34962d331acf22, - limb2: 0x2d3bf46b65a78c34, + limb0: 0x13634e4269c8ffe54a33502b, + limb1: 0xad34a9f1f2a16137e5f40217, + limb2: 0x6f72f78ea27289, limb3: 0x0 }, u384 { - limb0: 0x37d5c17aa49a900ae5245207, - limb1: 0xf04a09c10d245e5118097ef2, - limb2: 0x529691acb675dcb, + limb0: 0xd73607c928c585ecfecd890c, + limb1: 0x27668063f1941a9e35cb9be1, + limb2: 0x8ba1b4d6d66002f, limb3: 0x0 }, u384 { - limb0: 0x4fe21e6e34bc025533cbb21a, - limb1: 0x8dc8440302c93349c0574bb4, - limb2: 0x300a519a01a61776, + limb0: 0x4880e3838cad6236b4f1765e, + limb1: 0x2e3cdda28c3d32f419a103f7, + limb2: 0x8d960e4276aadd6, limb3: 0x0 }, u384 { - limb0: 0x52eb9e73509e5968dcc8c263, - limb1: 0xc1bfafc2b253ac18a2189787, - limb2: 0x3779de4ebc1720b, + limb0: 0xf643ff1cf1d08876ee34a44c, + limb1: 0xe5f2d2d6e89a9d8ceeacf2c0, + limb2: 0x2cab0fc13bc366a5, limb3: 0x0 }, u384 { - limb0: 0x48fdfbebd4be1f47ba69ce75, - limb1: 0x7cc5e8d3e74e41dfa016a0e, - limb2: 0xf2cc893cc7effb6, + limb0: 0x9c12bd289b7c28161b68ea95, + limb1: 0x1e15b1858223fefe053f7ae5, + limb2: 0x2b7add1ce9e1ae7d, limb3: 0x0 }, u384 { - limb0: 0xd0c0e295695b3c140e78bdf6, - limb1: 0xec1c5785c7730bed9832a7f4, - limb2: 0x1660a1e0d64bae84, + limb0: 0xb304e7fabe0840c1e51ceb36, + limb1: 0x16de3ef8cd9ac6b70080b4cf, + limb2: 0x11aa381c841a039, limb3: 0x0 }, u384 { - limb0: 0x570b9de46e96521c881c5f59, - limb1: 0x32b40c3ff8ebe3cc86999d94, - limb2: 0x169d8842dbffb465, + limb0: 0xa5ff01775d022f3e70ea53de, + limb1: 0xd8a48a8700a14c4fa2e7b9b7, + limb2: 0x2671fa321be1a933, limb3: 0x0 }, u384 { - limb0: 0x777bceebe76731f6c159b86, - limb1: 0xe9af2300f0ed2e2fc12dc474, - limb2: 0x2d7725aec8c0b2c1, + limb0: 0xdb6e602a8f664860a589171, + limb1: 0x686792a5f0ae4b244ccc6693, + limb2: 0x2a109c7e20dc3958, limb3: 0x0 }, u384 { - limb0: 0xa4b0d81a156ea9797dd1441e, - limb1: 0x4f4f20f6775e366c8dd97cc4, - limb2: 0x39673fdc97d14a5, + limb0: 0x8d76cac6a6ba8cd6d0afd6c9, + limb1: 0xbf6595b9515ef7513664a2d3, + limb2: 0x26e202478f5ecea2, limb3: 0x0 }, u384 { - limb0: 0x676fe61a588a35d34769658a, - limb1: 0x6b9d34f049cae031500be1c7, - limb2: 0x625124da4e85e0e, + limb0: 0x2eebfbf87fb7b4515ac26406, + limb1: 0x7605ebdec877cd8fea6608f7, + limb2: 0x1fc530474041b437, limb3: 0x0 }, u384 { - limb0: 0x1617937163d588d5866d5362, - limb1: 0xf42537f5614e87e2424b4a8b, - limb2: 0xdc4cf46964aba0d, + limb0: 0xd1fa0ec394cd8a53e1ec3609, + limb1: 0x3401260546fcbc9befd151b8, + limb2: 0x27618e921da4682c, limb3: 0x0 }, u384 { - limb0: 0x35a33d2a200ec52993d1dacf, - limb1: 0x7962673931ec1d6491fefafa, - limb2: 0xe78c1ebb4eb1bed, + limb0: 0x96fb68b6b64cc18bd46429f, + limb1: 0x2c5410cd45bad79bdf1a4ade, + limb2: 0x2777ceddc1296260, limb3: 0x0 }, u384 { - limb0: 0xfddf1ebfc52043f6046c3f02, - limb1: 0xa30b908a86513c50b1c9654, - limb2: 0xe7df1f1533a75c3, + limb0: 0x2e0496aa9b556dff8bd7b435, + limb1: 0xc99c77313d3b8ebf167c9fad, + limb2: 0x8e7aa52b80c10a8, limb3: 0x0 }, u384 { - limb0: 0xa08d73659958bf88e1b786d3, - limb1: 0x43ac3018cf0bb4f6a320783c, - limb2: 0xa4432de60b29017, + limb0: 0x51b88329a5cf48fb770afdfa, + limb1: 0x100a43bddddfdbd3203a91a6, + limb2: 0xd494961e43abce1, limb3: 0x0 }, u384 { - limb0: 0x99fb003fcfeff749769dc07, - limb1: 0xe6b1fc55ac163fcc68abc484, - limb2: 0x8761888d58f24fc, + limb0: 0x584d9d9d587f9bb5f78e05a4, + limb1: 0x4d7eea2209f83f39a75d039a, + limb2: 0xc6ceb63f1a412b2, limb3: 0x0 }, u384 { - limb0: 0x2e8b74785f494ad34f9b0810, - limb1: 0x7aeb223d21195dfb72be4d48, - limb2: 0x268d14a3acfb7eee, + limb0: 0xdcab5b6214e439ca7b180152, + limb1: 0xcac0c70e0f79b1e76a016e94, + limb2: 0x1f13218676ebf04d, limb3: 0x0 }, u384 { - limb0: 0x88597f9b818cf0364e0569b5, - limb1: 0x21f26cc4b93abcef24ed68bf, - limb2: 0x1b7de8581aa27bd1, + limb0: 0x52a563f3a4ca4587da93befd, + limb1: 0x755c3647d8499d5f840c1922, + limb2: 0x9d75f7f3556ae0, limb3: 0x0 }, u384 { - limb0: 0xfed10596338bf18cd6f12acc, - limb1: 0x8b3feb05242a9f1e02c9624, - limb2: 0x1c2c829c56e1b22c, + limb0: 0xccce30a356d2e80db6158532, + limb1: 0xbc2567cbfc126d453a69687e, + limb2: 0x8da0f8573304458, limb3: 0x0 }, u384 { - limb0: 0xcff8dd7787cda0700ba2f316, - limb1: 0x3849fcf6cea106aae1a9040b, - limb2: 0x17fb901df5f17768, + limb0: 0x3798a0979a741f81d36b22a9, + limb1: 0x46786723233e543736f5fa6b, + limb2: 0xe7b0fe77a00f467, limb3: 0x0 }, u384 { - limb0: 0xb4201e8a0800bb55fdae542d, - limb1: 0x7274ef2a012ca1c7f7021cd6, - limb2: 0x2441c8a803e87091, + limb0: 0xf03dcf8e6c4e6ac40a577186, + limb1: 0xad6924584544368368878572, + limb2: 0x1fd5cdac42e0462e, limb3: 0x0 }, u384 { - limb0: 0x84b89c907b7ca3ed4a1c3403, - limb1: 0xc73e6580459b12df7c4b035b, - limb2: 0x2e2bf882477f4fee, + limb0: 0x6f09e6af2dfc3139a2db4f7c, + limb1: 0x3cbe1aeb54972483c331aa32, + limb2: 0x21c41cea47263dff, limb3: 0x0 }, u384 { - limb0: 0x61a2bac3b3847f15aa163444, - limb1: 0xaaf902b8b76e233c7ed5a62a, - limb2: 0x134582f1b6ad0ae4, + limb0: 0x40e11492761ec20d1b0b9f8b, + limb1: 0xffaf342fc71065a5d97172b1, + limb2: 0x269a8eb3957bdfe, limb3: 0x0 }, u384 { - limb0: 0x56a8bf28fa08be3b908bc54c, - limb1: 0x8c3ae6fbcaae8adacee60b3c, - limb2: 0x27ff10e561a9203f, + limb0: 0x87259013ed0a917c00fa2868, + limb1: 0xe768c8159397191cc1d312ef, + limb2: 0xc8a113903050ef6, limb3: 0x0 }, u384 { - limb0: 0x8ae03b3fbefc9300111fb479, - limb1: 0x6d10a28dcef0aa475670950b, - limb2: 0x219c837d15ba5006, + limb0: 0xc5c800cc07eb4a20eaa484b1, + limb1: 0x78b0d1da5bca80511e84f0a4, + limb2: 0x104a5555ce81e639, limb3: 0x0 }, u384 { - limb0: 0x9f158117a2dbf6ab4cc61d9c, - limb1: 0xde43b90cd7bd7e39ce665b55, - limb2: 0x2470e038afda36ea, + limb0: 0x50d3270621134b3d7d487c44, + limb1: 0x7fd9dd4d30c279c8f0f630fe, + limb2: 0x14ec21be50a2ab60, limb3: 0x0 }, u384 { - limb0: 0x56b9c2ebe64a20758839f1a2, - limb1: 0x4afbeeab273b9d9bcd39a5e0, - limb2: 0x209e972c3b267eb, + limb0: 0x8cd287da8c17bed3adb94183, + limb1: 0xe0ceef6be65fe946ddad9133, + limb2: 0xe2faee002a507b5, limb3: 0x0 }, u384 { - limb0: 0xd8c656b5c34c487ff61d3b01, - limb1: 0x1d15728d026fa6b9a06e9103, - limb2: 0x1a32d269d4cc31e8, + limb0: 0xf3b46995a05b19c7504881f6, + limb1: 0xb14f6332c94cf5cc16e79f97, + limb2: 0x20bad97607e8ac49, limb3: 0x0 }, u384 { - limb0: 0xd4356674f3574e0a21fcfe1f, - limb1: 0xfdb1474410dcb2779ed9197e, - limb2: 0x1ce1c0be97ddf88f, + limb0: 0x626e7fb58f063f94146d8fad, + limb1: 0xd8d02de70c760220531c4c24, + limb2: 0x13ff0de7311c784, limb3: 0x0 }, u384 { - limb0: 0xabd6ce550c3b3cc90915eb00, - limb1: 0x874a02f620bfec679d6efdde, - limb2: 0x2883743545fe87cc, + limb0: 0x73f4ae8b5eba88c26976595c, + limb1: 0x90c9faf10cfda1a2cf128d16, + limb2: 0x2ee11a64dfa9f270, limb3: 0x0 }, u384 { - limb0: 0x53f3cb5a1b75a8e8ea2a1402, - limb1: 0x59bbb066be45d57dcb0f31d9, - limb2: 0x2c03a89c39cef44f, + limb0: 0xeaeb8b00f170326a5340a60, + limb1: 0xa687b2e285e95a9b9c6d485e, + limb2: 0x28c8325ba043f6e5, limb3: 0x0 }, u384 { - limb0: 0x42f714a5e0905cac8aac3b56, - limb1: 0x3428906a3a1ebe37a04f3fb3, - limb2: 0x2737a2cbfc6501cc, + limb0: 0xba3378fc8b6e4be53451023b, + limb1: 0x31f3a13827e8d5b3d41a3af, + limb2: 0x5c3fa36d0e1c2ed, limb3: 0x0 }, u384 { - limb0: 0x967c95ebf417882fe01270ed, - limb1: 0x1bd647b47fdf8dd5ba29e9a9, - limb2: 0xf76f459ea18a736, + limb0: 0xb1ea2fd8efd486862fc3a4a9, + limb1: 0xa8d63c0c7f453a6111f1b03, + limb2: 0x1f945e6d41a45c48, limb3: 0x0 }, u384 { - limb0: 0xb5ff31d301bc22c500240d2a, - limb1: 0x58bb7598029a208d36a38c95, - limb2: 0x2d7dddbe927b0807, + limb0: 0xe3004252e74fc7f94f9b30c0, + limb1: 0x24666f077dcefaebbe0e1e03, + limb2: 0xe6708c7c398454c, limb3: 0x0 }, u384 { - limb0: 0x39a945fb54bb77b86ab76594, - limb1: 0x93f551cc1305a657b865d3a, - limb2: 0x20ed11dee080027f, + limb0: 0x2402df778015452d4dd9ae2, + limb1: 0xc9aec45175b1023737e8ae64, + limb2: 0x4e0a3b4647fc590, limb3: 0x0 }, u384 { - limb0: 0x73d2a26ca4a031c8f8cfdfde, - limb1: 0xc0caec47fd44400537865cd7, - limb2: 0xa750db0eafd67cd, + limb0: 0xc5f6cd8cb34744ac9fb32960, + limb1: 0x102a914c703aec89a8e3a0a, + limb2: 0x11bcd85ca588a61, limb3: 0x0 }, u384 { - limb0: 0x27fe9a276b0a46983aed6f94, - limb1: 0xa9bc903af766bb4fc94528fd, - limb2: 0xcd53030e3c44fc2, + limb0: 0xe97917d38886b65e359aaf7a, + limb1: 0x5edc44740f55f3f0e6f6329f, + limb2: 0x209033ebd3948426, limb3: 0x0 }, u384 { - limb0: 0x899e493ac57edc1188ff42af, - limb1: 0xa5d13e08a5c47a910eb32e23, - limb2: 0x2c1f46e6175fb6d, + limb0: 0x3c7ca28584c3c78b73a6f789, + limb1: 0xe77689efa61ab39ca8e5ffb8, + limb2: 0x6052edf893eb6c8, limb3: 0x0 }, u384 { - limb0: 0xb0c3f57d55e1f744e7461418, - limb1: 0xf106080656d43e026fca70ff, - limb2: 0x193d1df64d944669, + limb0: 0x337ded854299e150189e29f1, + limb1: 0x13f563067acd36fb5fa130fe, + limb2: 0xab51508f597e917, limb3: 0x0 }, u384 { - limb0: 0x93558d4bf03972b0d3f44eaf, - limb1: 0x5a5e8428b752c981bd8f711e, - limb2: 0x25b23fc48c726c35, + limb0: 0xb63530f566aa5f7cd151f0cc, + limb1: 0xb4e41abf7f6551c20fd7c783, + limb2: 0x2b66adff13439ca8, limb3: 0x0 }, u384 { - limb0: 0x532f4c3da9aa33e9b908fc9a, - limb1: 0x9ec9749893dd33dd0f6c5a09, - limb2: 0x5c49d174ce744ba, + limb0: 0xc4e7a261058daf44339190ae, + limb1: 0xf1a71d5943772871757443a7, + limb2: 0x220f885f7ef4f4e4, limb3: 0x0 }, u384 { - limb0: 0x5aefb888effdce6d88de4266, - limb1: 0x793e3b9360672bac826425de, - limb2: 0xf2c911ffc7ca1a3, + limb0: 0x226f1ba25019ea8aaff4286f, + limb1: 0x6fc6f14a08c4ad9552c9c0df, + limb2: 0x2384905a838a54c1, limb3: 0x0 }, u384 { - limb0: 0x291854717efaa00d709fa508, - limb1: 0xad35b195f27f50cc0fa79677, - limb2: 0xb054fa3601a561d, + limb0: 0xccaeb4d03bc866a6213d90b, + limb1: 0xbd31fa7132c0b34cd0da0af, + limb2: 0x25bc29d21742633b, limb3: 0x0 }, u384 { - limb0: 0x2a26f1b9c1dcb51ae4dad7ca, - limb1: 0xe6507c92328fcca87bbc2cc1, - limb2: 0x27fec057dc3054b2, + limb0: 0x53c8821ca4927fbce8ae5e3, + limb1: 0xcd89083b1e0881412ab6a029, + limb2: 0x2ae170f46c079289, limb3: 0x0 }, u384 { - limb0: 0xe0c7e02671c7976b06111842, - limb1: 0xcab3a1ea03d60dea75d0fee0, - limb2: 0x11f9e403104a603f, + limb0: 0xeca91dc2b1798a010684a143, + limb1: 0x9f5a12b2b831452646fdaa57, + limb2: 0x2109099414483602, limb3: 0x0 }, u384 { - limb0: 0xa1922aa087aae54c9faec243, - limb1: 0x695b50724020a9acfd550cea, - limb2: 0x11dd1c0106d42b2d, + limb0: 0x84aeddeb9d016be70142b0e2, + limb1: 0x3c7c3568b33d9ed9464e6ff1, + limb2: 0x1e63d0319dbbfe47, limb3: 0x0 }, u384 { - limb0: 0xadd77bf8e27689aab0aa2dab, - limb1: 0xfad54063734127be02a9664f, - limb2: 0x1a59a9e35177e56a, + limb0: 0x819015e6d7ac6f291692f078, + limb1: 0xaf9af387f09d683ca099246f, + limb2: 0x1c3774656bd59c2a, limb3: 0x0 }, u384 { - limb0: 0x4ffc8c42a5673ef6a943d4fb, - limb1: 0x760ed89493f68759437865ed, - limb2: 0xe5328c017ec6885, + limb0: 0xfe72be62bd48f61decfebc00, + limb1: 0x482393b0f0532361cb77533c, + limb2: 0x128f452ff7422060, limb3: 0x0 }, u384 { - limb0: 0x3433b8e340ac35e7d79756e8, - limb1: 0x39610e2b58e3189f1aabbc43, - limb2: 0x265a6048cec7fa1f, + limb0: 0xaf89fa2b72c2999ecbc47e82, + limb1: 0xe117d6c2c33b3c229fa8faa2, + limb2: 0x29d8a3976205c1bc, limb3: 0x0 }, u384 { - limb0: 0xe006fba1a91a3963b14b5f0b, - limb1: 0x678db2e6d08f39355659f4cb, - limb2: 0xcf26f2c36aabed7, + limb0: 0xafe57cbe007101d7ce78dafc, + limb1: 0x9af2202ae43ca91e4a9bf081, + limb2: 0x261d0d8752c8004a, limb3: 0x0 }, u384 { - limb0: 0xc20f438863015bd477bb29b, - limb1: 0xfd4e99ab714c70fe371b1ac6, - limb2: 0x3c16c6fce83092c, + limb0: 0x7fbfb093f529f4603ee71f42, + limb1: 0x7586e883d02655f787b5195b, + limb2: 0x301c3c5a2c53b0c0, limb3: 0x0 }, u384 { - limb0: 0x735be5bb0825995ee93b5c7e, - limb1: 0x6c64c973bd2523af19178d8b, - limb2: 0x2ff8281fb852baa, + limb0: 0x5f150450fe472bd0b75deaf0, + limb1: 0xa76d6535811887fbc06a2f9c, + limb2: 0x2e2d51aab8a5248e, limb3: 0x0 }, u384 { - limb0: 0x79727036c0d7adb546d88106, - limb1: 0x2eb16d97d381e67f6794910d, - limb2: 0x1650a39e4f88eaff, + limb0: 0xe7cba61228caf0d1951370e2, + limb1: 0x66a131a92503a33496deafa0, + limb2: 0x2dfb8c9e0550adec, limb3: 0x0 }, u384 { - limb0: 0x4e9439fa411e00f35656e328, - limb1: 0xcb63e0b24d56e400d5ca46be, - limb2: 0x24bea5241cfb3b80, + limb0: 0x580d6c99879f14c46cefc729, + limb1: 0x1b7290c825d9e12a6071b87e, + limb2: 0x8f2c06df7f14fc0, limb3: 0x0 }, u384 { - limb0: 0x6cbb21c9eb4b50d0c7949c44, - limb1: 0xe0b8924fbdf0ef95e00fb9a5, - limb2: 0x18b0cf53289474ce, + limb0: 0x4f3e8ca25512f6baa0fae9fa, + limb1: 0x720f306988c3c48a98677c62, + limb2: 0x2fc48aec0e41524c, limb3: 0x0 }, u384 { - limb0: 0x84a358b3d1a85fd3508a7ad2, - limb1: 0x9d3fc17cd9fb2b18a1b9b9ef, - limb2: 0x2b750dc92eabfb04, + limb0: 0x2c5411ed103a240c16f2470b, + limb1: 0xc117947b90e0fe6b869c7abc, + limb2: 0x28b79b1c47e7a847, limb3: 0x0 }, u384 { - limb0: 0x524160f6004ac44d72e48ed2, - limb1: 0x2d15c0757c0046725b018ab3, - limb2: 0x2242ae8206020826, + limb0: 0x3ce159438ac9201d8f43434d, + limb1: 0x5decf7bc421b6edf3d231081, + limb2: 0x9c3ed4df1ed61b7, limb3: 0x0 }, u384 { - limb0: 0x7685e80ca7bce4453c44c8da, - limb1: 0x594e23f71e8cc5775cb20f7c, - limb2: 0xa6d0adb6987ff0c, + limb0: 0x980ebb469bb64c1bab936d3, + limb1: 0x8daf4718997af18f3e38128b, + limb2: 0x20171aefd65d6f13, limb3: 0x0 }, u384 { - limb0: 0x3f712d102104f6e51d64e886, - limb1: 0xf965825d2aec2266c8934db9, - limb2: 0x241cb83088db2b6f, + limb0: 0x3e2a5be1946adc176c18ac43, + limb1: 0x3e21448269882825615ac62d, + limb2: 0x1470f5fcbcb0d5af, limb3: 0x0 }, u384 { - limb0: 0xf78b5f138f8457cec5adbc2c, - limb1: 0x30f76addb6abf17dfa241749, - limb2: 0x7f530d293491eea, + limb0: 0x9a1fcdd7c1e420888d1b6d82, + limb1: 0xa937c9f9ee33da1a5fb41c25, + limb2: 0x14e3b39ae54fc8c4, limb3: 0x0 }, u384 { - limb0: 0x49e59deea91473b8ee9704d6, - limb1: 0x89fba8fc191f291657f18157, - limb2: 0x2afa5229ef2bdc4d, + limb0: 0x6438f9bc19754f9500a06e06, + limb1: 0x66c16c128dd9df31c43728c3, + limb2: 0x64504e531615f82, limb3: 0x0 }, u384 { - limb0: 0x832109231569ec540882d47c, - limb1: 0x2a94531d1249a0c5585046e, - limb2: 0x2ef33d1d9558610, + limb0: 0xc0a6e78cf0c7335c7598ef04, + limb1: 0x3b8ec04cdf224f43c0c8daa5, + limb2: 0x6290b0aaab674a6, limb3: 0x0 }, u384 { - limb0: 0xa91cd3b57094521ceff087d2, - limb1: 0x3913cd003722234f6ef736f2, - limb2: 0x1482cb15ed2fc6d5, + limb0: 0x923ffcf6cc5887215c0c5f91, + limb1: 0x2245fa1c3a8d61562011390a, + limb2: 0x12cb568ff842cc6b, limb3: 0x0 }, u384 { - limb0: 0x74213ebb243d0f2b477cac2f, - limb1: 0x6a7e900e236b0f9474cd1d5e, - limb2: 0x1322a3cd49ec972f, + limb0: 0xc878f129868e3607b9b6cba0, + limb1: 0xc6c48eb30ebbb0f85a17c4a7, + limb2: 0x1a3e67d8273a07f4, limb3: 0x0 }, u384 { - limb0: 0xf97a2041a406d3a6c5aa0c4, - limb1: 0x772ed57c689dcf8675aa4fe8, - limb2: 0x2354e5041af27fec, + limb0: 0x61835fafd174142a3900932f, + limb1: 0x9052fe7c0967d6fbbf70e4d9, + limb2: 0x413df0c533041fd, limb3: 0x0 }, u384 { - limb0: 0xb980151326152cc1573a78d2, - limb1: 0xb628102d4e08d637815768cc, - limb2: 0x2a03dc04bea9cdf, + limb0: 0x704cf32e3410adf008aa260a, + limb1: 0x152d63898e63274aa969f8b0, + limb2: 0x21ef186065b097d5, limb3: 0x0 }, u384 { - limb0: 0xf53e3af19a8b57a34c22fef8, - limb1: 0xf67ac3d6463c5092b8c799c6, - limb2: 0x1bed6d63006e49f8, + limb0: 0x3cf198756fb3dbdaaed5ddfa, + limb1: 0xf8cb38ae20fa228bd07c0b20, + limb2: 0x25e9c9acbd187b19, limb3: 0x0 }, u384 { - limb0: 0xf201f05ac01ee6144cae5a2a, - limb1: 0xe1ca8c729583a7abd86579c, - limb2: 0x148cb72a8c5d98c6, + limb0: 0xb9175ef3935d457749fd8541, + limb1: 0xc42bc784a4e88894f2aa295f, + limb2: 0x1d821904ab5d8298, limb3: 0x0 }, u384 { - limb0: 0x3765cd1658a5b1d4f6a3e22c, - limb1: 0xfe8de0b9b437d3304a8dd42e, - limb2: 0x689cb586c19216f, + limb0: 0x758fd248b359df6c387bc5a5, + limb1: 0x832dc6fe5e31f8900cfcba1a, + limb2: 0x11f01e4dbf0c89bd, limb3: 0x0 }, u384 { - limb0: 0x72ab064e7209f2d0d44256fa, - limb1: 0x728cfbc3b29e1b0a2cb5dee0, - limb2: 0x2c06a2d9be3842e7, + limb0: 0xa81f5fd6232e7a74aefedf8e, + limb1: 0x7ae7c3e29cd1dc45d8697b87, + limb2: 0xc26a192142581b, limb3: 0x0 }, u384 { - limb0: 0xa883ed815f0ae04e5f113b7b, - limb1: 0x9a526813107f4b8633310a72, - limb2: 0x245455e58614c708, + limb0: 0x36c462d3cc865d5ceebdd039, + limb1: 0x26192dbbea23379350a9c33b, + limb2: 0x1168c07bbe8f2db6, limb3: 0x0 }, u384 { - limb0: 0x4d8c613c6c3735b849259ad0, - limb1: 0xf8960b36778cdbe8f604cab1, - limb2: 0x2d20fd08b1739ecb, + limb0: 0xd4c55339c653e1c9cff8e3d, + limb1: 0x8869ce7bc3571709e215aa0d, + limb2: 0x1348383be7d62b89, limb3: 0x0 }, u384 { - limb0: 0x337afb691e631f2bbe126070, - limb1: 0x63482e3d1d52be8ca2a6acb1, - limb2: 0x1683510be3d54d, + limb0: 0xac681b3847474d5d7dfd5170, + limb1: 0x47c839fd8eda7d749c92a969, + limb2: 0x2638b8b7d3b7dee0, limb3: 0x0 }, u384 { - limb0: 0xee00f1e1443e95c23a179faa, - limb1: 0xdd4bd1dc76612daf75a4b377, - limb2: 0xc0b1df9bc131203, + limb0: 0x9553882c2ba8e5c076f3af84, + limb1: 0x96727ce68aef2de5a9a78e7d, + limb2: 0x2a7d36bb2c6152b, limb3: 0x0 }, u384 { - limb0: 0x72c00ddc8725eb1dfaaa8279, - limb1: 0xa9ac6bade1fb7ca816908d5, - limb2: 0x1a9033d6843be882, + limb0: 0xdec1d1ca0ff8cf72da8b0749, + limb1: 0x37f23579e66838de58e08456, + limb2: 0xa5cc40864a64b50, limb3: 0x0 }, u384 { - limb0: 0xd30e0f03f1586b950cb4da5f, - limb1: 0xc1fed997b56bf1ede167c344, - limb2: 0x240a984ddaf384aa, + limb0: 0x3d0e58f3a7045feef33b1530, + limb1: 0xa70be9f6b3310e6e0465165, + limb2: 0x1c8f103cccd64ae9, limb3: 0x0 }, u384 { - limb0: 0x1d1f95e34a3352486a3c13ff, - limb1: 0x7f5b505131a1a9800de81f76, - limb2: 0x1ee0b9618816aece, + limb0: 0xcc0713d70582a16ca00932e9, + limb1: 0xb07de7cd9767c3f3e4b2b07, + limb2: 0x1478da05f9008c8c, limb3: 0x0 }, u384 { - limb0: 0x51c2bb6f9fbaec8b93c86e80, - limb1: 0x368cd5133aef064518b174d4, - limb2: 0x1dcb6044467a0fc, + limb0: 0xc5731167f5c36c24c9392bdf, + limb1: 0xcd8e525995ced978d0ff21d5, + limb2: 0x78dc28a631d8255, limb3: 0x0 }, u384 { - limb0: 0x8f85682d75394cc92284ce41, - limb1: 0x57e52b6361caf88f835e9916, - limb2: 0x26b8cf24c21664d, + limb0: 0x6055b64d1e81ac3fbbf2c899, + limb1: 0xd324e7f3acab43814fa39463, + limb2: 0x2b90799f79521302, limb3: 0x0 }, u384 { - limb0: 0xd9253731d7989d82994aed45, - limb1: 0x281d9d2fd40781187d558a9c, - limb2: 0x198b8c23f4759dfa, + limb0: 0xe98abf3870f5febd053660a4, + limb1: 0x34b40e13ed7a7402c17baaa6, + limb2: 0x2cb5592d8820e3dc, limb3: 0x0 }, u384 { - limb0: 0x1e5f4975a7c17606ab76cefd, - limb1: 0x8ee1a419fe357d395ac5ea59, - limb2: 0x6dc4053e5693c84, + limb0: 0xe2f623c8d7dc2fcf79471029, + limb1: 0x52151e4242d2e5fee67e98e, + limb2: 0x71db2936e15d5b6, limb3: 0x0 }, u384 { - limb0: 0xa2259a1244fa17cc3e3d3a62, - limb1: 0x1786f2aa11bb817eda95c76a, - limb2: 0x15a4972604d656c0, + limb0: 0x6d7acf97d101ec6869c848d8, + limb1: 0x11182b08e5f5a4d989cc686b, + limb2: 0x51a072f4b78431d, limb3: 0x0 }, u384 { - limb0: 0x218788b6f78361a2a7da12ea, - limb1: 0x25752a4080d4dd5fa49e0b0, - limb2: 0x2927fe548d7bb25a, + limb0: 0x19ab54d6a88136cb5f281fd2, + limb1: 0x7f266c52671d0305ddb623f3, + limb2: 0x1ed4713c913494c, limb3: 0x0 } ], }; let small_Q = E12DMulQuotient { w0: u384 { - limb0: 0xf54005479e163d65d8b3891, - limb1: 0x989c55dcb72219b4dd19d995, - limb2: 0x164dbc23260ed41e, + limb0: 0x19f162a174f902aa745402b4, + limb1: 0xfa2f8c97398c883fd8bf13d6, + limb2: 0x12e453358c930735, limb3: 0x0 }, w1: u384 { - limb0: 0x17e7b33fe5e1af04864c53c4, - limb1: 0x8a89f005dd2d6c030d011d84, - limb2: 0x163739d41e4e4201, + limb0: 0xd52476b75584ac34c15e2dce, + limb1: 0x2863016c3bac4516d1f7c13f, + limb2: 0x7586c0d4885bda, limb3: 0x0 }, w2: u384 { - limb0: 0x598a5a46c908947921fcdb7c, - limb1: 0x4c29eb390941028a3477a18f, - limb2: 0x13adf9fbf049b4a3, + limb0: 0x52f782bccd6bc667c0b92074, + limb1: 0xb58e14f0c4b5a49a13a75cf1, + limb2: 0x129f693d0cdc9d9e, limb3: 0x0 }, w3: u384 { - limb0: 0x99243dc5ed0c79cd548b3314, - limb1: 0x9083c5208a53b08ca046f5a8, - limb2: 0x21631cb9beb2f9ec, + limb0: 0x55e516869853b1a5f697bc55, + limb1: 0x88d6678cf336de5b33ab5805, + limb2: 0x2937efeb460dad2d, limb3: 0x0 }, w4: u384 { - limb0: 0xccccfecefd88be07570d88c2, - limb1: 0x34f9c74f8c5031c4b06cbf59, - limb2: 0x23f47de4a4817aba, + limb0: 0x7f83e56cb2632b97a4497cd4, + limb1: 0x9baffca2ee3254a2dc15ae4, + limb2: 0x19f0b0c5238adc93, limb3: 0x0 }, w5: u384 { - limb0: 0xe916ce880db5f8507fe6b75d, - limb1: 0x4586555a637f7f0c340d7250, - limb2: 0x3b96e06bfed3d6d, + limb0: 0x16f2f250c0e8080537fda1a, + limb1: 0xd3a4aec232febb92aab8b77d, + limb2: 0x26eb4fe81b4c2ac5, limb3: 0x0 }, w6: u384 { - limb0: 0x92ae8ae00dfd4d51c7ed6ad6, - limb1: 0x34d3218a47692d0e54b32a89, - limb2: 0x185036559e6a833f, + limb0: 0x26738e8aeda9ab114af14b06, + limb1: 0x1c7bcb5f6950acb927f30b33, + limb2: 0x2a35ee39543818b0, limb3: 0x0 }, w7: u384 { - limb0: 0xf5e8d20ea7a86117d13d153c, - limb1: 0x6fdc6165de0b637b152012a6, - limb2: 0x1b0e1d0a87d9196, + limb0: 0x1581e23de79769c3ae02c9b6, + limb1: 0xfca05008a0ffe1cded46d828, + limb2: 0x1b7d7b1ceba0887d, limb3: 0x0 }, w8: u384 { - limb0: 0xe63389a7199ec518c559f337, - limb1: 0x9d6ba563a7046b37f1be4e70, - limb2: 0x12b33ac65fb44d61, + limb0: 0xbd2e1c6374f1af5856fc2066, + limb1: 0xd50b99f313c652609b748a66, + limb2: 0x1ca64a11a891eda, limb3: 0x0 }, w9: u384 { - limb0: 0xb8788dac2f1ed976aa2ae70b, - limb1: 0x538a0a7f7e4003a3a9949ad8, - limb2: 0xf06aaa9974549ec, + limb0: 0x3ccfe50329f03eede7b5f72a, + limb1: 0xf9a81d5268dfe6618dd5ec60, + limb2: 0xad3bd6880464037, limb3: 0x0 }, w10: u384 { - limb0: 0x118b4a1a2c5118cf3a8934ec, - limb1: 0x100a83c506beb0859d45b388, - limb2: 0x1e8a1df7c80ab928, + limb0: 0xca68330400395466aea183f8, + limb1: 0x43263528cd2e97e774503c80, + limb2: 0x2415bb50a5cfa5af, limb3: 0x0 } }; @@ -17033,3622 +17023,3622 @@ mod pairing_tests { let pair0: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0xcd9370c73153d0677fbce56b, - limb1: 0x90c0ca803badef334822c048, - limb2: 0xf3d0776f1070e30008d6ccde, - limb3: 0x17eefde9f2783def27ba2f5a + limb0: 0x64fa1498be253777240f451, + limb1: 0x88a63dcab13d0b2b6e721c0c, + limb2: 0xcd7540ea8b97a3dff4c472f2, + limb3: 0xdf912dd2d2132561f1254fc }, y: u384 { - limb0: 0x6a8de754c9c971f5fe817b96, - limb1: 0xa050832430bd4d52a1dce4b4, - limb2: 0x7a5343103cb036c25d107f74, - limb3: 0x16abf02f9a8b63c50d41b79 + limb0: 0x578dd61059cb5e308f2fc043, + limb1: 0x7bc361f15e5eff6193174b0e, + limb2: 0x413795f579e8c25b6088e3e2, + limb3: 0x13d4594b9d48bb34348086df } }, q: G2Point { x0: u384 { - limb0: 0x79a78b32927d9be80500db7f, - limb1: 0x6c9eca19203ba2d9d2c018dc, - limb2: 0x6c7a611a896106ce80273651, - limb3: 0x473800aca6daa9aacfde177 + limb0: 0xa5c5bc6a8c5a2cab6c3d7358, + limb1: 0x59abe5107dd33205d08b7a9e, + limb2: 0x25cfc035c6fdf2a19ba96717, + limb3: 0x1104a1789606df11a08f0a29 }, x1: u384 { - limb0: 0x46498466ebf6ec794ea7108f, - limb1: 0xb9a601039a177f6b0cdde06d, - limb2: 0xc750c00d1c851c24371b4138, - limb3: 0xfbdadc1116b7d0fe6aebb7a + limb0: 0x85457a095ec14f017cb3cb42, + limb1: 0x5297113fac5b91ea781ca703, + limb2: 0x9eedd14a48feea1c9089e444, + limb3: 0xef2c14fc4b1513ecd823ee1 }, y0: u384 { - limb0: 0xdc32381a8a7764c90c09bf47, - limb1: 0xb484c7c166db40f1f696e279, - limb2: 0x6730cc6c515a04855c4bd234, - limb3: 0xc424405ccff09e06f5b3429 + limb0: 0xbc26365105e1cb48a5c0f391, + limb1: 0xee8b3f85ecc5cb367ed3d387, + limb2: 0x7757babcff170c53cc342eb9, + limb3: 0xbc9873acd81599ed19c1d7a }, y1: u384 { - limb0: 0x9d8e9593d59bf11b016e7565, - limb1: 0xa41e20b8dbd0520e422aab77, - limb2: 0xf0e91920e03648aecdbdfb18, - limb3: 0xb445414d16bdcf3a74f5787 + limb0: 0x423287eff28c08697da148f3, + limb1: 0xa021f73a659ec80df21c1e45, + limb2: 0x8812a939c5503b3065fa35c2, + limb3: 0x16575d1dff8aa9a3ce3e038c } } }; let pair1: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0xcd9370c73153d0677fbce56b, - limb1: 0x90c0ca803badef334822c048, - limb2: 0xf3d0776f1070e30008d6ccde, - limb3: 0x17eefde9f2783def27ba2f5a + limb0: 0x64fa1498be253777240f451, + limb1: 0x88a63dcab13d0b2b6e721c0c, + limb2: 0xcd7540ea8b97a3dff4c472f2, + limb3: 0xdf912dd2d2132561f1254fc }, y: u384 { - limb0: 0x46c618aaf0358e0a017e2f15, - limb1: 0xc6e04f7cc5f3a8d17ccf1b4a, - limb2: 0xc8f869c727c714c29674934a, - limb3: 0x189652e73fd7305dfa478c3c + limb0: 0x59c629ef6033a1cf70cfea68, + limb1: 0xeb6d70af9851f6c28b94b4f0, + limb2: 0x21416e1ea8e892992fc2edc, + limb3: 0x62cb89e9c372b66169b20d7 } }, q: G2Point { x0: u384 { - limb0: 0x79a78b32927d9be80500db7f, - limb1: 0x6c9eca19203ba2d9d2c018dc, - limb2: 0x6c7a611a896106ce80273651, - limb3: 0x473800aca6daa9aacfde177 + limb0: 0xa5c5bc6a8c5a2cab6c3d7358, + limb1: 0x59abe5107dd33205d08b7a9e, + limb2: 0x25cfc035c6fdf2a19ba96717, + limb3: 0x1104a1789606df11a08f0a29 }, x1: u384 { - limb0: 0x46498466ebf6ec794ea7108f, - limb1: 0xb9a601039a177f6b0cdde06d, - limb2: 0xc750c00d1c851c24371b4138, - limb3: 0xfbdadc1116b7d0fe6aebb7a + limb0: 0x85457a095ec14f017cb3cb42, + limb1: 0x5297113fac5b91ea781ca703, + limb2: 0x9eedd14a48feea1c9089e444, + limb3: 0xef2c14fc4b1513ecd823ee1 }, y0: u384 { - limb0: 0xdc32381a8a7764c90c09bf47, - limb1: 0xb484c7c166db40f1f696e279, - limb2: 0x6730cc6c515a04855c4bd234, - limb3: 0xc424405ccff09e06f5b3429 + limb0: 0xbc26365105e1cb48a5c0f391, + limb1: 0xee8b3f85ecc5cb367ed3d387, + limb2: 0x7757babcff170c53cc342eb9, + limb3: 0xbc9873acd81599ed19c1d7a }, y1: u384 { - limb0: 0x9d8e9593d59bf11b016e7565, - limb1: 0xa41e20b8dbd0520e422aab77, - limb2: 0xf0e91920e03648aecdbdfb18, - limb3: 0xb445414d16bdcf3a74f5787 + limb0: 0x423287eff28c08697da148f3, + limb1: 0xa021f73a659ec80df21c1e45, + limb2: 0x8812a939c5503b3065fa35c2, + limb3: 0x16575d1dff8aa9a3ce3e038c } } }; let lines = array![ G2Line { r0a0: u384 { - limb0: 0x5e59d659c52540d296668189, - limb1: 0xcb659dfc7825a48b80389f80, - limb2: 0xadef98f352b779573eb961fa, - limb3: 0xbc1b9e88642d816d7590e3e + limb0: 0x63f11b6fcc59d20b6ab44425, + limb1: 0x176fc2743b2268200ad34081, + limb2: 0xeb0ef582a350c728e2a8e784, + limb3: 0x165b928d6db94277cb240eee }, r0a1: u384 { - limb0: 0x750de3bbf9cbf7ea5c1ce44b, - limb1: 0xdb5ace94d63f71aaf4d260db, - limb2: 0x7a249a81b5b2f7f34060ea43, - limb3: 0xf5e3b09e03106d86a497ce6 + limb0: 0x894bc5354858e25f94da93f4, + limb1: 0x4ff0c721927a993b6bdf9259, + limb2: 0xa2cb14c68bf0317d39eb8907, + limb3: 0xf65bd575a2b6e7cb60d79dd }, r1a0: u384 { - limb0: 0x49f87bf0ed6b0b7daa670c04, - limb1: 0xa2f1a47b68ceb940591a7f53, - limb2: 0xa6da59be3f9b1774e2fb7bb5, - limb3: 0x1141abdbf2cedd7cc3206587 + limb0: 0xc0fd4091fc4b10a379767a4a, + limb1: 0xf38f6051cf66213bae06f928, + limb2: 0x56fb03bd68263e7bc5493996, + limb3: 0xc5a52838694118bac7a216b }, r1a1: u384 { - limb0: 0x43a9934ea5e060baec09ed64, - limb1: 0x2d869b903244223826caa224, - limb2: 0xe9db2b0e4786e8ad188e836d, - limb3: 0x875781c4f5bd5cb30d6f096 + limb0: 0x11fddbfc207e063aa5268887, + limb1: 0x9f256a14e5277bb09fca92bd, + limb2: 0x6b8a8a05c9fa8a139eb81d32, + limb3: 0xf7ab0c73e6fd7da34a5d91 } }, G2Line { r0a0: u384 { - limb0: 0x8de2058ce6523c16cd47364a, - limb1: 0xba201889789e1550e81e1576, - limb2: 0x3b3b996831e2e7ff8b678b27, - limb3: 0x16ea435d779ebba0b82b7776 + limb0: 0x6a7055fd5134e0c5d74a4aa1, + limb1: 0x817fcb2084dfe60b7192ecd1, + limb2: 0x6f0323a1e21158ae6fa42b3b, + limb3: 0x1799b1e23d02b7b7979a8c88 }, r0a1: u384 { - limb0: 0x21f7fb343fdd22173340a7b7, - limb1: 0x5c4ecda0a98a6b1264f2b062, - limb2: 0x7b5156ec3f5a3c7eb3d6bf49, - limb3: 0x15ae006143a3b33480a9cae7 + limb0: 0xf4a79ced7089310d5bd09142, + limb1: 0xe7b25aa503a606a7cb9b0f83, + limb2: 0x5a428a506274beba45558971, + limb3: 0x8e6d227a55fcffc55db5535 }, r1a0: u384 { - limb0: 0xfdbc9085588f37eea2980e00, - limb1: 0x60e2a02f0d2ada662ec38e3d, - limb2: 0xfd8fe1696de1bfcfde4bbe48, - limb3: 0x47da3f90cf3688237f44cfe + limb0: 0xd7de629b43bc8903091abeaa, + limb1: 0x7ecdd060c4a14c8ef96242d4, + limb2: 0x6a0c325ff2341e211feadaf2, + limb3: 0x194b8edf3e1e3b2a249dfdbb }, r1a1: u384 { - limb0: 0x601dd4aacdeac1caa70db645, - limb1: 0xb19bca729a29145fb1a182f, - limb2: 0xdbaa1fb7c4ae52bbee49dc99, - limb3: 0xd40235fc9975774ab627bd7 + limb0: 0x596e079159d9e79f8909f3eb, + limb1: 0xdfa962fc87d74820250cdf0d, + limb2: 0x9c07d7b28f0d0119588998f9, + limb3: 0x648aca7012e9a6190ebbde6 } }, G2Line { r0a0: u384 { - limb0: 0x5e59d659c52540d296668189, - limb1: 0xcb659dfc7825a48b80389f80, - limb2: 0xadef98f352b779573eb961fa, - limb3: 0xbc1b9e88642d816d7590e3e + limb0: 0x63f11b6fcc59d20b6ab44425, + limb1: 0x176fc2743b2268200ad34081, + limb2: 0xeb0ef582a350c728e2a8e784, + limb3: 0x165b928d6db94277cb240eee }, r0a1: u384 { - limb0: 0x750de3bbf9cbf7ea5c1ce44b, - limb1: 0xdb5ace94d63f71aaf4d260db, - limb2: 0x7a249a81b5b2f7f34060ea43, - limb3: 0xf5e3b09e03106d86a497ce6 + limb0: 0x894bc5354858e25f94da93f4, + limb1: 0x4ff0c721927a993b6bdf9259, + limb2: 0xa2cb14c68bf0317d39eb8907, + limb3: 0xf65bd575a2b6e7cb60d79dd }, r1a0: u384 { - limb0: 0x49f87bf0ed6b0b7daa670c04, - limb1: 0xa2f1a47b68ceb940591a7f53, - limb2: 0xa6da59be3f9b1774e2fb7bb5, - limb3: 0x1141abdbf2cedd7cc3206587 + limb0: 0xc0fd4091fc4b10a379767a4a, + limb1: 0xf38f6051cf66213bae06f928, + limb2: 0x56fb03bd68263e7bc5493996, + limb3: 0xc5a52838694118bac7a216b }, r1a1: u384 { - limb0: 0x43a9934ea5e060baec09ed64, - limb1: 0x2d869b903244223826caa224, - limb2: 0xe9db2b0e4786e8ad188e836d, - limb3: 0x875781c4f5bd5cb30d6f096 + limb0: 0x11fddbfc207e063aa5268887, + limb1: 0x9f256a14e5277bb09fca92bd, + limb2: 0x6b8a8a05c9fa8a139eb81d32, + limb3: 0xf7ab0c73e6fd7da34a5d91 } }, G2Line { r0a0: u384 { - limb0: 0x8de2058ce6523c16cd47364a, - limb1: 0xba201889789e1550e81e1576, - limb2: 0x3b3b996831e2e7ff8b678b27, - limb3: 0x16ea435d779ebba0b82b7776 + limb0: 0x6a7055fd5134e0c5d74a4aa1, + limb1: 0x817fcb2084dfe60b7192ecd1, + limb2: 0x6f0323a1e21158ae6fa42b3b, + limb3: 0x1799b1e23d02b7b7979a8c88 }, r0a1: u384 { - limb0: 0x21f7fb343fdd22173340a7b7, - limb1: 0x5c4ecda0a98a6b1264f2b062, - limb2: 0x7b5156ec3f5a3c7eb3d6bf49, - limb3: 0x15ae006143a3b33480a9cae7 + limb0: 0xf4a79ced7089310d5bd09142, + limb1: 0xe7b25aa503a606a7cb9b0f83, + limb2: 0x5a428a506274beba45558971, + limb3: 0x8e6d227a55fcffc55db5535 }, r1a0: u384 { - limb0: 0xfdbc9085588f37eea2980e00, - limb1: 0x60e2a02f0d2ada662ec38e3d, - limb2: 0xfd8fe1696de1bfcfde4bbe48, - limb3: 0x47da3f90cf3688237f44cfe + limb0: 0xd7de629b43bc8903091abeaa, + limb1: 0x7ecdd060c4a14c8ef96242d4, + limb2: 0x6a0c325ff2341e211feadaf2, + limb3: 0x194b8edf3e1e3b2a249dfdbb }, r1a1: u384 { - limb0: 0x601dd4aacdeac1caa70db645, - limb1: 0xb19bca729a29145fb1a182f, - limb2: 0xdbaa1fb7c4ae52bbee49dc99, - limb3: 0xd40235fc9975774ab627bd7 + limb0: 0x596e079159d9e79f8909f3eb, + limb1: 0xdfa962fc87d74820250cdf0d, + limb2: 0x9c07d7b28f0d0119588998f9, + limb3: 0x648aca7012e9a6190ebbde6 } }, G2Line { r0a0: u384 { - limb0: 0x76b01f7163cffabbadfcf0bd, - limb1: 0xfdcfc586b5d09d4e84704223, - limb2: 0xf2faaefac9886d8069af97bf, - limb3: 0x22467e6ac8ef8d64fe2baf4 + limb0: 0xd1ba0838edd3bab14989cfaa, + limb1: 0x1f5c64876628267cb50c10e, + limb2: 0xf9b178f1b0fad3466aa0300b, + limb3: 0x1580ddd31b2c6293a526ed10 }, r0a1: u384 { - limb0: 0x5c4f48fcfe9a892115cb2fb0, - limb1: 0x9d452f2312ee5aa94f0e4df, - limb2: 0xd33ee53abee21b764ae1ff48, - limb3: 0x819fdb6f34e767b14439afa + limb0: 0x15f374638bff542fc5f04a9a, + limb1: 0xe0b25cebbdaeacb84508b3a6, + limb2: 0xd61ecb173ba035329196a652, + limb3: 0xf6e5736d7e544edf2163602 }, r1a0: u384 { - limb0: 0x8a7189f4faac19700152fd58, - limb1: 0x265bf440ab75f8ab5d2b3fb8, - limb2: 0xff2ca55d7ccb62cc1093d993, - limb3: 0x11e3bbc4b0430fc98b95cfb5 + limb0: 0xa7c83156673c29dd12271fb8, + limb1: 0xab0c78a6f445c843e9c9cb4b, + limb2: 0x57a7d7da7ff164785cc8ee25, + limb3: 0xd16a32b9c3b27cd1288304f }, r1a1: u384 { - limb0: 0xd831dd08db8d589d637bf497, - limb1: 0xc33858ee9d2eecbee0110e07, - limb2: 0xe52e27b0b4b6b47617952dca, - limb3: 0x14cd09fc538f0d7f8b73b697 + limb0: 0x34930635e93ce3ee8979a748, + limb1: 0x1768d88ede9d0c6aea18c708, + limb2: 0x605ac20eb3880ce8e6c06dfd, + limb3: 0x183e4a97f766f9861d8a2710 } }, G2Line { r0a0: u384 { - limb0: 0x76b01f7163cffabbadfcf0bd, - limb1: 0xfdcfc586b5d09d4e84704223, - limb2: 0xf2faaefac9886d8069af97bf, - limb3: 0x22467e6ac8ef8d64fe2baf4 + limb0: 0xd1ba0838edd3bab14989cfaa, + limb1: 0x1f5c64876628267cb50c10e, + limb2: 0xf9b178f1b0fad3466aa0300b, + limb3: 0x1580ddd31b2c6293a526ed10 }, r0a1: u384 { - limb0: 0x5c4f48fcfe9a892115cb2fb0, - limb1: 0x9d452f2312ee5aa94f0e4df, - limb2: 0xd33ee53abee21b764ae1ff48, - limb3: 0x819fdb6f34e767b14439afa + limb0: 0x15f374638bff542fc5f04a9a, + limb1: 0xe0b25cebbdaeacb84508b3a6, + limb2: 0xd61ecb173ba035329196a652, + limb3: 0xf6e5736d7e544edf2163602 }, r1a0: u384 { - limb0: 0x8a7189f4faac19700152fd58, - limb1: 0x265bf440ab75f8ab5d2b3fb8, - limb2: 0xff2ca55d7ccb62cc1093d993, - limb3: 0x11e3bbc4b0430fc98b95cfb5 + limb0: 0xa7c83156673c29dd12271fb8, + limb1: 0xab0c78a6f445c843e9c9cb4b, + limb2: 0x57a7d7da7ff164785cc8ee25, + limb3: 0xd16a32b9c3b27cd1288304f }, r1a1: u384 { - limb0: 0xd831dd08db8d589d637bf497, - limb1: 0xc33858ee9d2eecbee0110e07, - limb2: 0xe52e27b0b4b6b47617952dca, - limb3: 0x14cd09fc538f0d7f8b73b697 + limb0: 0x34930635e93ce3ee8979a748, + limb1: 0x1768d88ede9d0c6aea18c708, + limb2: 0x605ac20eb3880ce8e6c06dfd, + limb3: 0x183e4a97f766f9861d8a2710 } }, G2Line { r0a0: u384 { - limb0: 0xbc6035546372774ab5006934, - limb1: 0x16788f9643391b7fdaf3e9b5, - limb2: 0x1c86acdba5550643864ac3f4, - limb3: 0x1c27d277b0c2eb47b7e5960 + limb0: 0x3528ae7cc8a3e6af0c33bd64, + limb1: 0x94ef9df33c84d4a90a581908, + limb2: 0x35e038c9d0aabd4d814dfd3e, + limb3: 0x9de5a0891bb8115d363df42 }, r0a1: u384 { - limb0: 0x18b566338f1586cbc04de204, - limb1: 0x6ae11fe380c681ca1a8b5d2f, - limb2: 0x4e17f5121a4be05889a2829a, - limb3: 0x128ffc4eff94c0dce3e5b8c4 + limb0: 0x277ca596af5141faa328f596, + limb1: 0x84821cbccce54ef22f3df32b, + limb2: 0x6941e00c7ac61da6c6ff2567, + limb3: 0xdc62ea1f523c76890ecbce3 }, r1a0: u384 { - limb0: 0x30f55c5476c9b58af5d2c05, - limb1: 0x9d1bf415d6f15c0d122b49fa, - limb2: 0xb08c333f9cb62423b106f2c1, - limb3: 0x6cf04cb1d8e9d9377d34009 + limb0: 0x158102e7917bfe4df69dbcf5, + limb1: 0xf4e1feb1280690628ea6e15, + limb2: 0x3d7112e71381635bdd04a647, + limb3: 0x5bedaa10a11effe16ef20c9 }, r1a1: u384 { - limb0: 0x925f5d59352d77d0168998bf, - limb1: 0x34c60e04834cf459099028e4, - limb2: 0xc9d11f032afcb87753a59498, - limb3: 0x943cc3d92098252e93d0116 + limb0: 0xb27f1c3468ba3c406887f9de, + limb1: 0xbae79d13c3505793afd0de29, + limb2: 0x727f83e12c3504ba5ee82f2b, + limb3: 0x16b489aaaf881ab409fcb6a6 } }, G2Line { r0a0: u384 { - limb0: 0x59c2fa7152383fa56154ade, - limb1: 0x12983cc3253ec44612077f49, - limb2: 0x9f455c2a8df1ac617d557993, - limb3: 0xc23242da041743ff0d8a92c + limb0: 0xc9abe16f9048bdc0f3f57d9a, + limb1: 0xeb4ef176b91b41a2fcbfadf5, + limb2: 0xc311d91f42eca11b7088ba70, + limb3: 0xb7cd819e0f8c269d922868c }, r0a1: u384 { - limb0: 0xb3845f06fefce494dd8186a3, - limb1: 0x54d581db97eb3514da957977, - limb2: 0xd9ecee58c558a1aa35fc8d38, - limb3: 0xbe2e1ab846ddde9825dd238 + limb0: 0x94f864e4ce96948fb4947161, + limb1: 0x2927ff17d79600de0c4a1276, + limb2: 0x674024a685e61a6b9474063a, + limb3: 0x693c5cbf641239e46897e81 }, r1a0: u384 { - limb0: 0xe607221db88fb1fa6dbac198, - limb1: 0xcf94ce5fed6e55265447281e, - limb2: 0xae0b7f01e0f2d17af27fd4a5, - limb3: 0x167172afe198725dbd70e74d + limb0: 0x5637f732c83816a6f8faaa8c, + limb1: 0x5b4adee5ae97ba677d974ff3, + limb2: 0x9af48a8b8a864a48197d22f6, + limb3: 0x7dac086a9d20f5c4303d899 }, r1a1: u384 { - limb0: 0x710c83b022d88b1a43372099, - limb1: 0x3182c69b41f4bd7be728718c, - limb2: 0xf6e74b14690414f90324b99, - limb3: 0xb7a338fea27d67c805d219e + limb0: 0xdfc97e7aa9693a66cf9a209f, + limb1: 0x501fb1744a96599cb0024faa, + limb2: 0x6b2d86da59c8a47f994ce9a4, + limb3: 0x102d01fb9d550bd6574605c8 } }, G2Line { r0a0: u384 { - limb0: 0xbc6035546372774ab5006934, - limb1: 0x16788f9643391b7fdaf3e9b5, - limb2: 0x1c86acdba5550643864ac3f4, - limb3: 0x1c27d277b0c2eb47b7e5960 + limb0: 0x3528ae7cc8a3e6af0c33bd64, + limb1: 0x94ef9df33c84d4a90a581908, + limb2: 0x35e038c9d0aabd4d814dfd3e, + limb3: 0x9de5a0891bb8115d363df42 }, r0a1: u384 { - limb0: 0x18b566338f1586cbc04de204, - limb1: 0x6ae11fe380c681ca1a8b5d2f, - limb2: 0x4e17f5121a4be05889a2829a, - limb3: 0x128ffc4eff94c0dce3e5b8c4 + limb0: 0x277ca596af5141faa328f596, + limb1: 0x84821cbccce54ef22f3df32b, + limb2: 0x6941e00c7ac61da6c6ff2567, + limb3: 0xdc62ea1f523c76890ecbce3 }, r1a0: u384 { - limb0: 0x30f55c5476c9b58af5d2c05, - limb1: 0x9d1bf415d6f15c0d122b49fa, - limb2: 0xb08c333f9cb62423b106f2c1, - limb3: 0x6cf04cb1d8e9d9377d34009 + limb0: 0x158102e7917bfe4df69dbcf5, + limb1: 0xf4e1feb1280690628ea6e15, + limb2: 0x3d7112e71381635bdd04a647, + limb3: 0x5bedaa10a11effe16ef20c9 }, r1a1: u384 { - limb0: 0x925f5d59352d77d0168998bf, - limb1: 0x34c60e04834cf459099028e4, - limb2: 0xc9d11f032afcb87753a59498, - limb3: 0x943cc3d92098252e93d0116 + limb0: 0xb27f1c3468ba3c406887f9de, + limb1: 0xbae79d13c3505793afd0de29, + limb2: 0x727f83e12c3504ba5ee82f2b, + limb3: 0x16b489aaaf881ab409fcb6a6 } }, G2Line { r0a0: u384 { - limb0: 0x59c2fa7152383fa56154ade, - limb1: 0x12983cc3253ec44612077f49, - limb2: 0x9f455c2a8df1ac617d557993, - limb3: 0xc23242da041743ff0d8a92c + limb0: 0xc9abe16f9048bdc0f3f57d9a, + limb1: 0xeb4ef176b91b41a2fcbfadf5, + limb2: 0xc311d91f42eca11b7088ba70, + limb3: 0xb7cd819e0f8c269d922868c }, r0a1: u384 { - limb0: 0xb3845f06fefce494dd8186a3, - limb1: 0x54d581db97eb3514da957977, - limb2: 0xd9ecee58c558a1aa35fc8d38, - limb3: 0xbe2e1ab846ddde9825dd238 + limb0: 0x94f864e4ce96948fb4947161, + limb1: 0x2927ff17d79600de0c4a1276, + limb2: 0x674024a685e61a6b9474063a, + limb3: 0x693c5cbf641239e46897e81 }, r1a0: u384 { - limb0: 0xe607221db88fb1fa6dbac198, - limb1: 0xcf94ce5fed6e55265447281e, - limb2: 0xae0b7f01e0f2d17af27fd4a5, - limb3: 0x167172afe198725dbd70e74d + limb0: 0x5637f732c83816a6f8faaa8c, + limb1: 0x5b4adee5ae97ba677d974ff3, + limb2: 0x9af48a8b8a864a48197d22f6, + limb3: 0x7dac086a9d20f5c4303d899 }, r1a1: u384 { - limb0: 0x710c83b022d88b1a43372099, - limb1: 0x3182c69b41f4bd7be728718c, - limb2: 0xf6e74b14690414f90324b99, - limb3: 0xb7a338fea27d67c805d219e + limb0: 0xdfc97e7aa9693a66cf9a209f, + limb1: 0x501fb1744a96599cb0024faa, + limb2: 0x6b2d86da59c8a47f994ce9a4, + limb3: 0x102d01fb9d550bd6574605c8 } }, G2Line { r0a0: u384 { - limb0: 0xda8efeb5f63b601b9d784bfe, - limb1: 0x849b087dac23252c3d893629, - limb2: 0x9274a5dc8ef557df9f05e831, - limb3: 0x399ab490b046272e82513b5 + limb0: 0x4ef992992cbac625d4bd6c21, + limb1: 0x8360be23a505d088356e6e97, + limb2: 0x43a5e08490380e9a7d854ddd, + limb3: 0x4b27f456760e27ba8d2a87b }, r0a1: u384 { - limb0: 0xfa98f0ed76b61eafc2ed1f34, - limb1: 0x3bb7c822a6ffe1272ce18ac4, - limb2: 0x29afb1f496f1754da1ea3339, - limb3: 0xe273dc3556aae06e7a93f52 + limb0: 0xed59d84e7d8f03cd29cea06c, + limb1: 0xb2fd33ba46e894324cc9c96, + limb2: 0x424fb92026c6d5f739afa66a, + limb3: 0x17a17cae02787b6e697cb6a6 }, r1a0: u384 { - limb0: 0xc1b4c55d2180462e563a95d8, - limb1: 0x67b26bda79cd2bdfeb10b932, - limb2: 0x66238e90108b213870dcfd4c, - limb3: 0xe0ba83ff38d82a9b349dfb + limb0: 0xcb1739a5c831b3c8198473be, + limb1: 0xa06bfb297a23e02272400337, + limb2: 0x13263e754d0236a640d9ea44, + limb3: 0xf34edbadc525c13a72a7ec7 }, r1a1: u384 { - limb0: 0x5a8faf83fe946bd27fdaff34, - limb1: 0xcb0c9fac4f074be588fd9987, - limb2: 0x8723277021aef8fe50a3c5a2, - limb3: 0x3b59c119cdc29a06d426022 + limb0: 0x9a61c1f5f63716fdeea3b3da, + limb1: 0x3142814b4381fed60592a087, + limb2: 0x76b31e8daaa32d4005632294, + limb3: 0x15666a8ac24f3393d76d7ce5 } }, G2Line { r0a0: u384 { - limb0: 0xda8efeb5f63b601b9d784bfe, - limb1: 0x849b087dac23252c3d893629, - limb2: 0x9274a5dc8ef557df9f05e831, - limb3: 0x399ab490b046272e82513b5 + limb0: 0x4ef992992cbac625d4bd6c21, + limb1: 0x8360be23a505d088356e6e97, + limb2: 0x43a5e08490380e9a7d854ddd, + limb3: 0x4b27f456760e27ba8d2a87b }, r0a1: u384 { - limb0: 0xfa98f0ed76b61eafc2ed1f34, - limb1: 0x3bb7c822a6ffe1272ce18ac4, - limb2: 0x29afb1f496f1754da1ea3339, - limb3: 0xe273dc3556aae06e7a93f52 + limb0: 0xed59d84e7d8f03cd29cea06c, + limb1: 0xb2fd33ba46e894324cc9c96, + limb2: 0x424fb92026c6d5f739afa66a, + limb3: 0x17a17cae02787b6e697cb6a6 }, r1a0: u384 { - limb0: 0xc1b4c55d2180462e563a95d8, - limb1: 0x67b26bda79cd2bdfeb10b932, - limb2: 0x66238e90108b213870dcfd4c, - limb3: 0xe0ba83ff38d82a9b349dfb + limb0: 0xcb1739a5c831b3c8198473be, + limb1: 0xa06bfb297a23e02272400337, + limb2: 0x13263e754d0236a640d9ea44, + limb3: 0xf34edbadc525c13a72a7ec7 }, r1a1: u384 { - limb0: 0x5a8faf83fe946bd27fdaff34, - limb1: 0xcb0c9fac4f074be588fd9987, - limb2: 0x8723277021aef8fe50a3c5a2, - limb3: 0x3b59c119cdc29a06d426022 + limb0: 0x9a61c1f5f63716fdeea3b3da, + limb1: 0x3142814b4381fed60592a087, + limb2: 0x76b31e8daaa32d4005632294, + limb3: 0x15666a8ac24f3393d76d7ce5 } }, G2Line { r0a0: u384 { - limb0: 0xca706286b6cba2f35fcfee53, - limb1: 0x1f528c6c30625e44d3e749d0, - limb2: 0x6b5ec21952fcfefb569119f2, - limb3: 0x17c1bc49931618f5dd405a4e + limb0: 0x997b69be2e9d608db8af48c5, + limb1: 0x43bb572262f6d1ede595409d, + limb2: 0xa5a5229da076271d8edececd, + limb3: 0x757dcd7bbbda8e2f9b8f40a }, r0a1: u384 { - limb0: 0xc620d83b1a4e1fd5bb229d4, - limb1: 0x4858c3b602dba8e0802ce65e, - limb2: 0xd3bdb6e1ba49f78999fb3abf, - limb3: 0x91c8ee423ec640e88342310 + limb0: 0x9ff11ef548b17d5901e78d39, + limb1: 0x12c22ab33074fa7ae01bafa8, + limb2: 0x4eb04902081e658d3fdcb5d9, + limb3: 0x60b1b3d5c98ef1d6de72345 }, r1a0: u384 { - limb0: 0x5235cfa35cabacda8c373268, - limb1: 0x7526508c75a15b020362bf40, - limb2: 0xe750340b270a3732bc0b20da, - limb3: 0xf234c74446891760b8a082e + limb0: 0x36d4acde47da118a3e2d1b47, + limb1: 0xdbdcd10817defea58eb3c65c, + limb2: 0xbd7896875e745689e4cc0a06, + limb3: 0xfd76880657997486ef325ce }, r1a1: u384 { - limb0: 0xe9f0e7bd1c8dcee5d18697b3, - limb1: 0x8c60bbfed5f26c3e55bf77e, - limb2: 0x742594bbe8dc3e64ed0e651e, - limb3: 0x15a88daca5e64747e65376fb + limb0: 0x343b0f99c9a314134092da69, + limb1: 0xc5fa2281bd6d06d10703d7fc, + limb2: 0x676c9be7d00115ad9e53cb70, + limb3: 0xdf771abb52e900a8be02cdf } }, G2Line { r0a0: u384 { - limb0: 0xca706286b6cba2f35fcfee53, - limb1: 0x1f528c6c30625e44d3e749d0, - limb2: 0x6b5ec21952fcfefb569119f2, - limb3: 0x17c1bc49931618f5dd405a4e + limb0: 0x997b69be2e9d608db8af48c5, + limb1: 0x43bb572262f6d1ede595409d, + limb2: 0xa5a5229da076271d8edececd, + limb3: 0x757dcd7bbbda8e2f9b8f40a }, r0a1: u384 { - limb0: 0xc620d83b1a4e1fd5bb229d4, - limb1: 0x4858c3b602dba8e0802ce65e, - limb2: 0xd3bdb6e1ba49f78999fb3abf, - limb3: 0x91c8ee423ec640e88342310 + limb0: 0x9ff11ef548b17d5901e78d39, + limb1: 0x12c22ab33074fa7ae01bafa8, + limb2: 0x4eb04902081e658d3fdcb5d9, + limb3: 0x60b1b3d5c98ef1d6de72345 }, r1a0: u384 { - limb0: 0x5235cfa35cabacda8c373268, - limb1: 0x7526508c75a15b020362bf40, - limb2: 0xe750340b270a3732bc0b20da, - limb3: 0xf234c74446891760b8a082e + limb0: 0x36d4acde47da118a3e2d1b47, + limb1: 0xdbdcd10817defea58eb3c65c, + limb2: 0xbd7896875e745689e4cc0a06, + limb3: 0xfd76880657997486ef325ce }, r1a1: u384 { - limb0: 0xe9f0e7bd1c8dcee5d18697b3, - limb1: 0x8c60bbfed5f26c3e55bf77e, - limb2: 0x742594bbe8dc3e64ed0e651e, - limb3: 0x15a88daca5e64747e65376fb + limb0: 0x343b0f99c9a314134092da69, + limb1: 0xc5fa2281bd6d06d10703d7fc, + limb2: 0x676c9be7d00115ad9e53cb70, + limb3: 0xdf771abb52e900a8be02cdf } }, G2Line { r0a0: u384 { - limb0: 0x8b9bdff5a57df24a09766d09, - limb1: 0x90a6cb11868e96830e5eda17, - limb2: 0x9182d4f377cde8b06165f1fe, - limb3: 0x17c9fb0e4fed7a8fd35d405e + limb0: 0xe2635ab0d6e219fb7afa9416, + limb1: 0xb278621166d3b447ee83bd60, + limb2: 0xdda8b6e3fe36754b311084ae, + limb3: 0xbacdcb660f540f32622cc59 }, r0a1: u384 { - limb0: 0xf35749db71124505abd366f9, - limb1: 0x61cf628be9edfbaf36688799, - limb2: 0x47971f6cbe8019226f5905fc, - limb3: 0x1752d604999cce66a4eb2493 + limb0: 0x44b2507573676d236339c0b3, + limb1: 0xf769ed3d5a900541e0bcca49, + limb2: 0x4680543312d87cbb99d263c3, + limb3: 0x14a00d9e3deee0d9ee629609 }, r1a0: u384 { - limb0: 0xb9dcffa5490a77d64942d644, - limb1: 0x61a32d230735026899f77d79, - limb2: 0x35687480509418e23a06c8b3, - limb3: 0x90d812a0c891c1198027d26 + limb0: 0x5312f874d16a1a5e14bcff5f, + limb1: 0x76e66b6f8f25a0a4adb531d9, + limb2: 0x330587449a731daf0e58b98c, + limb3: 0xabdd56692203bb036ec98bb }, r1a1: u384 { - limb0: 0xa92739494a5599b6f1d9fe5e, - limb1: 0x61a95d6b5f9be7ae2a0bf8c8, - limb2: 0x11e9708e47c92cdf61de4a4, - limb3: 0x5d9c0f6e299ffb98cc62b5d + limb0: 0xf623b66acde67728a48fa52, + limb1: 0xbaebe9ba752bcb02b96f5198, + limb2: 0x8bf2eada8e410d64ba6d6573, + limb3: 0xe9ac1463041f452ebafc075 } }, G2Line { r0a0: u384 { - limb0: 0x75a3febc5cff9d37702624da, - limb1: 0x652842df8c846b6d8f99cf35, - limb2: 0xf101758db75afc403317181d, - limb3: 0x66e56a77331f81094b25072 + limb0: 0x337a2d8982e58c9a608bba3e, + limb1: 0xd62159d19c6d61a6d4a73c7d, + limb2: 0x966e2c5ffd533e7c0b3eb665, + limb3: 0xef473789fd45b24e30c7036 }, r0a1: u384 { - limb0: 0x2a4c540c1a83ada441beed09, - limb1: 0x5bd42ab1dc0df4461591e1e7, - limb2: 0x990b9d4543f1a4cb0b385a99, - limb3: 0xdaf99cddafb9ae17b13bf0 + limb0: 0x2b8f5ad0a415c392f5e6e768, + limb1: 0xb33c6977a490dbcb2c3e8d, + limb2: 0x4df4a8b762fcaabefce9ef3e, + limb3: 0x132e6ca9d258ecfa4934d0a2 }, r1a0: u384 { - limb0: 0x482ac363b2db512d567bcf90, - limb1: 0xe572254ff5600dd94928d038, - limb2: 0xd708f3ebe13439dfc809d608, - limb3: 0x8d35a4669d898497a00880a + limb0: 0x25f85be87413eeea6f8e88a5, + limb1: 0xdfe7eafa721731abdae0726e, + limb2: 0xf1e95209f846413f32a4dad, + limb3: 0xd33e78ffa227c4b73c683e9 }, r1a1: u384 { - limb0: 0x3e46573d180b64e074533214, - limb1: 0xa4a7829a05841ca353bd220b, - limb2: 0x2fcf9c0b4bcb6e5cda19cbbf, - limb3: 0x136e66f43da4b98c28d5d7b2 + limb0: 0xf3ca2bcf2a908c45b82091d4, + limb1: 0x8ad71a3e5b5e1d8a6eccba40, + limb2: 0xe0027966cb9e071c869e656a, + limb3: 0x4b1e8a5093716129828ed53 } }, G2Line { r0a0: u384 { - limb0: 0x8b9bdff5a57df24a09766d09, - limb1: 0x90a6cb11868e96830e5eda17, - limb2: 0x9182d4f377cde8b06165f1fe, - limb3: 0x17c9fb0e4fed7a8fd35d405e + limb0: 0xe2635ab0d6e219fb7afa9416, + limb1: 0xb278621166d3b447ee83bd60, + limb2: 0xdda8b6e3fe36754b311084ae, + limb3: 0xbacdcb660f540f32622cc59 }, r0a1: u384 { - limb0: 0xf35749db71124505abd366f9, - limb1: 0x61cf628be9edfbaf36688799, - limb2: 0x47971f6cbe8019226f5905fc, - limb3: 0x1752d604999cce66a4eb2493 + limb0: 0x44b2507573676d236339c0b3, + limb1: 0xf769ed3d5a900541e0bcca49, + limb2: 0x4680543312d87cbb99d263c3, + limb3: 0x14a00d9e3deee0d9ee629609 }, r1a0: u384 { - limb0: 0xb9dcffa5490a77d64942d644, - limb1: 0x61a32d230735026899f77d79, - limb2: 0x35687480509418e23a06c8b3, - limb3: 0x90d812a0c891c1198027d26 + limb0: 0x5312f874d16a1a5e14bcff5f, + limb1: 0x76e66b6f8f25a0a4adb531d9, + limb2: 0x330587449a731daf0e58b98c, + limb3: 0xabdd56692203bb036ec98bb }, r1a1: u384 { - limb0: 0xa92739494a5599b6f1d9fe5e, - limb1: 0x61a95d6b5f9be7ae2a0bf8c8, - limb2: 0x11e9708e47c92cdf61de4a4, - limb3: 0x5d9c0f6e299ffb98cc62b5d + limb0: 0xf623b66acde67728a48fa52, + limb1: 0xbaebe9ba752bcb02b96f5198, + limb2: 0x8bf2eada8e410d64ba6d6573, + limb3: 0xe9ac1463041f452ebafc075 } }, G2Line { r0a0: u384 { - limb0: 0x75a3febc5cff9d37702624da, - limb1: 0x652842df8c846b6d8f99cf35, - limb2: 0xf101758db75afc403317181d, - limb3: 0x66e56a77331f81094b25072 + limb0: 0x337a2d8982e58c9a608bba3e, + limb1: 0xd62159d19c6d61a6d4a73c7d, + limb2: 0x966e2c5ffd533e7c0b3eb665, + limb3: 0xef473789fd45b24e30c7036 }, r0a1: u384 { - limb0: 0x2a4c540c1a83ada441beed09, - limb1: 0x5bd42ab1dc0df4461591e1e7, - limb2: 0x990b9d4543f1a4cb0b385a99, - limb3: 0xdaf99cddafb9ae17b13bf0 + limb0: 0x2b8f5ad0a415c392f5e6e768, + limb1: 0xb33c6977a490dbcb2c3e8d, + limb2: 0x4df4a8b762fcaabefce9ef3e, + limb3: 0x132e6ca9d258ecfa4934d0a2 }, r1a0: u384 { - limb0: 0x482ac363b2db512d567bcf90, - limb1: 0xe572254ff5600dd94928d038, - limb2: 0xd708f3ebe13439dfc809d608, - limb3: 0x8d35a4669d898497a00880a + limb0: 0x25f85be87413eeea6f8e88a5, + limb1: 0xdfe7eafa721731abdae0726e, + limb2: 0xf1e95209f846413f32a4dad, + limb3: 0xd33e78ffa227c4b73c683e9 }, r1a1: u384 { - limb0: 0x3e46573d180b64e074533214, - limb1: 0xa4a7829a05841ca353bd220b, - limb2: 0x2fcf9c0b4bcb6e5cda19cbbf, - limb3: 0x136e66f43da4b98c28d5d7b2 + limb0: 0xf3ca2bcf2a908c45b82091d4, + limb1: 0x8ad71a3e5b5e1d8a6eccba40, + limb2: 0xe0027966cb9e071c869e656a, + limb3: 0x4b1e8a5093716129828ed53 } }, G2Line { r0a0: u384 { - limb0: 0xa1762b54e1e5037bfd88494d, - limb1: 0x148cd375991df4cd3c5ba2f2, - limb2: 0x48bd49e0b8bc7a1fc93fe86b, - limb3: 0x16ad9f6b3efaa45d0ae523d7 + limb0: 0x7391d401309179095af0602, + limb1: 0xf430ae91627f50ffc82a10c2, + limb2: 0x164c09f259569799d2f4bb62, + limb3: 0xf2ed89fb8aa308114efefb3 }, r0a1: u384 { - limb0: 0x72f2f391d316eeeb25c56923, - limb1: 0x364b352f36c300ce094879cd, - limb2: 0xc0a9a5763c377e895f7309dd, - limb3: 0x13d962595898d8c22f2dca39 + limb0: 0x32a9aa52b51488235f3b6470, + limb1: 0x805af0edf490bc4f2b86ea1f, + limb2: 0x33de25930d9b74209acdb261, + limb3: 0x113ce4de9d42a3d240bc611d }, r1a0: u384 { - limb0: 0xe21fbfa477dcd0aceaeb829b, - limb1: 0x5b57b882ad19b489ae669e08, - limb2: 0xc888edbcf20eb5fb51b96ac8, - limb3: 0x12594ef78c62631cda7c53f0 + limb0: 0x6ee4a2aa7cf41147ad0cdd5c, + limb1: 0xb308333d2a7a20ba28bfdd8f, + limb2: 0x122e1302337bd376fc804b41, + limb3: 0x95360ce9f461784cc6535fb }, r1a1: u384 { - limb0: 0xdd7543c3e39a84b183e8e801, - limb1: 0x13e2435ed97089f5be4bbda6, - limb2: 0x73e28be585272c0a709f613b, - limb3: 0xb49c6034d5d132fa9675811 + limb0: 0x1a3f656e3aaa2fc61c8398f6, + limb1: 0xeb7ea65bda028dd6eb99fe69, + limb2: 0xb182521e1d248c9f1c0fd9a0, + limb3: 0x176aa96884d7e8cbedaa6ff0 } }, G2Line { r0a0: u384 { - limb0: 0xa1762b54e1e5037bfd88494d, - limb1: 0x148cd375991df4cd3c5ba2f2, - limb2: 0x48bd49e0b8bc7a1fc93fe86b, - limb3: 0x16ad9f6b3efaa45d0ae523d7 + limb0: 0x7391d401309179095af0602, + limb1: 0xf430ae91627f50ffc82a10c2, + limb2: 0x164c09f259569799d2f4bb62, + limb3: 0xf2ed89fb8aa308114efefb3 }, r0a1: u384 { - limb0: 0x72f2f391d316eeeb25c56923, - limb1: 0x364b352f36c300ce094879cd, - limb2: 0xc0a9a5763c377e895f7309dd, - limb3: 0x13d962595898d8c22f2dca39 + limb0: 0x32a9aa52b51488235f3b6470, + limb1: 0x805af0edf490bc4f2b86ea1f, + limb2: 0x33de25930d9b74209acdb261, + limb3: 0x113ce4de9d42a3d240bc611d }, r1a0: u384 { - limb0: 0xe21fbfa477dcd0aceaeb829b, - limb1: 0x5b57b882ad19b489ae669e08, - limb2: 0xc888edbcf20eb5fb51b96ac8, - limb3: 0x12594ef78c62631cda7c53f0 + limb0: 0x6ee4a2aa7cf41147ad0cdd5c, + limb1: 0xb308333d2a7a20ba28bfdd8f, + limb2: 0x122e1302337bd376fc804b41, + limb3: 0x95360ce9f461784cc6535fb }, r1a1: u384 { - limb0: 0xdd7543c3e39a84b183e8e801, - limb1: 0x13e2435ed97089f5be4bbda6, - limb2: 0x73e28be585272c0a709f613b, - limb3: 0xb49c6034d5d132fa9675811 + limb0: 0x1a3f656e3aaa2fc61c8398f6, + limb1: 0xeb7ea65bda028dd6eb99fe69, + limb2: 0xb182521e1d248c9f1c0fd9a0, + limb3: 0x176aa96884d7e8cbedaa6ff0 } }, G2Line { r0a0: u384 { - limb0: 0x825da8d58d26518f843f8935, - limb1: 0x36bfee82f79d864140fdbf4a, - limb2: 0x8666ec3caccc5de4a8fbd420, - limb3: 0xe63ae1a96a8a8376fc09858 + limb0: 0x725e80175e124f66580c8158, + limb1: 0xebcfab9fc7215af9f1180574, + limb2: 0x659c20bde1537de211e13af, + limb3: 0x470115fc427cf37b2a14f5d }, r0a1: u384 { - limb0: 0x71d592aa2abb0a859ccaeb38, - limb1: 0x28e939a27c034b60d95ab71c, - limb2: 0x54abb6bfa0c2d47df2e023fe, - limb3: 0x4267c543b8c50556eb372f5 + limb0: 0x64996451f0586c2b1b1e1de2, + limb1: 0x681c59a51f51300ee10ecdeb, + limb2: 0x83b959731105dff9da7b8699, + limb3: 0xcce6d66237d397734f4b71c }, r1a0: u384 { - limb0: 0xf0c0ace29ea0c304a1fd43ee, - limb1: 0xb0735b38d1a56f21181d707b, - limb2: 0x4c63c65cbc2c2d2e722aedfd, - limb3: 0x14cc72225a36126b472f5c64 + limb0: 0x5cccf42ae431f0424258ccdf, + limb1: 0xb56476b4eedfdae92b13ca2a, + limb2: 0xd19d5715bc8c542972e49c53, + limb3: 0xd326b19018e0e0e3bade7d3 }, r1a1: u384 { - limb0: 0x7147ab1fe8b43e9c6120e845, - limb1: 0xd1a85331debcc0d8f67d73ef, - limb2: 0xe4682bb62165168c7afc6772, - limb3: 0xe9493413b430814d1a690d + limb0: 0x98fb37324459995611a20a45, + limb1: 0x88b43e590551f4a54c64dc99, + limb2: 0x5599623f9c5f8eef327820d7, + limb3: 0x2129a528b8e5d9ab92687af } }, G2Line { r0a0: u384 { - limb0: 0x825da8d58d26518f843f8935, - limb1: 0x36bfee82f79d864140fdbf4a, - limb2: 0x8666ec3caccc5de4a8fbd420, - limb3: 0xe63ae1a96a8a8376fc09858 + limb0: 0x725e80175e124f66580c8158, + limb1: 0xebcfab9fc7215af9f1180574, + limb2: 0x659c20bde1537de211e13af, + limb3: 0x470115fc427cf37b2a14f5d }, r0a1: u384 { - limb0: 0x71d592aa2abb0a859ccaeb38, - limb1: 0x28e939a27c034b60d95ab71c, - limb2: 0x54abb6bfa0c2d47df2e023fe, - limb3: 0x4267c543b8c50556eb372f5 + limb0: 0x64996451f0586c2b1b1e1de2, + limb1: 0x681c59a51f51300ee10ecdeb, + limb2: 0x83b959731105dff9da7b8699, + limb3: 0xcce6d66237d397734f4b71c }, r1a0: u384 { - limb0: 0xf0c0ace29ea0c304a1fd43ee, - limb1: 0xb0735b38d1a56f21181d707b, - limb2: 0x4c63c65cbc2c2d2e722aedfd, - limb3: 0x14cc72225a36126b472f5c64 + limb0: 0x5cccf42ae431f0424258ccdf, + limb1: 0xb56476b4eedfdae92b13ca2a, + limb2: 0xd19d5715bc8c542972e49c53, + limb3: 0xd326b19018e0e0e3bade7d3 }, r1a1: u384 { - limb0: 0x7147ab1fe8b43e9c6120e845, - limb1: 0xd1a85331debcc0d8f67d73ef, - limb2: 0xe4682bb62165168c7afc6772, - limb3: 0xe9493413b430814d1a690d + limb0: 0x98fb37324459995611a20a45, + limb1: 0x88b43e590551f4a54c64dc99, + limb2: 0x5599623f9c5f8eef327820d7, + limb3: 0x2129a528b8e5d9ab92687af } }, G2Line { r0a0: u384 { - limb0: 0xfa8b7aa2caae2b003ed12175, - limb1: 0x2eecd1f56dad837f4d0ccd91, - limb2: 0x37869d754ad23c81114df082, - limb3: 0x44a1789299e93dad0788fe0 + limb0: 0xe6c9a756e5f0b7e8bb95bd83, + limb1: 0x818d9059f64ad3dbf5af83bd, + limb2: 0xfc6a29c09b4417a86f03bdeb, + limb3: 0xf32fe39b98204022ead8967 }, r0a1: u384 { - limb0: 0x8ffe622b3e49936d751e1512, - limb1: 0x9eb39b5255ccae35c797872, - limb2: 0x8a378930fa0309a31303b10f, - limb3: 0x76ecd9648e60faffb572c80 + limb0: 0xaf22758d0ecc05b3e6ec853e, + limb1: 0x65f81d1a8f72bb24f5ad6c92, + limb2: 0x1a820d58eb81eefce4c27b81, + limb3: 0x169112c5ace69cd09e4f5e8d }, r1a0: u384 { - limb0: 0xaa6cbc552b61e801b5682f75, - limb1: 0xf92aaf06751640026300c908, - limb2: 0x102a9c7e914c2ebd918d3929, - limb3: 0xf5df94c185301ad9c05ac9c + limb0: 0xe395e55357e5ca939a83df52, + limb1: 0x44279925ef82b8759b3fcf7b, + limb2: 0x9ec6f9911bc974e037be9d3d, + limb3: 0x9c5bc98475488f6599ff3c5 }, r1a1: u384 { - limb0: 0x233ea741c371fecd352415c9, - limb1: 0x70f2d90a56d89867d020f0d3, - limb2: 0x870348d1e1d40cdee83619d7, - limb3: 0x19e7f1ec402c20fb856d3b7a + limb0: 0x6237f07c10794d934f2386bb, + limb1: 0xb0dc69e5e77c5512f8f58be8, + limb2: 0x7f48b6a679ce16c7908e19ad, + limb3: 0x144767a7a50ca2d7337f429c } }, G2Line { r0a0: u384 { - limb0: 0xfa8b7aa2caae2b003ed12175, - limb1: 0x2eecd1f56dad837f4d0ccd91, - limb2: 0x37869d754ad23c81114df082, - limb3: 0x44a1789299e93dad0788fe0 + limb0: 0xe6c9a756e5f0b7e8bb95bd83, + limb1: 0x818d9059f64ad3dbf5af83bd, + limb2: 0xfc6a29c09b4417a86f03bdeb, + limb3: 0xf32fe39b98204022ead8967 }, r0a1: u384 { - limb0: 0x8ffe622b3e49936d751e1512, - limb1: 0x9eb39b5255ccae35c797872, - limb2: 0x8a378930fa0309a31303b10f, - limb3: 0x76ecd9648e60faffb572c80 + limb0: 0xaf22758d0ecc05b3e6ec853e, + limb1: 0x65f81d1a8f72bb24f5ad6c92, + limb2: 0x1a820d58eb81eefce4c27b81, + limb3: 0x169112c5ace69cd09e4f5e8d }, r1a0: u384 { - limb0: 0xaa6cbc552b61e801b5682f75, - limb1: 0xf92aaf06751640026300c908, - limb2: 0x102a9c7e914c2ebd918d3929, - limb3: 0xf5df94c185301ad9c05ac9c + limb0: 0xe395e55357e5ca939a83df52, + limb1: 0x44279925ef82b8759b3fcf7b, + limb2: 0x9ec6f9911bc974e037be9d3d, + limb3: 0x9c5bc98475488f6599ff3c5 }, r1a1: u384 { - limb0: 0x233ea741c371fecd352415c9, - limb1: 0x70f2d90a56d89867d020f0d3, - limb2: 0x870348d1e1d40cdee83619d7, - limb3: 0x19e7f1ec402c20fb856d3b7a + limb0: 0x6237f07c10794d934f2386bb, + limb1: 0xb0dc69e5e77c5512f8f58be8, + limb2: 0x7f48b6a679ce16c7908e19ad, + limb3: 0x144767a7a50ca2d7337f429c } }, G2Line { r0a0: u384 { - limb0: 0x88ae77ed5f23cfa962333233, - limb1: 0x42aae69f4314cca8aedf9c97, - limb2: 0x8b7f1c174fad04aa09a2351d, - limb3: 0x142eeb450e064a9d60bb215f + limb0: 0xc84b8e071d1289bb1d26ffc8, + limb1: 0x6a6a50b8ddfbd17e9b81c4ef, + limb2: 0x30bf995def8b4a2ab66d40f8, + limb3: 0xd0df3f3166e3899dec73676 }, r0a1: u384 { - limb0: 0xfeb697ddfcac69691c8b8111, - limb1: 0xeddc99f8cec1a71065938c8b, - limb2: 0xd05c78c12cc17c8fba1ab3d1, - limb3: 0xfb11b783dfab635cefe51ea + limb0: 0xede9fce8316040ac15885a81, + limb1: 0x7a480eb6e86ac375bc5d6bb0, + limb2: 0xc48c6ae2b1cbf7d841750cc3, + limb3: 0x8cd543f591eb6b5ea842d58 }, r1a0: u384 { - limb0: 0x4b3f1c788aca772a6b037891, - limb1: 0x4144b6048f58c413d7f25638, - limb2: 0xd58b40bc819a13e4380eb355, - limb3: 0x11cc6526d8011cf61d666d3f + limb0: 0x8234459f11f595a6848452f2, + limb1: 0xaf4e0b5d1c73addfd8dadad4, + limb2: 0x1c87161102b4e286e75bab6d, + limb3: 0xb399e38b6304d0d0b37a20 }, r1a1: u384 { - limb0: 0x460c8d9006a7b938860cfcce, - limb1: 0xefc75e1fbdf968c0efb66f81, - limb2: 0x1a53603265f9fe19282fd2ca, - limb3: 0x18563f074acbcd6f84eb4b4b + limb0: 0x95e39c57e34bb8e5fa948ac3, + limb1: 0x202f0931eda59c9ee03de01d, + limb2: 0xfe61813f7d2891a7faf5ac24, + limb3: 0xf08dcd7e1663eabc266bc2a } }, G2Line { r0a0: u384 { - limb0: 0x88ae77ed5f23cfa962333233, - limb1: 0x42aae69f4314cca8aedf9c97, - limb2: 0x8b7f1c174fad04aa09a2351d, - limb3: 0x142eeb450e064a9d60bb215f + limb0: 0xc84b8e071d1289bb1d26ffc8, + limb1: 0x6a6a50b8ddfbd17e9b81c4ef, + limb2: 0x30bf995def8b4a2ab66d40f8, + limb3: 0xd0df3f3166e3899dec73676 }, r0a1: u384 { - limb0: 0xfeb697ddfcac69691c8b8111, - limb1: 0xeddc99f8cec1a71065938c8b, - limb2: 0xd05c78c12cc17c8fba1ab3d1, - limb3: 0xfb11b783dfab635cefe51ea + limb0: 0xede9fce8316040ac15885a81, + limb1: 0x7a480eb6e86ac375bc5d6bb0, + limb2: 0xc48c6ae2b1cbf7d841750cc3, + limb3: 0x8cd543f591eb6b5ea842d58 }, r1a0: u384 { - limb0: 0x4b3f1c788aca772a6b037891, - limb1: 0x4144b6048f58c413d7f25638, - limb2: 0xd58b40bc819a13e4380eb355, - limb3: 0x11cc6526d8011cf61d666d3f + limb0: 0x8234459f11f595a6848452f2, + limb1: 0xaf4e0b5d1c73addfd8dadad4, + limb2: 0x1c87161102b4e286e75bab6d, + limb3: 0xb399e38b6304d0d0b37a20 }, r1a1: u384 { - limb0: 0x460c8d9006a7b938860cfcce, - limb1: 0xefc75e1fbdf968c0efb66f81, - limb2: 0x1a53603265f9fe19282fd2ca, - limb3: 0x18563f074acbcd6f84eb4b4b + limb0: 0x95e39c57e34bb8e5fa948ac3, + limb1: 0x202f0931eda59c9ee03de01d, + limb2: 0xfe61813f7d2891a7faf5ac24, + limb3: 0xf08dcd7e1663eabc266bc2a } }, G2Line { r0a0: u384 { - limb0: 0x496fa3371a48e567ff617aa9, - limb1: 0x83374f170158d75c98ad3e2b, - limb2: 0x678c0339f9e5255e859b508d, - limb3: 0x18ab028b004b318c6351ff99 + limb0: 0x3997dac9869fa682cf8cac68, + limb1: 0xb3b8c15e4e305fbb03fd4da9, + limb2: 0xe76a8d06f698f41df8b1d364, + limb3: 0x3638061d8e02a554433e50d }, r0a1: u384 { - limb0: 0x39bf7b78c00ee8e3eb653c68, - limb1: 0x8fea9cadc4c47a6df3f29c6, - limb2: 0x92b3f76803a7c9bc612c8896, - limb3: 0xadff2683b1957cb0266033b + limb0: 0x35b0ecd02b3d5de24aa1a852, + limb1: 0x246f630c7d1f8945c4226bbc, + limb2: 0x4b7f242a8c19456927487d7f, + limb3: 0x8807674f9b0a7950826d8fb }, r1a0: u384 { - limb0: 0x88d51314497c64acacdfc3ba, - limb1: 0xdd0d8258ebc1128c2b866bd5, - limb2: 0x4860c9690fe0e1723b5b04b7, - limb3: 0xe69e5b3146ed88a87ff13ff + limb0: 0xd5b40f39a3cd272f7515474e, + limb1: 0x9289fb426595dc872da10518, + limb2: 0xefe3d4f6dea5ac12a784f712, + limb3: 0x12c44352851b38a030d442a4 }, r1a1: u384 { - limb0: 0x11de2ecbed20ca174ded7d93, - limb1: 0x726b2ae04ecdc6f719862f30, - limb2: 0xc15b7b515cb6286bd6780812, - limb3: 0x184e2cc01a491935fa5f8bc9 + limb0: 0xef56bf4acb74a8cb199d2476, + limb1: 0xc5eb5a63097c5936f7f8abcf, + limb2: 0x1d3cd4eb857924da3ba58242, + limb3: 0xe62f8c5d46d3f74cb1afea8 } }, G2Line { r0a0: u384 { - limb0: 0x496fa3371a48e567ff617aa9, - limb1: 0x83374f170158d75c98ad3e2b, - limb2: 0x678c0339f9e5255e859b508d, - limb3: 0x18ab028b004b318c6351ff99 + limb0: 0x3997dac9869fa682cf8cac68, + limb1: 0xb3b8c15e4e305fbb03fd4da9, + limb2: 0xe76a8d06f698f41df8b1d364, + limb3: 0x3638061d8e02a554433e50d }, r0a1: u384 { - limb0: 0x39bf7b78c00ee8e3eb653c68, - limb1: 0x8fea9cadc4c47a6df3f29c6, - limb2: 0x92b3f76803a7c9bc612c8896, - limb3: 0xadff2683b1957cb0266033b + limb0: 0x35b0ecd02b3d5de24aa1a852, + limb1: 0x246f630c7d1f8945c4226bbc, + limb2: 0x4b7f242a8c19456927487d7f, + limb3: 0x8807674f9b0a7950826d8fb }, r1a0: u384 { - limb0: 0x88d51314497c64acacdfc3ba, - limb1: 0xdd0d8258ebc1128c2b866bd5, - limb2: 0x4860c9690fe0e1723b5b04b7, - limb3: 0xe69e5b3146ed88a87ff13ff + limb0: 0xd5b40f39a3cd272f7515474e, + limb1: 0x9289fb426595dc872da10518, + limb2: 0xefe3d4f6dea5ac12a784f712, + limb3: 0x12c44352851b38a030d442a4 }, r1a1: u384 { - limb0: 0x11de2ecbed20ca174ded7d93, - limb1: 0x726b2ae04ecdc6f719862f30, - limb2: 0xc15b7b515cb6286bd6780812, - limb3: 0x184e2cc01a491935fa5f8bc9 + limb0: 0xef56bf4acb74a8cb199d2476, + limb1: 0xc5eb5a63097c5936f7f8abcf, + limb2: 0x1d3cd4eb857924da3ba58242, + limb3: 0xe62f8c5d46d3f74cb1afea8 } }, G2Line { r0a0: u384 { - limb0: 0x35c5042bbb42919e6b9598c2, - limb1: 0x673f395f084c19aa9c3ee05a, - limb2: 0xc8d16620348cd63263384f0, - limb3: 0xcaf9d4534539f0dc6886458 + limb0: 0x8f4736ddbc53ea86fb4a33ab, + limb1: 0xa77071ea3d204a09168b1149, + limb2: 0xb529745924e4085315f0fc80, + limb3: 0xa788eacd8ab3bc3758b9d20 }, r0a1: u384 { - limb0: 0xd2dbc55f3628d077fe737d77, - limb1: 0x83564462d0ac82bf49c4b478, - limb2: 0xb1366443481521a4fdb71262, - limb3: 0x2eab657be2bcfb89cae29f5 + limb0: 0xbd2b777db8cae5b7bb3ca659, + limb1: 0x387028e0444ea884faa22f6b, + limb2: 0x7b2720be4996cc1e2fabdce, + limb3: 0x4a413746c74531bf13b5683 }, r1a0: u384 { - limb0: 0x5b2c0a95a2b0d5280fafeb7e, - limb1: 0xb3d36ef4174e4d4defa4e308, - limb2: 0x4b4ec1d3aaa6bcf76f9212e7, - limb3: 0x12059ac2fa4fc0702caa9634 + limb0: 0x65baf58ac08624dcc890a653, + limb1: 0xdb52e51122e6312bd0d51ee9, + limb2: 0xa19371ef7df62c16e2c6a44, + limb3: 0xdb13aada7329027aed87fe3 }, r1a1: u384 { - limb0: 0xd1b46fdc5ecf280287bbfb9d, - limb1: 0xa3780c6d48695140c3f93aeb, - limb2: 0xfc7a2568ffca745e1ff0e4b0, - limb3: 0x1c7e33ed0928afc2d27832c + limb0: 0xac3c40fe882bac436042f242, + limb1: 0xd00f8613c6b5cdd5c2e10353, + limb2: 0x246ca8b5993ec1336bbf76e6, + limb3: 0x1231982fe5590220e70973f8 } }, G2Line { r0a0: u384 { - limb0: 0x35c5042bbb42919e6b9598c2, - limb1: 0x673f395f084c19aa9c3ee05a, - limb2: 0xc8d16620348cd63263384f0, - limb3: 0xcaf9d4534539f0dc6886458 + limb0: 0x8f4736ddbc53ea86fb4a33ab, + limb1: 0xa77071ea3d204a09168b1149, + limb2: 0xb529745924e4085315f0fc80, + limb3: 0xa788eacd8ab3bc3758b9d20 }, r0a1: u384 { - limb0: 0xd2dbc55f3628d077fe737d77, - limb1: 0x83564462d0ac82bf49c4b478, - limb2: 0xb1366443481521a4fdb71262, - limb3: 0x2eab657be2bcfb89cae29f5 + limb0: 0xbd2b777db8cae5b7bb3ca659, + limb1: 0x387028e0444ea884faa22f6b, + limb2: 0x7b2720be4996cc1e2fabdce, + limb3: 0x4a413746c74531bf13b5683 }, r1a0: u384 { - limb0: 0x5b2c0a95a2b0d5280fafeb7e, - limb1: 0xb3d36ef4174e4d4defa4e308, - limb2: 0x4b4ec1d3aaa6bcf76f9212e7, - limb3: 0x12059ac2fa4fc0702caa9634 + limb0: 0x65baf58ac08624dcc890a653, + limb1: 0xdb52e51122e6312bd0d51ee9, + limb2: 0xa19371ef7df62c16e2c6a44, + limb3: 0xdb13aada7329027aed87fe3 }, r1a1: u384 { - limb0: 0xd1b46fdc5ecf280287bbfb9d, - limb1: 0xa3780c6d48695140c3f93aeb, - limb2: 0xfc7a2568ffca745e1ff0e4b0, - limb3: 0x1c7e33ed0928afc2d27832c + limb0: 0xac3c40fe882bac436042f242, + limb1: 0xd00f8613c6b5cdd5c2e10353, + limb2: 0x246ca8b5993ec1336bbf76e6, + limb3: 0x1231982fe5590220e70973f8 } }, G2Line { r0a0: u384 { - limb0: 0xc4b5d1bf5805cb134e1e8fab, - limb1: 0x5340cf7216909303401f7fb8, - limb2: 0x41d44bb24d43fb0450030540, - limb3: 0x19bba30d253dd67ca81020d6 + limb0: 0xe8b57696be7cd31b5bb15bb1, + limb1: 0x5f2c4a4b51ac55b731308604, + limb2: 0x62c2da419f44326490ac85a7, + limb3: 0xb834038b70303046b3c8f61 }, r0a1: u384 { - limb0: 0xa6922e15d2858e356d6f7170, - limb1: 0xa90e81cac330decf43461fdc, - limb2: 0x144fb54d74201c9081220606, - limb3: 0x610514eaad53981ee0f017a + limb0: 0x7fc7f71b56a7573693a2755c, + limb1: 0x12423518be844c7204e78af2, + limb2: 0xea6535873c35eaedbd32bf1c, + limb3: 0x304b5b7a6e6d582c9b0b043 }, r1a0: u384 { - limb0: 0xdfafd88e50a41edf8f55bc42, - limb1: 0xcda536b0ce0613df45ea4cb9, - limb2: 0x3a301255a8cd406bf2f19d12, - limb3: 0x115d07a6d46e37c9737b4bbb + limb0: 0xfdd23b97b48200f506c87429, + limb1: 0x91a8e7d4f7f2c26a03d03ebb, + limb2: 0xef66ef1ee7b71bce099a5ee5, + limb3: 0x7ada233b4678b34416ae72 }, r1a1: u384 { - limb0: 0x1892075b8d4df6bb17cb0c4a, - limb1: 0xf7e8f48b31bc26ff5c07b719, - limb2: 0x4be1ebd911e4ccb58f845ebb, - limb3: 0x19529e5505c381566483fee0 + limb0: 0xdd8cea6f4d48a3fe27eb64d3, + limb1: 0x9ab4313c65aa6aab5fc6ab07, + limb2: 0xcfcb0b579579083c2febdecc, + limb3: 0x15c7c31c29ac46efaaa05f42 } }, G2Line { r0a0: u384 { - limb0: 0xc4b5d1bf5805cb134e1e8fab, - limb1: 0x5340cf7216909303401f7fb8, - limb2: 0x41d44bb24d43fb0450030540, - limb3: 0x19bba30d253dd67ca81020d6 + limb0: 0xe8b57696be7cd31b5bb15bb1, + limb1: 0x5f2c4a4b51ac55b731308604, + limb2: 0x62c2da419f44326490ac85a7, + limb3: 0xb834038b70303046b3c8f61 }, r0a1: u384 { - limb0: 0xa6922e15d2858e356d6f7170, - limb1: 0xa90e81cac330decf43461fdc, - limb2: 0x144fb54d74201c9081220606, - limb3: 0x610514eaad53981ee0f017a + limb0: 0x7fc7f71b56a7573693a2755c, + limb1: 0x12423518be844c7204e78af2, + limb2: 0xea6535873c35eaedbd32bf1c, + limb3: 0x304b5b7a6e6d582c9b0b043 }, r1a0: u384 { - limb0: 0xdfafd88e50a41edf8f55bc42, - limb1: 0xcda536b0ce0613df45ea4cb9, - limb2: 0x3a301255a8cd406bf2f19d12, - limb3: 0x115d07a6d46e37c9737b4bbb + limb0: 0xfdd23b97b48200f506c87429, + limb1: 0x91a8e7d4f7f2c26a03d03ebb, + limb2: 0xef66ef1ee7b71bce099a5ee5, + limb3: 0x7ada233b4678b34416ae72 }, r1a1: u384 { - limb0: 0x1892075b8d4df6bb17cb0c4a, - limb1: 0xf7e8f48b31bc26ff5c07b719, - limb2: 0x4be1ebd911e4ccb58f845ebb, - limb3: 0x19529e5505c381566483fee0 + limb0: 0xdd8cea6f4d48a3fe27eb64d3, + limb1: 0x9ab4313c65aa6aab5fc6ab07, + limb2: 0xcfcb0b579579083c2febdecc, + limb3: 0x15c7c31c29ac46efaaa05f42 } }, G2Line { r0a0: u384 { - limb0: 0x3b14fc07f92c35a38ee5869e, - limb1: 0x54e352b532097486c93bcc09, - limb2: 0xbcb368fd3dffa33d1db1a359, - limb3: 0x437fc3239038df2c6c566d8 + limb0: 0x24a77e1489fad5730471a72e, + limb1: 0xe0bbbbcdfb958c65c46af275, + limb2: 0x3d5d8a8a28fedc0bff8115c4, + limb3: 0x189fc09c46f092e010389d35 }, r0a1: u384 { - limb0: 0x982f766e985c1051869612c, - limb1: 0xaa46a3fa5b2b05d1983db32a, - limb2: 0x47c792f7910ea63909bad2ae, - limb3: 0x10ea0fd4ecb8feca4890e6e4 + limb0: 0x7e3b41730259c33bcae65017, + limb1: 0x7ab8c9615ac26fde5a249089, + limb2: 0x2fd8f6761db88fd4eb061b56, + limb3: 0xee903f7eeb2c626f4523110 }, r1a0: u384 { - limb0: 0x4d350e16efd96aca0a298f49, - limb1: 0x23fcacf04101d785384e21c4, - limb2: 0x47b0b6ae7f08a4a17549246d, - limb3: 0x191dc8b41a3a0499da7a9442 + limb0: 0xfac0bd0c34c26ecce11f82ff, + limb1: 0xff05e8ee0e5916883116b6fb, + limb2: 0xf0673bf7f4ca0d81e6df5306, + limb3: 0xb0481c8a221eb470c4e7be2 }, r1a1: u384 { - limb0: 0xe0d2ca645632748580806c6e, - limb1: 0x66962aa1fd30ffcb68ee6df1, - limb2: 0xa7d12ec57c6719a1f2fc16b7, - limb3: 0x16ce99a14d219384c3f99ac0 + limb0: 0x680d8863105a1265848d7f01, + limb1: 0x24fd46ab266de7e9d594c4a8, + limb2: 0xeca71f2b0fd19ea9b7658e89, + limb3: 0x19122850ada03c658bb0da9d } }, G2Line { r0a0: u384 { - limb0: 0x3b14fc07f92c35a38ee5869e, - limb1: 0x54e352b532097486c93bcc09, - limb2: 0xbcb368fd3dffa33d1db1a359, - limb3: 0x437fc3239038df2c6c566d8 + limb0: 0x24a77e1489fad5730471a72e, + limb1: 0xe0bbbbcdfb958c65c46af275, + limb2: 0x3d5d8a8a28fedc0bff8115c4, + limb3: 0x189fc09c46f092e010389d35 }, r0a1: u384 { - limb0: 0x982f766e985c1051869612c, - limb1: 0xaa46a3fa5b2b05d1983db32a, - limb2: 0x47c792f7910ea63909bad2ae, - limb3: 0x10ea0fd4ecb8feca4890e6e4 + limb0: 0x7e3b41730259c33bcae65017, + limb1: 0x7ab8c9615ac26fde5a249089, + limb2: 0x2fd8f6761db88fd4eb061b56, + limb3: 0xee903f7eeb2c626f4523110 }, r1a0: u384 { - limb0: 0x4d350e16efd96aca0a298f49, - limb1: 0x23fcacf04101d785384e21c4, - limb2: 0x47b0b6ae7f08a4a17549246d, - limb3: 0x191dc8b41a3a0499da7a9442 + limb0: 0xfac0bd0c34c26ecce11f82ff, + limb1: 0xff05e8ee0e5916883116b6fb, + limb2: 0xf0673bf7f4ca0d81e6df5306, + limb3: 0xb0481c8a221eb470c4e7be2 }, r1a1: u384 { - limb0: 0xe0d2ca645632748580806c6e, - limb1: 0x66962aa1fd30ffcb68ee6df1, - limb2: 0xa7d12ec57c6719a1f2fc16b7, - limb3: 0x16ce99a14d219384c3f99ac0 + limb0: 0x680d8863105a1265848d7f01, + limb1: 0x24fd46ab266de7e9d594c4a8, + limb2: 0xeca71f2b0fd19ea9b7658e89, + limb3: 0x19122850ada03c658bb0da9d } }, G2Line { r0a0: u384 { - limb0: 0xa6b96d9ea0fb8d35e1177745, - limb1: 0xccd3b5626d945d1e389a1d80, - limb2: 0x85c29bc826eed12e66682f04, - limb3: 0x2196c59a9465684ccf5c500 + limb0: 0x709b76597cd8404a15eec6c6, + limb1: 0x1d5b71bc4f795d4861f8f138, + limb2: 0x4063a45c4c9376157bb01f24, + limb3: 0x1fce440ea5a43242c14fc54 }, r0a1: u384 { - limb0: 0x56ad704906965449749690a7, - limb1: 0xa59ad6441e426457c7774232, - limb2: 0x37d637a078e66356c484bf30, - limb3: 0x152219554bf95a7e492d2262 + limb0: 0x76e8757e869731e827073532, + limb1: 0xbe78989350b5ddbcdd8e7bbe, + limb2: 0xb642c62a17cdcb59dc7d61d, + limb3: 0x18afb76ac0318911c26eb71d }, r1a0: u384 { - limb0: 0xb6f18f2e50c3287b783a9b90, - limb1: 0xa5859d7f11cb591b41efb55a, - limb2: 0x63416d7cdb9030f7677d74ed, - limb3: 0xf9f9b2d4695a12e22c8d160 + limb0: 0x92afca859f7b3c1a66483643, + limb1: 0xbf8b9274d1c04e70279e7fd7, + limb2: 0x1e6b2b5248ab993a1e2e06dc, + limb3: 0x4bab13854ea58d96716695b }, r1a1: u384 { - limb0: 0xf40e0a8429ca4ca8aabf850d, - limb1: 0x794df653c13b91cd9ea89cce, - limb2: 0x4e6d50de1b188dc5138a223b, - limb3: 0x61490680e7fd6ea8abfcf14 + limb0: 0xaca87b387456dbf4c8a8f76c, + limb1: 0xac5e25b4a91b793a8ef27cb6, + limb2: 0x5c5d8c7d0b2fe652e876679, + limb3: 0x194dd127d4331d94bb763d5c } }, G2Line { r0a0: u384 { - limb0: 0x77ac36a1f91b8d536f9e14d7, - limb1: 0x7635c6a3bae005bd5bccf324, - limb2: 0x93dfc199f910b83639f59295, - limb3: 0xc7a05853dd4aa54f1b75d05 + limb0: 0x748789dff8d0e8426f1b1d10, + limb1: 0xe2c56c4da65cf9a689375e67, + limb2: 0xe966f88c77263ec9c0aead6e, + limb3: 0x1d2a89b90f6d5a462e5e05 }, r0a1: u384 { - limb0: 0x5d526b97223af3e8cea30854, - limb1: 0x595b57c9a28413c4932224fa, - limb2: 0x8ed211cd36e957889a4d956a, - limb3: 0x8706fb9f5a705389563936b + limb0: 0x68e9d3516ca34c342176eb59, + limb1: 0x4c660cc3fa9539f9b6b2b713, + limb2: 0x162588e80b9d6a19b2fcfe47, + limb3: 0x2e42574314b98555f22689d }, r1a0: u384 { - limb0: 0x39dd788c6e4f7a36a4966209, - limb1: 0xa5e790a09eb8be7223d4d17e, - limb2: 0xf9321a5048ddc9871a6ecb7f, - limb3: 0x13cc3e528b764e63ee69873a + limb0: 0xf3b9908965b04952b75e13a0, + limb1: 0x2bfda9377be9ce7ae0b560f3, + limb2: 0x3eb74bef0646ee2ed1ea939e, + limb3: 0x15f79e27820b2e1ad33f4073 }, r1a1: u384 { - limb0: 0x8dcf0a83adfcedb3337d586, - limb1: 0x13dec205a5daa28c4307eac9, - limb2: 0x499fdb2b9f9532cda79abf31, - limb3: 0x12a290cb259d69a358606a91 + limb0: 0x1ab11908ec8678c9275642f6, + limb1: 0xf8a973c80c8108c03ebf8fcf, + limb2: 0xd56857adec8dd6122620dd87, + limb3: 0xf68b5ac044e2315875e77f3 } }, G2Line { r0a0: u384 { - limb0: 0xa6b96d9ea0fb8d35e1177745, - limb1: 0xccd3b5626d945d1e389a1d80, - limb2: 0x85c29bc826eed12e66682f04, - limb3: 0x2196c59a9465684ccf5c500 + limb0: 0x709b76597cd8404a15eec6c6, + limb1: 0x1d5b71bc4f795d4861f8f138, + limb2: 0x4063a45c4c9376157bb01f24, + limb3: 0x1fce440ea5a43242c14fc54 }, r0a1: u384 { - limb0: 0x56ad704906965449749690a7, - limb1: 0xa59ad6441e426457c7774232, - limb2: 0x37d637a078e66356c484bf30, - limb3: 0x152219554bf95a7e492d2262 + limb0: 0x76e8757e869731e827073532, + limb1: 0xbe78989350b5ddbcdd8e7bbe, + limb2: 0xb642c62a17cdcb59dc7d61d, + limb3: 0x18afb76ac0318911c26eb71d }, r1a0: u384 { - limb0: 0xb6f18f2e50c3287b783a9b90, - limb1: 0xa5859d7f11cb591b41efb55a, - limb2: 0x63416d7cdb9030f7677d74ed, - limb3: 0xf9f9b2d4695a12e22c8d160 + limb0: 0x92afca859f7b3c1a66483643, + limb1: 0xbf8b9274d1c04e70279e7fd7, + limb2: 0x1e6b2b5248ab993a1e2e06dc, + limb3: 0x4bab13854ea58d96716695b }, r1a1: u384 { - limb0: 0xf40e0a8429ca4ca8aabf850d, - limb1: 0x794df653c13b91cd9ea89cce, - limb2: 0x4e6d50de1b188dc5138a223b, - limb3: 0x61490680e7fd6ea8abfcf14 + limb0: 0xaca87b387456dbf4c8a8f76c, + limb1: 0xac5e25b4a91b793a8ef27cb6, + limb2: 0x5c5d8c7d0b2fe652e876679, + limb3: 0x194dd127d4331d94bb763d5c } }, G2Line { r0a0: u384 { - limb0: 0x77ac36a1f91b8d536f9e14d7, - limb1: 0x7635c6a3bae005bd5bccf324, - limb2: 0x93dfc199f910b83639f59295, - limb3: 0xc7a05853dd4aa54f1b75d05 + limb0: 0x748789dff8d0e8426f1b1d10, + limb1: 0xe2c56c4da65cf9a689375e67, + limb2: 0xe966f88c77263ec9c0aead6e, + limb3: 0x1d2a89b90f6d5a462e5e05 }, r0a1: u384 { - limb0: 0x5d526b97223af3e8cea30854, - limb1: 0x595b57c9a28413c4932224fa, - limb2: 0x8ed211cd36e957889a4d956a, - limb3: 0x8706fb9f5a705389563936b + limb0: 0x68e9d3516ca34c342176eb59, + limb1: 0x4c660cc3fa9539f9b6b2b713, + limb2: 0x162588e80b9d6a19b2fcfe47, + limb3: 0x2e42574314b98555f22689d }, r1a0: u384 { - limb0: 0x39dd788c6e4f7a36a4966209, - limb1: 0xa5e790a09eb8be7223d4d17e, - limb2: 0xf9321a5048ddc9871a6ecb7f, - limb3: 0x13cc3e528b764e63ee69873a + limb0: 0xf3b9908965b04952b75e13a0, + limb1: 0x2bfda9377be9ce7ae0b560f3, + limb2: 0x3eb74bef0646ee2ed1ea939e, + limb3: 0x15f79e27820b2e1ad33f4073 }, r1a1: u384 { - limb0: 0x8dcf0a83adfcedb3337d586, - limb1: 0x13dec205a5daa28c4307eac9, - limb2: 0x499fdb2b9f9532cda79abf31, - limb3: 0x12a290cb259d69a358606a91 + limb0: 0x1ab11908ec8678c9275642f6, + limb1: 0xf8a973c80c8108c03ebf8fcf, + limb2: 0xd56857adec8dd6122620dd87, + limb3: 0xf68b5ac044e2315875e77f3 } }, G2Line { r0a0: u384 { - limb0: 0x151e3ced15fb8314da164adf, - limb1: 0x21217c66e9a4b8c661524b6b, - limb2: 0x976a5d936327fbd5cdef3f1b, - limb3: 0x1832048f42fbf51868bfccee + limb0: 0xc4642e9d6d8cbb71aebe57b1, + limb1: 0xf7fff784f0c8d4e518995e4d, + limb2: 0x2baa66d73a111793d82f83e5, + limb3: 0xe50c2b5a9ecbc789ebae3b5 }, r0a1: u384 { - limb0: 0xae0e65fd70b63b94124ebc3b, - limb1: 0xe1dc19b0841974acfd5cadf4, - limb2: 0xa63b032b4671114052815ca5, - limb3: 0x9e2819a76d3630e5d8405af + limb0: 0x90b59d9f7380847d5d0dc384, + limb1: 0xff4fa2c0a144a80e0fc49fad, + limb2: 0xff8845e7cad5c1775014c370, + limb3: 0x5650398cf0fed3d334d29d }, r1a0: u384 { - limb0: 0x35f9e79ec71f49895a2c9ab5, - limb1: 0x47388cadd343b7e9596d9bb0, - limb2: 0xeb694551e81209e0ee29da8a, - limb3: 0x2b6ac41bf714305a78247b5 + limb0: 0xf4f8558650c8a338169ea0de, + limb1: 0x5cc55c5d8c7196872074d375, + limb2: 0xec2ebc2e24e8feeb33ea1cfa, + limb3: 0x14fd1070bdce430cba0e17c }, r1a1: u384 { - limb0: 0x93fd431dade3cad483a2d72c, - limb1: 0x1bb779bc8f9a6b431197be16, - limb2: 0xba7b50019c71f466358f7c39, - limb3: 0xd2565d21353fab306446ee5 + limb0: 0xab9f7814730f280ee2a02fc1, + limb1: 0xefb69eda6bb2764b09831750, + limb2: 0xe836eeda5587e7b57a8ece6e, + limb3: 0xa4d7fcf06c88516e47496fb } }, G2Line { r0a0: u384 { - limb0: 0x151e3ced15fb8314da164adf, - limb1: 0x21217c66e9a4b8c661524b6b, - limb2: 0x976a5d936327fbd5cdef3f1b, - limb3: 0x1832048f42fbf51868bfccee + limb0: 0xc4642e9d6d8cbb71aebe57b1, + limb1: 0xf7fff784f0c8d4e518995e4d, + limb2: 0x2baa66d73a111793d82f83e5, + limb3: 0xe50c2b5a9ecbc789ebae3b5 }, r0a1: u384 { - limb0: 0xae0e65fd70b63b94124ebc3b, - limb1: 0xe1dc19b0841974acfd5cadf4, - limb2: 0xa63b032b4671114052815ca5, - limb3: 0x9e2819a76d3630e5d8405af + limb0: 0x90b59d9f7380847d5d0dc384, + limb1: 0xff4fa2c0a144a80e0fc49fad, + limb2: 0xff8845e7cad5c1775014c370, + limb3: 0x5650398cf0fed3d334d29d }, r1a0: u384 { - limb0: 0x35f9e79ec71f49895a2c9ab5, - limb1: 0x47388cadd343b7e9596d9bb0, - limb2: 0xeb694551e81209e0ee29da8a, - limb3: 0x2b6ac41bf714305a78247b5 + limb0: 0xf4f8558650c8a338169ea0de, + limb1: 0x5cc55c5d8c7196872074d375, + limb2: 0xec2ebc2e24e8feeb33ea1cfa, + limb3: 0x14fd1070bdce430cba0e17c }, r1a1: u384 { - limb0: 0x93fd431dade3cad483a2d72c, - limb1: 0x1bb779bc8f9a6b431197be16, - limb2: 0xba7b50019c71f466358f7c39, - limb3: 0xd2565d21353fab306446ee5 + limb0: 0xab9f7814730f280ee2a02fc1, + limb1: 0xefb69eda6bb2764b09831750, + limb2: 0xe836eeda5587e7b57a8ece6e, + limb3: 0xa4d7fcf06c88516e47496fb } }, G2Line { r0a0: u384 { - limb0: 0x486fc9171adc710e13fe8989, - limb1: 0xcc83307ed49adab1d0fb75f8, - limb2: 0xc9d999ec3f80f4076ee5a3b0, - limb3: 0x19673d3cc634ea1e4943ecc0 + limb0: 0x8132791fbf0f61c8cc56c03d, + limb1: 0xb983ccbb1bf2e2abb3e5bd78, + limb2: 0x98dac7465cffab2ca722113c, + limb3: 0xfb1c02f6646ea94d6af78d7 }, r0a1: u384 { - limb0: 0x2e4f0d612609b6da29c6b4aa, - limb1: 0xbf31a99988b98fd3c0c891a4, - limb2: 0xdd2168dea174eebbee0e3bf6, - limb3: 0x19348eb1058b40400e5ddfea + limb0: 0xab96c649bcddcb166cf61f3, + limb1: 0xb308602db5ab37b4be5b7551, + limb2: 0xf9b876ba9723fa59ac474902, + limb3: 0x991e8aca1f08f731e84269d }, r1a0: u384 { - limb0: 0x434454cd75840f6678e5b6c9, - limb1: 0xf1021509716344c3714ed46b, - limb2: 0xd48665548d1d431124c4f291, - limb3: 0x137cc663f1ccef2fa9e12cab + limb0: 0xaadbf7e0e6ce293672748415, + limb1: 0x7be42cc5342cc86f8453e1e5, + limb2: 0xcb661a8ae46336a2dc638311, + limb3: 0x647749537356b59e188b0d7 }, r1a1: u384 { - limb0: 0x1858ce711b71ef9313d5ed94, - limb1: 0xe853ea438e7e77ece8b8abb1, - limb2: 0x96777115ae384ab8bb69164b, - limb3: 0x15719bb3c12a4999a113b0c1 + limb0: 0xe95aa4223700275853a79b29, + limb1: 0x3c2c34c1485f2be3de77374b, + limb2: 0x138e49879af993bcbd7a8738, + limb3: 0x609d7940d3acb01483ccd06 } }, G2Line { r0a0: u384 { - limb0: 0x486fc9171adc710e13fe8989, - limb1: 0xcc83307ed49adab1d0fb75f8, - limb2: 0xc9d999ec3f80f4076ee5a3b0, - limb3: 0x19673d3cc634ea1e4943ecc0 + limb0: 0x8132791fbf0f61c8cc56c03d, + limb1: 0xb983ccbb1bf2e2abb3e5bd78, + limb2: 0x98dac7465cffab2ca722113c, + limb3: 0xfb1c02f6646ea94d6af78d7 }, r0a1: u384 { - limb0: 0x2e4f0d612609b6da29c6b4aa, - limb1: 0xbf31a99988b98fd3c0c891a4, - limb2: 0xdd2168dea174eebbee0e3bf6, - limb3: 0x19348eb1058b40400e5ddfea + limb0: 0xab96c649bcddcb166cf61f3, + limb1: 0xb308602db5ab37b4be5b7551, + limb2: 0xf9b876ba9723fa59ac474902, + limb3: 0x991e8aca1f08f731e84269d }, r1a0: u384 { - limb0: 0x434454cd75840f6678e5b6c9, - limb1: 0xf1021509716344c3714ed46b, - limb2: 0xd48665548d1d431124c4f291, - limb3: 0x137cc663f1ccef2fa9e12cab + limb0: 0xaadbf7e0e6ce293672748415, + limb1: 0x7be42cc5342cc86f8453e1e5, + limb2: 0xcb661a8ae46336a2dc638311, + limb3: 0x647749537356b59e188b0d7 }, r1a1: u384 { - limb0: 0x1858ce711b71ef9313d5ed94, - limb1: 0xe853ea438e7e77ece8b8abb1, - limb2: 0x96777115ae384ab8bb69164b, - limb3: 0x15719bb3c12a4999a113b0c1 + limb0: 0xe95aa4223700275853a79b29, + limb1: 0x3c2c34c1485f2be3de77374b, + limb2: 0x138e49879af993bcbd7a8738, + limb3: 0x609d7940d3acb01483ccd06 } }, G2Line { r0a0: u384 { - limb0: 0x18536737334187911756f006, - limb1: 0xc244442ba7c14855956db823, - limb2: 0xe0646d69eeaef40d557bd711, - limb3: 0x471222f11df6d52d4ba41d6 + limb0: 0xc20d5e474268266e609764a1, + limb1: 0x5166c4ce0297fc5f30936e5b, + limb2: 0xc7dea5e153508e1df4f63ed2, + limb3: 0x1999c3f7936a801a30a6ae22 }, r0a1: u384 { - limb0: 0x1f0e104de89f6a388a6710a8, - limb1: 0xef91aa1556d923bb34d823a9, - limb2: 0x26587972278edc8eb922271f, - limb3: 0xb364ae946375b9a78dfddaf + limb0: 0xaebe36f47d59ba5e849ddafb, + limb1: 0x4289ebf13a5ba3a6cafdc406, + limb2: 0x44a70465a93804dc7bbb46d5, + limb3: 0x12db05199937652fe0aff5d1 }, r1a0: u384 { - limb0: 0x514fbc8d4de2a7d383442023, - limb1: 0xd0d779e2c7f75e67f24a3be4, - limb2: 0xe0645f5c696982e9e3c22b9b, - limb3: 0x1545173fb7cf49432c4c4d94 + limb0: 0xd5e621e36ca87ea1acf3a9cc, + limb1: 0xc51912ba8ae313dcc0e5478c, + limb2: 0xf8fc37e8267f89ccc3a5f63c, + limb3: 0x107547a3ba2f9b5dea61a5a6 }, r1a1: u384 { - limb0: 0x7156832d33f0028b78de2378, - limb1: 0x97784f9abd4e6a24165ac246, - limb2: 0x21f1a98c4fbfea99983a4a9d, - limb3: 0x12402e7b514c40e7ce54535c + limb0: 0x5067de93bc65c07d148f3b8f, + limb1: 0x4ed753aaf37f01e7a13ae3c5, + limb2: 0xf9569a2af51a3b724796be8c, + limb3: 0x7046df561b026448f873a21 } }, G2Line { r0a0: u384 { - limb0: 0x18536737334187911756f006, - limb1: 0xc244442ba7c14855956db823, - limb2: 0xe0646d69eeaef40d557bd711, - limb3: 0x471222f11df6d52d4ba41d6 + limb0: 0xc20d5e474268266e609764a1, + limb1: 0x5166c4ce0297fc5f30936e5b, + limb2: 0xc7dea5e153508e1df4f63ed2, + limb3: 0x1999c3f7936a801a30a6ae22 }, r0a1: u384 { - limb0: 0x1f0e104de89f6a388a6710a8, - limb1: 0xef91aa1556d923bb34d823a9, - limb2: 0x26587972278edc8eb922271f, - limb3: 0xb364ae946375b9a78dfddaf + limb0: 0xaebe36f47d59ba5e849ddafb, + limb1: 0x4289ebf13a5ba3a6cafdc406, + limb2: 0x44a70465a93804dc7bbb46d5, + limb3: 0x12db05199937652fe0aff5d1 }, r1a0: u384 { - limb0: 0x514fbc8d4de2a7d383442023, - limb1: 0xd0d779e2c7f75e67f24a3be4, - limb2: 0xe0645f5c696982e9e3c22b9b, - limb3: 0x1545173fb7cf49432c4c4d94 + limb0: 0xd5e621e36ca87ea1acf3a9cc, + limb1: 0xc51912ba8ae313dcc0e5478c, + limb2: 0xf8fc37e8267f89ccc3a5f63c, + limb3: 0x107547a3ba2f9b5dea61a5a6 }, r1a1: u384 { - limb0: 0x7156832d33f0028b78de2378, - limb1: 0x97784f9abd4e6a24165ac246, - limb2: 0x21f1a98c4fbfea99983a4a9d, - limb3: 0x12402e7b514c40e7ce54535c + limb0: 0x5067de93bc65c07d148f3b8f, + limb1: 0x4ed753aaf37f01e7a13ae3c5, + limb2: 0xf9569a2af51a3b724796be8c, + limb3: 0x7046df561b026448f873a21 } }, G2Line { r0a0: u384 { - limb0: 0x950b525af96299c1e6b99fc3, - limb1: 0xb877b2d6d76f0eb06e687ee5, - limb2: 0x217d698a79326f6f697ad772, - limb3: 0x117848e7d668a88f4c106b1c + limb0: 0x2d4f842c2b158b70c04a80f7, + limb1: 0x968b4ac6dc295e1dbc496699, + limb2: 0xc210e04612e096c69cac102f, + limb3: 0x1858d4748f4c5543dfef9e43 }, r0a1: u384 { - limb0: 0x1b16130bef5d182e94760e21, - limb1: 0x624616831a6918117300d1ca, - limb2: 0x6b270afb8f12aa85a7645e98, - limb3: 0xc6caa5f2947f6c25b890f51 + limb0: 0x985c013c44fe10837f5f20b9, + limb1: 0x749f4362acc46b6de103c652, + limb2: 0x3c707b6dd2ca0c197d1e9080, + limb3: 0x157f013cdf62850eb2a8792b }, r1a0: u384 { - limb0: 0x88679dc3a996f14ab9047e87, - limb1: 0x68d37e014f605e341e29d15e, - limb2: 0x9e2e0fbc6551d87e17a9a72b, - limb3: 0x30c066caa55019bff340459 + limb0: 0xd8ef3fdc1759347420594dfe, + limb1: 0xc6b0f222d64c067795facdc, + limb2: 0xb44288a7d567c93e4535befc, + limb3: 0x128c0c2228bc702f6d434038 }, r1a1: u384 { - limb0: 0x409417a2c3aac3ae449e035b, - limb1: 0x9a9f5cf58894174d66283e45, - limb2: 0xd0ee3e1108d3fd9da5f0ecdc, - limb3: 0x148876b7bfd702c5870a0860 + limb0: 0x8759423b1d5b109df2c38fc8, + limb1: 0xe33b9514f8627230b468d9c3, + limb2: 0x731585f0fff3a02856106c44, + limb3: 0xb733d0ba92fed5038875ae1 } }, G2Line { r0a0: u384 { - limb0: 0x950b525af96299c1e6b99fc3, - limb1: 0xb877b2d6d76f0eb06e687ee5, - limb2: 0x217d698a79326f6f697ad772, - limb3: 0x117848e7d668a88f4c106b1c + limb0: 0x2d4f842c2b158b70c04a80f7, + limb1: 0x968b4ac6dc295e1dbc496699, + limb2: 0xc210e04612e096c69cac102f, + limb3: 0x1858d4748f4c5543dfef9e43 }, r0a1: u384 { - limb0: 0x1b16130bef5d182e94760e21, - limb1: 0x624616831a6918117300d1ca, - limb2: 0x6b270afb8f12aa85a7645e98, - limb3: 0xc6caa5f2947f6c25b890f51 + limb0: 0x985c013c44fe10837f5f20b9, + limb1: 0x749f4362acc46b6de103c652, + limb2: 0x3c707b6dd2ca0c197d1e9080, + limb3: 0x157f013cdf62850eb2a8792b }, r1a0: u384 { - limb0: 0x88679dc3a996f14ab9047e87, - limb1: 0x68d37e014f605e341e29d15e, - limb2: 0x9e2e0fbc6551d87e17a9a72b, - limb3: 0x30c066caa55019bff340459 + limb0: 0xd8ef3fdc1759347420594dfe, + limb1: 0xc6b0f222d64c067795facdc, + limb2: 0xb44288a7d567c93e4535befc, + limb3: 0x128c0c2228bc702f6d434038 }, r1a1: u384 { - limb0: 0x409417a2c3aac3ae449e035b, - limb1: 0x9a9f5cf58894174d66283e45, - limb2: 0xd0ee3e1108d3fd9da5f0ecdc, - limb3: 0x148876b7bfd702c5870a0860 + limb0: 0x8759423b1d5b109df2c38fc8, + limb1: 0xe33b9514f8627230b468d9c3, + limb2: 0x731585f0fff3a02856106c44, + limb3: 0xb733d0ba92fed5038875ae1 } }, G2Line { r0a0: u384 { - limb0: 0xe83482dd4a24a2fd84811bf9, - limb1: 0x1bc8739349ce1493977bb4d1, - limb2: 0xbcd199e05b04c3e1b9d2d429, - limb3: 0x10f3b6cccf83a57bb10e9a84 + limb0: 0x860b6f315a2f90716662be7f, + limb1: 0x80489763e8955ca32de4ee22, + limb2: 0xc67e6fa7cef17da67cb15083, + limb3: 0x922830037a971cf69976d7e }, r0a1: u384 { - limb0: 0x4a7828eded9e8e2eb94c9960, - limb1: 0x57452b5144c412f7153971e9, - limb2: 0x12347f1311879fa2d514ee81, - limb3: 0x1657719ee3183f4e36360fc1 + limb0: 0xcda5d1e7559a20a7358a58e4, + limb1: 0xbc11befc848c87d8fc4d66c6, + limb2: 0x152c2ea315e81317935bd4fb, + limb3: 0xa235be0c9cab735f0e898e2 }, r1a0: u384 { - limb0: 0xa3a92e66fcf5209ff30906c8, - limb1: 0x1f2248adfe7e73c04ff66c83, - limb2: 0x1180f9d688c92961b44d482c, - limb3: 0x121474f3a9df38c322c75847 + limb0: 0x43632c8aa6f2880543553857, + limb1: 0x5334dae961578287e06d0094, + limb2: 0x70b5594c022647c06459759c, + limb3: 0xa07b70e214e9076c435122a }, r1a1: u384 { - limb0: 0xc4e3bf32de8800bf35252ea2, - limb1: 0x6b4a7a55b96abfe85f6ff1c3, - limb2: 0x960f4f3e0b3a06c5ced9ff82, - limb3: 0x71a13171352ac7710800c97 + limb0: 0xf4844af485913c9953117a8d, + limb1: 0xe7b7935da50a80441c32d37b, + limb2: 0x897e8fdbb5b9cf0f8303f8e5, + limb3: 0x7503324a7b4508adc3f488f } }, G2Line { r0a0: u384 { - limb0: 0xe83482dd4a24a2fd84811bf9, - limb1: 0x1bc8739349ce1493977bb4d1, - limb2: 0xbcd199e05b04c3e1b9d2d429, - limb3: 0x10f3b6cccf83a57bb10e9a84 + limb0: 0x860b6f315a2f90716662be7f, + limb1: 0x80489763e8955ca32de4ee22, + limb2: 0xc67e6fa7cef17da67cb15083, + limb3: 0x922830037a971cf69976d7e }, r0a1: u384 { - limb0: 0x4a7828eded9e8e2eb94c9960, - limb1: 0x57452b5144c412f7153971e9, - limb2: 0x12347f1311879fa2d514ee81, - limb3: 0x1657719ee3183f4e36360fc1 + limb0: 0xcda5d1e7559a20a7358a58e4, + limb1: 0xbc11befc848c87d8fc4d66c6, + limb2: 0x152c2ea315e81317935bd4fb, + limb3: 0xa235be0c9cab735f0e898e2 }, r1a0: u384 { - limb0: 0xa3a92e66fcf5209ff30906c8, - limb1: 0x1f2248adfe7e73c04ff66c83, - limb2: 0x1180f9d688c92961b44d482c, - limb3: 0x121474f3a9df38c322c75847 + limb0: 0x43632c8aa6f2880543553857, + limb1: 0x5334dae961578287e06d0094, + limb2: 0x70b5594c022647c06459759c, + limb3: 0xa07b70e214e9076c435122a }, r1a1: u384 { - limb0: 0xc4e3bf32de8800bf35252ea2, - limb1: 0x6b4a7a55b96abfe85f6ff1c3, - limb2: 0x960f4f3e0b3a06c5ced9ff82, - limb3: 0x71a13171352ac7710800c97 + limb0: 0xf4844af485913c9953117a8d, + limb1: 0xe7b7935da50a80441c32d37b, + limb2: 0x897e8fdbb5b9cf0f8303f8e5, + limb3: 0x7503324a7b4508adc3f488f } }, G2Line { r0a0: u384 { - limb0: 0x79aeef22a68e3fd525bbe6d1, - limb1: 0x14a0c42066ebe5a556c0f2e6, - limb2: 0x39412717606b8691ccfeffb9, - limb3: 0xd48cb46d24f991c687ca284 + limb0: 0xa13b69b223ff755a6bd7b6e1, + limb1: 0x80985b5e707de96919f759c3, + limb2: 0xb5f856e4930e84e9e5b40cf9, + limb3: 0xdcd6d556f64fc1009d98dbb }, r0a1: u384 { - limb0: 0xb971b38b3d2fb5a93580b2f3, - limb1: 0xe78caf86bc1748f5968fbb44, - limb2: 0x1f379347dfe7256a4b5048f5, - limb3: 0x17da3e969cc120031bd177ad + limb0: 0xf3784420b2d1c1a1d15ea8f5, + limb1: 0xf4313c59e35dd590aeb9f7b9, + limb2: 0x45f00c03c6ed584fef426c5c, + limb3: 0x8b83eceeac71322171e7690 }, r1a0: u384 { - limb0: 0x58de97953190d3e7c789a4c7, - limb1: 0xefa93e12dc31816a5371faa0, - limb2: 0x28b5b6cd86d01eaacd379cca, - limb3: 0xe00f5a436928e08d30585e4 + limb0: 0x512dac7f1bdd74c2c4be9793, + limb1: 0x5ea3d544b62b42822ee414d6, + limb2: 0xd87a865e5dcec05f817280d7, + limb3: 0x84fbde3914ff91d633e939a }, r1a1: u384 { - limb0: 0xd4f5fe8ccb5cf1db60078f5b, - limb1: 0x887bf00db5ff2c63bad5c6b, - limb2: 0x3808063fabafae9e47141df0, - limb3: 0x154e2f5eae7d6d162d718664 + limb0: 0x5e2f431d31334b34508877ba, + limb1: 0x488604e3d9d12df3093b79e3, + limb2: 0x895633b27df1d4f777506673, + limb3: 0x970f680385697cb7c7f4d1e } }, G2Line { r0a0: u384 { - limb0: 0x79aeef22a68e3fd525bbe6d1, - limb1: 0x14a0c42066ebe5a556c0f2e6, - limb2: 0x39412717606b8691ccfeffb9, - limb3: 0xd48cb46d24f991c687ca284 + limb0: 0xa13b69b223ff755a6bd7b6e1, + limb1: 0x80985b5e707de96919f759c3, + limb2: 0xb5f856e4930e84e9e5b40cf9, + limb3: 0xdcd6d556f64fc1009d98dbb }, r0a1: u384 { - limb0: 0xb971b38b3d2fb5a93580b2f3, - limb1: 0xe78caf86bc1748f5968fbb44, - limb2: 0x1f379347dfe7256a4b5048f5, - limb3: 0x17da3e969cc120031bd177ad + limb0: 0xf3784420b2d1c1a1d15ea8f5, + limb1: 0xf4313c59e35dd590aeb9f7b9, + limb2: 0x45f00c03c6ed584fef426c5c, + limb3: 0x8b83eceeac71322171e7690 }, r1a0: u384 { - limb0: 0x58de97953190d3e7c789a4c7, - limb1: 0xefa93e12dc31816a5371faa0, - limb2: 0x28b5b6cd86d01eaacd379cca, - limb3: 0xe00f5a436928e08d30585e4 + limb0: 0x512dac7f1bdd74c2c4be9793, + limb1: 0x5ea3d544b62b42822ee414d6, + limb2: 0xd87a865e5dcec05f817280d7, + limb3: 0x84fbde3914ff91d633e939a }, r1a1: u384 { - limb0: 0xd4f5fe8ccb5cf1db60078f5b, - limb1: 0x887bf00db5ff2c63bad5c6b, - limb2: 0x3808063fabafae9e47141df0, - limb3: 0x154e2f5eae7d6d162d718664 + limb0: 0x5e2f431d31334b34508877ba, + limb1: 0x488604e3d9d12df3093b79e3, + limb2: 0x895633b27df1d4f777506673, + limb3: 0x970f680385697cb7c7f4d1e } }, G2Line { r0a0: u384 { - limb0: 0xdeb7cda3d33a9db18df58e07, - limb1: 0x72823d4d17e0c49855f8fc59, - limb2: 0xa2f30171a0ce9a96a5c0f357, - limb3: 0x904fc4a5f60c7d6eaaf3903 + limb0: 0xe5272164cf1b0133c140737b, + limb1: 0x56e82ac8d15263eb5ace1354, + limb2: 0x6d447697c7cd7549c60a7688, + limb3: 0xedafb905f7621a5c591e0c5 }, r0a1: u384 { - limb0: 0x4658dab03761c9a62900048e, - limb1: 0xf42fe8c5c73215665dd53932, - limb2: 0xf994ce083a1f38497173ff65, - limb3: 0x10ac7913e5edac62e0d6c593 + limb0: 0x906d5adfd13528632bac04c2, + limb1: 0x7cc3ba74fddc84a244380973, + limb2: 0x8d827988140e2c4514ec15c4, + limb3: 0x12845855e4a227f3a384a408 }, r1a0: u384 { - limb0: 0xb311f2b282fc71046f77cbf5, - limb1: 0x82b17277f5cd90e837a3531b, - limb2: 0xc10167bea20ffb7bb1df4501, - limb3: 0xc1a37e26e49202c2d757a8b + limb0: 0xfbb6d44b69ed3401c0fff845, + limb1: 0xae313f2c29e366e7baf2c5b7, + limb2: 0x8ef981dce32636b7416fa2ae, + limb3: 0x292e9ea4da6457bc374a7d2 }, r1a1: u384 { - limb0: 0xf209f3dec1312f7501a80aa5, - limb1: 0x58ffacd503d7e4e7788c2b01, - limb2: 0x5987884a278b93cf97a6bba5, - limb3: 0x75b03658d3fd7f8154a4efa + limb0: 0x9c6ae615af882c985f01e0, + limb1: 0xce95ae73222809312288dc5a, + limb2: 0xba831cb00697e1b8fcef402c, + limb3: 0xb8c47eb80b53a275938bb83 } }, G2Line { r0a0: u384 { - limb0: 0xdeb7cda3d33a9db18df58e07, - limb1: 0x72823d4d17e0c49855f8fc59, - limb2: 0xa2f30171a0ce9a96a5c0f357, - limb3: 0x904fc4a5f60c7d6eaaf3903 + limb0: 0xe5272164cf1b0133c140737b, + limb1: 0x56e82ac8d15263eb5ace1354, + limb2: 0x6d447697c7cd7549c60a7688, + limb3: 0xedafb905f7621a5c591e0c5 }, r0a1: u384 { - limb0: 0x4658dab03761c9a62900048e, - limb1: 0xf42fe8c5c73215665dd53932, - limb2: 0xf994ce083a1f38497173ff65, - limb3: 0x10ac7913e5edac62e0d6c593 + limb0: 0x906d5adfd13528632bac04c2, + limb1: 0x7cc3ba74fddc84a244380973, + limb2: 0x8d827988140e2c4514ec15c4, + limb3: 0x12845855e4a227f3a384a408 }, r1a0: u384 { - limb0: 0xb311f2b282fc71046f77cbf5, - limb1: 0x82b17277f5cd90e837a3531b, - limb2: 0xc10167bea20ffb7bb1df4501, - limb3: 0xc1a37e26e49202c2d757a8b + limb0: 0xfbb6d44b69ed3401c0fff845, + limb1: 0xae313f2c29e366e7baf2c5b7, + limb2: 0x8ef981dce32636b7416fa2ae, + limb3: 0x292e9ea4da6457bc374a7d2 }, r1a1: u384 { - limb0: 0xf209f3dec1312f7501a80aa5, - limb1: 0x58ffacd503d7e4e7788c2b01, - limb2: 0x5987884a278b93cf97a6bba5, - limb3: 0x75b03658d3fd7f8154a4efa + limb0: 0x9c6ae615af882c985f01e0, + limb1: 0xce95ae73222809312288dc5a, + limb2: 0xba831cb00697e1b8fcef402c, + limb3: 0xb8c47eb80b53a275938bb83 } }, G2Line { r0a0: u384 { - limb0: 0xc1ec0ad5389a8947a54f26bb, - limb1: 0x9d9f5380bb743c8e64d4a4e6, - limb2: 0xe2698ff4e91d8412c1ec4b92, - limb3: 0x30a02f437f2fc2a340bf2a6 + limb0: 0x52df5b696e1becaa98f00a92, + limb1: 0xcd016ddadd60beabda8503a0, + limb2: 0x20cc1982ef167def13c8207f, + limb3: 0x17bf12d0ecd9a4525961c2f }, r0a1: u384 { - limb0: 0x6bcb9d45890f9796fe8aca6c, - limb1: 0x574975f1145255fc56f40a65, - limb2: 0xf8d284976611eb8299e64a14, - limb3: 0xaaef2e491be454da0bfe204 + limb0: 0x47affebfde6c2f3b34110783, + limb1: 0x7a435b0a3b587f0dc236dabc, + limb2: 0x19eed2baf197042d40f704ab, + limb3: 0x1ae68f7ce00aa595b16ea94 }, r1a0: u384 { - limb0: 0x77b4b6ddc340fdc4ff6b32cd, - limb1: 0x72c5d392248ac0e721e2662b, - limb2: 0x953024537dad13df99bc57d7, - limb3: 0xa25f5ffada1ae56569f6688 + limb0: 0x574a43fd4e8e50b1d3979b80, + limb1: 0x19bb3060fe30741cb331d963, + limb2: 0x201f17b9b80815aa4b4e4625, + limb3: 0x959e83ec15c2aba4a4e3c1f }, r1a1: u384 { - limb0: 0x6c2a2479e9e7dc0ebbccaaaa, - limb1: 0xd297e8df1687db8f5e5beedb, - limb2: 0x12957e6f23678e88684164ca, - limb3: 0x4d4c6b994cd47cbe5a903bd + limb0: 0xd05ac3f186ad7c5377623e91, + limb1: 0x6dddc3eed22c19c4e5d37704, + limb2: 0xbc460ae76bc593965c4d8a7, + limb3: 0x6784892eaa86e41c96c34b7 } }, G2Line { r0a0: u384 { - limb0: 0xc1ec0ad5389a8947a54f26bb, - limb1: 0x9d9f5380bb743c8e64d4a4e6, - limb2: 0xe2698ff4e91d8412c1ec4b92, - limb3: 0x30a02f437f2fc2a340bf2a6 + limb0: 0x52df5b696e1becaa98f00a92, + limb1: 0xcd016ddadd60beabda8503a0, + limb2: 0x20cc1982ef167def13c8207f, + limb3: 0x17bf12d0ecd9a4525961c2f }, r0a1: u384 { - limb0: 0x6bcb9d45890f9796fe8aca6c, - limb1: 0x574975f1145255fc56f40a65, - limb2: 0xf8d284976611eb8299e64a14, - limb3: 0xaaef2e491be454da0bfe204 + limb0: 0x47affebfde6c2f3b34110783, + limb1: 0x7a435b0a3b587f0dc236dabc, + limb2: 0x19eed2baf197042d40f704ab, + limb3: 0x1ae68f7ce00aa595b16ea94 }, r1a0: u384 { - limb0: 0x77b4b6ddc340fdc4ff6b32cd, - limb1: 0x72c5d392248ac0e721e2662b, - limb2: 0x953024537dad13df99bc57d7, - limb3: 0xa25f5ffada1ae56569f6688 + limb0: 0x574a43fd4e8e50b1d3979b80, + limb1: 0x19bb3060fe30741cb331d963, + limb2: 0x201f17b9b80815aa4b4e4625, + limb3: 0x959e83ec15c2aba4a4e3c1f }, r1a1: u384 { - limb0: 0x6c2a2479e9e7dc0ebbccaaaa, - limb1: 0xd297e8df1687db8f5e5beedb, - limb2: 0x12957e6f23678e88684164ca, - limb3: 0x4d4c6b994cd47cbe5a903bd + limb0: 0xd05ac3f186ad7c5377623e91, + limb1: 0x6dddc3eed22c19c4e5d37704, + limb2: 0xbc460ae76bc593965c4d8a7, + limb3: 0x6784892eaa86e41c96c34b7 } }, G2Line { r0a0: u384 { - limb0: 0x3aa3240008d8003fa25ab16a, - limb1: 0x968e580f0dc212402168ba60, - limb2: 0x9a7897cfab0338ee42394b1e, - limb3: 0x1347501f1fc0ab467afe4bb2 + limb0: 0x4c02a54349db5784abdab240, + limb1: 0x6872f8869d240877b8703a33, + limb2: 0x4a0b4928c1269af2750df604, + limb3: 0x19c873ccd3f7eed104ff6044 }, r0a1: u384 { - limb0: 0x2a04be3084488a17e187e5f2, - limb1: 0xfffe4ae2fa5a52eb58aea6e4, - limb2: 0x5742ed38683e4a9c8aa6fe10, - limb3: 0xf15519041e79ba6a6910d0f + limb0: 0x10fb41ee9392375c31efacd, + limb1: 0x125ce16ad77425b91342bf8c, + limb2: 0xf9fc2d6b6b5aa1d32d2152f8, + limb3: 0x8adc2e7073156622dacb81c }, r1a0: u384 { - limb0: 0x2854e6344b9b0cefc1132f01, - limb1: 0x19dc9aa5a40e8e3967ee7cda, - limb2: 0xc4def73d9048838da41545c3, - limb3: 0x698fb3823f306fe5086a3a + limb0: 0x35bed1cd554cb4641774402b, + limb1: 0x7bf3b76d2528ca7864e14d57, + limb2: 0x1671658e4546b8ad5a89a995, + limb3: 0x6426aaafe1ac9794b58642b }, r1a1: u384 { - limb0: 0x6aaa8bcdc876ec18760bc12c, - limb1: 0x298621bbe339ce48cbbe45d9, - limb2: 0xeeabadd52bb8d9f3abc854b6, - limb3: 0x1442dded5bbc862e570298db + limb0: 0x6abd6ada99b127be1c061723, + limb1: 0x7e3cebe83ec2ab8340ed3806, + limb2: 0x8a37ef5153f8c3fd31b488a1, + limb3: 0x17699b53d2312e03833167f1 } }, G2Line { r0a0: u384 { - limb0: 0x3aa3240008d8003fa25ab16a, - limb1: 0x968e580f0dc212402168ba60, - limb2: 0x9a7897cfab0338ee42394b1e, - limb3: 0x1347501f1fc0ab467afe4bb2 + limb0: 0x4c02a54349db5784abdab240, + limb1: 0x6872f8869d240877b8703a33, + limb2: 0x4a0b4928c1269af2750df604, + limb3: 0x19c873ccd3f7eed104ff6044 }, r0a1: u384 { - limb0: 0x2a04be3084488a17e187e5f2, - limb1: 0xfffe4ae2fa5a52eb58aea6e4, - limb2: 0x5742ed38683e4a9c8aa6fe10, - limb3: 0xf15519041e79ba6a6910d0f + limb0: 0x10fb41ee9392375c31efacd, + limb1: 0x125ce16ad77425b91342bf8c, + limb2: 0xf9fc2d6b6b5aa1d32d2152f8, + limb3: 0x8adc2e7073156622dacb81c }, r1a0: u384 { - limb0: 0x2854e6344b9b0cefc1132f01, - limb1: 0x19dc9aa5a40e8e3967ee7cda, - limb2: 0xc4def73d9048838da41545c3, - limb3: 0x698fb3823f306fe5086a3a + limb0: 0x35bed1cd554cb4641774402b, + limb1: 0x7bf3b76d2528ca7864e14d57, + limb2: 0x1671658e4546b8ad5a89a995, + limb3: 0x6426aaafe1ac9794b58642b }, r1a1: u384 { - limb0: 0x6aaa8bcdc876ec18760bc12c, - limb1: 0x298621bbe339ce48cbbe45d9, - limb2: 0xeeabadd52bb8d9f3abc854b6, - limb3: 0x1442dded5bbc862e570298db + limb0: 0x6abd6ada99b127be1c061723, + limb1: 0x7e3cebe83ec2ab8340ed3806, + limb2: 0x8a37ef5153f8c3fd31b488a1, + limb3: 0x17699b53d2312e03833167f1 } }, G2Line { r0a0: u384 { - limb0: 0xbee598cf613d6f67eb082223, - limb1: 0x2afe199d51e21c9bd82ac6a2, - limb2: 0xf661d32e75c2a3e403f008e4, - limb3: 0x438083f8f689874ef875276 + limb0: 0xd8d438232f834eb3d8a75c58, + limb1: 0x5898c3d869b83677ba4ea565, + limb2: 0x25b29fc168a9f83fd5149aa3, + limb3: 0x8e9f7777a77fb88a04faadc }, r0a1: u384 { - limb0: 0xd61f8cdf24720f7b27fea45, - limb1: 0x69e881fbd51c6a83a225950f, - limb2: 0xeb34e0738fa1d2940f5b1f61, - limb3: 0x199b15d2072bf2bce7fec256 + limb0: 0x15085b089ca2f093e0cd495d, + limb1: 0x4655d2014e7ec742979bf84e, + limb2: 0xa377d1234a671ae902946d26, + limb3: 0x18157192540cf1e4f6ab19ac }, r1a0: u384 { - limb0: 0x16e98174f0f9245a7bb53c83, - limb1: 0xa19d8f001cc1c1beb92a1ca5, - limb2: 0x736307c2ba6e76dbe551b20e, - limb3: 0xe16893f577087507fcdf74c + limb0: 0xdef37882030c9b3735e87218, + limb1: 0x89a9d8f0afe4af71215eb880, + limb2: 0x4b1a42b2be948f25f9f23fc3, + limb3: 0x11ebc09efd8f944c09e1c4bf }, r1a1: u384 { - limb0: 0x8f3b9f7f1e8f7d71cd4d1130, - limb1: 0xa648ce374b6e6d17efb237ac, - limb2: 0xdbcf02de08eb18d34ac389d4, - limb3: 0xd07cee0f625d4bc9d2017db + limb0: 0xb4cdff8e493f1f356f90bb24, + limb1: 0xe7b159aaaa070e69f90d0fcb, + limb2: 0x2c2e763385639e33da32cdb7, + limb3: 0x13410f70d8a15a6b82bfd33a } }, G2Line { r0a0: u384 { - limb0: 0xbee598cf613d6f67eb082223, - limb1: 0x2afe199d51e21c9bd82ac6a2, - limb2: 0xf661d32e75c2a3e403f008e4, - limb3: 0x438083f8f689874ef875276 + limb0: 0xd8d438232f834eb3d8a75c58, + limb1: 0x5898c3d869b83677ba4ea565, + limb2: 0x25b29fc168a9f83fd5149aa3, + limb3: 0x8e9f7777a77fb88a04faadc }, r0a1: u384 { - limb0: 0xd61f8cdf24720f7b27fea45, - limb1: 0x69e881fbd51c6a83a225950f, - limb2: 0xeb34e0738fa1d2940f5b1f61, - limb3: 0x199b15d2072bf2bce7fec256 + limb0: 0x15085b089ca2f093e0cd495d, + limb1: 0x4655d2014e7ec742979bf84e, + limb2: 0xa377d1234a671ae902946d26, + limb3: 0x18157192540cf1e4f6ab19ac }, r1a0: u384 { - limb0: 0x16e98174f0f9245a7bb53c83, - limb1: 0xa19d8f001cc1c1beb92a1ca5, - limb2: 0x736307c2ba6e76dbe551b20e, - limb3: 0xe16893f577087507fcdf74c + limb0: 0xdef37882030c9b3735e87218, + limb1: 0x89a9d8f0afe4af71215eb880, + limb2: 0x4b1a42b2be948f25f9f23fc3, + limb3: 0x11ebc09efd8f944c09e1c4bf }, r1a1: u384 { - limb0: 0x8f3b9f7f1e8f7d71cd4d1130, - limb1: 0xa648ce374b6e6d17efb237ac, - limb2: 0xdbcf02de08eb18d34ac389d4, - limb3: 0xd07cee0f625d4bc9d2017db + limb0: 0xb4cdff8e493f1f356f90bb24, + limb1: 0xe7b159aaaa070e69f90d0fcb, + limb2: 0x2c2e763385639e33da32cdb7, + limb3: 0x13410f70d8a15a6b82bfd33a } }, G2Line { r0a0: u384 { - limb0: 0xfee841f6716aceaf2322be26, - limb1: 0x8d99f0188fd64933bdd77014, - limb2: 0xb5ea2b02bb63732c8ae7ff42, - limb3: 0x143604421fc34e7cb68ebada + limb0: 0x877040c2985b0c5189d19ac4, + limb1: 0x733b1f56cbfeab1cb129c27c, + limb2: 0x1628e98622e2a6aae5010ceb, + limb3: 0x1020fc91195d0bcd2c2ddd8 }, r0a1: u384 { - limb0: 0x7abb171fd3ae2ef142b2a561, - limb1: 0x5edd27bd2a9c34a94d3f8a13, - limb2: 0x36a6adf9c1a1697e572eb373, - limb3: 0x9717d16a1506135a1742458 + limb0: 0xa6bac46397914c30f4dac341, + limb1: 0xc01862acfddba1db90511185, + limb2: 0x3c752bd9c9be4e4193404b2, + limb3: 0x19752bcddc8408686ed999f7 }, r1a0: u384 { - limb0: 0xa6795acf5bf6ea291641d961, - limb1: 0xe05ce113855ae08f7f7738c2, - limb2: 0x2a41499c5393d8e4569e443c, - limb3: 0x16f47514f99890c953de81ce + limb0: 0x6aee2729aec7e8e7359c15b9, + limb1: 0xc47109f6be9a6892bb8ed514, + limb2: 0x9354dc6cb4c119cf21cd33fe, + limb3: 0x1446ba615ca59db55b13b034 }, r1a1: u384 { - limb0: 0xb8adce06f26a3246d6b3b5fe, - limb1: 0x8bf3ee10de56a9815363b463, - limb2: 0x7a5ad883d1571a1a6ca4ccdd, - limb3: 0x1376d4d8d38d020b4531dac8 + limb0: 0x7b7a416a4137bd69c2257891, + limb1: 0x3fb0022a6d30d8e0ed0b32c, + limb2: 0x6f271626548aaf4aa5ffc8e2, + limb3: 0x75db4d8fcf65c02ded40602 } }, G2Line { r0a0: u384 { - limb0: 0xfee841f6716aceaf2322be26, - limb1: 0x8d99f0188fd64933bdd77014, - limb2: 0xb5ea2b02bb63732c8ae7ff42, - limb3: 0x143604421fc34e7cb68ebada + limb0: 0x877040c2985b0c5189d19ac4, + limb1: 0x733b1f56cbfeab1cb129c27c, + limb2: 0x1628e98622e2a6aae5010ceb, + limb3: 0x1020fc91195d0bcd2c2ddd8 }, r0a1: u384 { - limb0: 0x7abb171fd3ae2ef142b2a561, - limb1: 0x5edd27bd2a9c34a94d3f8a13, - limb2: 0x36a6adf9c1a1697e572eb373, - limb3: 0x9717d16a1506135a1742458 + limb0: 0xa6bac46397914c30f4dac341, + limb1: 0xc01862acfddba1db90511185, + limb2: 0x3c752bd9c9be4e4193404b2, + limb3: 0x19752bcddc8408686ed999f7 }, r1a0: u384 { - limb0: 0xa6795acf5bf6ea291641d961, - limb1: 0xe05ce113855ae08f7f7738c2, - limb2: 0x2a41499c5393d8e4569e443c, - limb3: 0x16f47514f99890c953de81ce + limb0: 0x6aee2729aec7e8e7359c15b9, + limb1: 0xc47109f6be9a6892bb8ed514, + limb2: 0x9354dc6cb4c119cf21cd33fe, + limb3: 0x1446ba615ca59db55b13b034 }, r1a1: u384 { - limb0: 0xb8adce06f26a3246d6b3b5fe, - limb1: 0x8bf3ee10de56a9815363b463, - limb2: 0x7a5ad883d1571a1a6ca4ccdd, - limb3: 0x1376d4d8d38d020b4531dac8 + limb0: 0x7b7a416a4137bd69c2257891, + limb1: 0x3fb0022a6d30d8e0ed0b32c, + limb2: 0x6f271626548aaf4aa5ffc8e2, + limb3: 0x75db4d8fcf65c02ded40602 } }, G2Line { r0a0: u384 { - limb0: 0x8344df22e6435adb424686be, - limb1: 0x7a2544ba95bda818a13efeb7, - limb2: 0x16ed3dc4986fb1dcfcf3565a, - limb3: 0x395939d15db5cf07ae67493 + limb0: 0x32c1a688d09363c359134297, + limb1: 0x8e59b7adba7ff5fdfcb73778, + limb2: 0x2a931f2b893e48322ebb5dfe, + limb3: 0x951dcef4b78464d3f65a66 }, r0a1: u384 { - limb0: 0xb5169978ceba15e39ab79499, - limb1: 0x63bc32d78e0d0daea5fed7e7, - limb2: 0x512d44cd9188622555cc43f9, - limb3: 0x58ef0fa11eae077b568fdbb + limb0: 0x90625d5a269c57f9d6cca20c, + limb1: 0xa66686bd20d834a55f07e03c, + limb2: 0x810418ec2f4f056d1dffb0a9, + limb3: 0x10e5e0b865023880f6ce6c50 }, r1a0: u384 { - limb0: 0x14b5a47288e26f439d0f5b71, - limb1: 0x493de915d912071f856e6302, - limb2: 0x4a38054e45cb8ad3ed084c21, - limb3: 0x98d665d946547139f229cc + limb0: 0xa26b9ba0e22c4d47197f4acc, + limb1: 0x842566d3a86d3c2c5c79b30a, + limb2: 0xc8d6a7ad84fd4f65466b7346, + limb3: 0x1104819b3bc81a90ae477ad9 }, r1a1: u384 { - limb0: 0x547cb350e0fc89845b7f319b, - limb1: 0x244e59f5e5c7df5adf792c26, - limb2: 0x23c5d2b8243e01e7dfe14c6, - limb3: 0x933ad15cb01e391c7e9b905 + limb0: 0x971871b1e144196aa768940c, + limb1: 0x9eba2cf0e6725dd813dc896, + limb2: 0x7d77bcba238f0f89bf5bdada, + limb3: 0xa02fb8db5be7da622b758bd } }, G2Line { r0a0: u384 { - limb0: 0x8344df22e6435adb424686be, - limb1: 0x7a2544ba95bda818a13efeb7, - limb2: 0x16ed3dc4986fb1dcfcf3565a, - limb3: 0x395939d15db5cf07ae67493 + limb0: 0x32c1a688d09363c359134297, + limb1: 0x8e59b7adba7ff5fdfcb73778, + limb2: 0x2a931f2b893e48322ebb5dfe, + limb3: 0x951dcef4b78464d3f65a66 }, r0a1: u384 { - limb0: 0xb5169978ceba15e39ab79499, - limb1: 0x63bc32d78e0d0daea5fed7e7, - limb2: 0x512d44cd9188622555cc43f9, - limb3: 0x58ef0fa11eae077b568fdbb + limb0: 0x90625d5a269c57f9d6cca20c, + limb1: 0xa66686bd20d834a55f07e03c, + limb2: 0x810418ec2f4f056d1dffb0a9, + limb3: 0x10e5e0b865023880f6ce6c50 }, r1a0: u384 { - limb0: 0x14b5a47288e26f439d0f5b71, - limb1: 0x493de915d912071f856e6302, - limb2: 0x4a38054e45cb8ad3ed084c21, - limb3: 0x98d665d946547139f229cc + limb0: 0xa26b9ba0e22c4d47197f4acc, + limb1: 0x842566d3a86d3c2c5c79b30a, + limb2: 0xc8d6a7ad84fd4f65466b7346, + limb3: 0x1104819b3bc81a90ae477ad9 }, r1a1: u384 { - limb0: 0x547cb350e0fc89845b7f319b, - limb1: 0x244e59f5e5c7df5adf792c26, - limb2: 0x23c5d2b8243e01e7dfe14c6, - limb3: 0x933ad15cb01e391c7e9b905 + limb0: 0x971871b1e144196aa768940c, + limb1: 0x9eba2cf0e6725dd813dc896, + limb2: 0x7d77bcba238f0f89bf5bdada, + limb3: 0xa02fb8db5be7da622b758bd } }, G2Line { r0a0: u384 { - limb0: 0x18b7ff0ff18b7f3fa063caaa, - limb1: 0x7ef12af55b94867694e6a84b, - limb2: 0xcb962bb0282d22dd5ce31759, - limb3: 0x12392719780223b3264657f0 + limb0: 0x12143c658f4632bedaaa3e4, + limb1: 0xf91e8d44606bd7fba6a261ce, + limb2: 0x9413920ad62e521b84a38245, + limb3: 0x18ae365222dc287068b9ca91 }, r0a1: u384 { - limb0: 0x7ca4db8c4a77a18d568083c2, - limb1: 0xfafd85142e913cbb4972dbf9, - limb2: 0x440d6e66b45184b92b88e0ba, - limb3: 0xfa2d309e071749c3e4171f0 + limb0: 0x30acbc18bf6f53bf1463e608, + limb1: 0x24b50096f31df0a85110d348, + limb2: 0x8dda183c64dd3770917e9807, + limb3: 0x19042c27946c940ce275ca61 }, r1a0: u384 { - limb0: 0x51d7ea6e82dbea0873689f8f, - limb1: 0xaf65e9d1c6a5ccc35d794c94, - limb2: 0xb421c7743849fc836671b28, - limb3: 0x17bf7c5740c1beac704ee499 + limb0: 0xdd9346e30080173f781bfaee, + limb1: 0xcd6261a4e7bc0a748cbcb800, + limb2: 0xb8d3b275bd51a2c2ed3d2081, + limb3: 0x62b9317eb99bc04c19573e7 }, r1a1: u384 { - limb0: 0x6904f027a351aa3a92222c59, - limb1: 0xeb3e5a72f4bdcf151d8a97ce, - limb2: 0x8ac89b9f14beccc3f06cab08, - limb3: 0x1ff5c8193aa5ec4b12bc139 + limb0: 0x24d76bdab66dda9e8eaf68ec, + limb1: 0xa9b00de07d7d0ffa94671fb4, + limb2: 0x46c3e90bda39797b07c798ce, + limb3: 0xc63bdfab25a82c569c45d62 } }, G2Line { r0a0: u384 { - limb0: 0x18b7ff0ff18b7f3fa063caaa, - limb1: 0x7ef12af55b94867694e6a84b, - limb2: 0xcb962bb0282d22dd5ce31759, - limb3: 0x12392719780223b3264657f0 + limb0: 0x12143c658f4632bedaaa3e4, + limb1: 0xf91e8d44606bd7fba6a261ce, + limb2: 0x9413920ad62e521b84a38245, + limb3: 0x18ae365222dc287068b9ca91 }, r0a1: u384 { - limb0: 0x7ca4db8c4a77a18d568083c2, - limb1: 0xfafd85142e913cbb4972dbf9, - limb2: 0x440d6e66b45184b92b88e0ba, - limb3: 0xfa2d309e071749c3e4171f0 + limb0: 0x30acbc18bf6f53bf1463e608, + limb1: 0x24b50096f31df0a85110d348, + limb2: 0x8dda183c64dd3770917e9807, + limb3: 0x19042c27946c940ce275ca61 }, r1a0: u384 { - limb0: 0x51d7ea6e82dbea0873689f8f, - limb1: 0xaf65e9d1c6a5ccc35d794c94, - limb2: 0xb421c7743849fc836671b28, - limb3: 0x17bf7c5740c1beac704ee499 + limb0: 0xdd9346e30080173f781bfaee, + limb1: 0xcd6261a4e7bc0a748cbcb800, + limb2: 0xb8d3b275bd51a2c2ed3d2081, + limb3: 0x62b9317eb99bc04c19573e7 }, r1a1: u384 { - limb0: 0x6904f027a351aa3a92222c59, - limb1: 0xeb3e5a72f4bdcf151d8a97ce, - limb2: 0x8ac89b9f14beccc3f06cab08, - limb3: 0x1ff5c8193aa5ec4b12bc139 + limb0: 0x24d76bdab66dda9e8eaf68ec, + limb1: 0xa9b00de07d7d0ffa94671fb4, + limb2: 0x46c3e90bda39797b07c798ce, + limb3: 0xc63bdfab25a82c569c45d62 } }, G2Line { r0a0: u384 { - limb0: 0x1f91b836267d14f8cb8667c8, - limb1: 0x60ac45d26eb31df9f3747b0b, - limb2: 0x8f8995eecf58974b50ce6e51, - limb3: 0xc5822a409edb74ec0b86968 + limb0: 0xf1bd704f5e9b7b185e1d4f2d, + limb1: 0xad6f2b4a16e0f62da7765d0b, + limb2: 0x8bc5489e5ab229893efe3e13, + limb3: 0x40aea3eb0adef45a3273500 }, r0a1: u384 { - limb0: 0x9b13c5ef0c97c446467ad6e9, - limb1: 0x16c65c9fb6e6d7be17da45cd, - limb2: 0x18760f8e29f166305682844e, - limb3: 0x19acb4c76e84f19ddb9ff0ba + limb0: 0x7daa230566f68a4957330794, + limb1: 0x3dc1f47bba370cedc95ca679, + limb2: 0x8862c433ba78072649454534, + limb3: 0x19418e0aa2bf750c7d84855 }, r1a0: u384 { - limb0: 0x1a040694d6e2c4dbe96f8c1b, - limb1: 0x724fcd382992d0439c912d78, - limb2: 0x546a1b4c746a5d23a5b8b322, - limb3: 0x676d6451e454e986ffe342f + limb0: 0xa46958b813fc7957a397f850, + limb1: 0xdf25a4ac04db44a6e66fd17a, + limb2: 0x3ca3519f7bfbc5f9b16431dd, + limb3: 0x8a229833625e103b78dbed4 }, r1a1: u384 { - limb0: 0x46bd274e977b484f910faea9, - limb1: 0xac8fcee5ba7af50d11b4f039, - limb2: 0x8b4917813ec6ad20aa89aa4f, - limb3: 0xc93d11ee83672351414e014 + limb0: 0x8d90f9036233023d6e455653, + limb1: 0xf09f78aba00449a00ee67be7, + limb2: 0xd241bd53f614906327a0fa5b, + limb3: 0x411d97ebefaf7c1396b9e7a } }, G2Line { r0a0: u384 { - limb0: 0x1f91b836267d14f8cb8667c8, - limb1: 0x60ac45d26eb31df9f3747b0b, - limb2: 0x8f8995eecf58974b50ce6e51, - limb3: 0xc5822a409edb74ec0b86968 + limb0: 0xf1bd704f5e9b7b185e1d4f2d, + limb1: 0xad6f2b4a16e0f62da7765d0b, + limb2: 0x8bc5489e5ab229893efe3e13, + limb3: 0x40aea3eb0adef45a3273500 }, r0a1: u384 { - limb0: 0x9b13c5ef0c97c446467ad6e9, - limb1: 0x16c65c9fb6e6d7be17da45cd, - limb2: 0x18760f8e29f166305682844e, - limb3: 0x19acb4c76e84f19ddb9ff0ba + limb0: 0x7daa230566f68a4957330794, + limb1: 0x3dc1f47bba370cedc95ca679, + limb2: 0x8862c433ba78072649454534, + limb3: 0x19418e0aa2bf750c7d84855 }, r1a0: u384 { - limb0: 0x1a040694d6e2c4dbe96f8c1b, - limb1: 0x724fcd382992d0439c912d78, - limb2: 0x546a1b4c746a5d23a5b8b322, - limb3: 0x676d6451e454e986ffe342f + limb0: 0xa46958b813fc7957a397f850, + limb1: 0xdf25a4ac04db44a6e66fd17a, + limb2: 0x3ca3519f7bfbc5f9b16431dd, + limb3: 0x8a229833625e103b78dbed4 }, r1a1: u384 { - limb0: 0x46bd274e977b484f910faea9, - limb1: 0xac8fcee5ba7af50d11b4f039, - limb2: 0x8b4917813ec6ad20aa89aa4f, - limb3: 0xc93d11ee83672351414e014 + limb0: 0x8d90f9036233023d6e455653, + limb1: 0xf09f78aba00449a00ee67be7, + limb2: 0xd241bd53f614906327a0fa5b, + limb3: 0x411d97ebefaf7c1396b9e7a } }, G2Line { r0a0: u384 { - limb0: 0xd3621fe33c6005b2c8cd7ccf, - limb1: 0xd435da7fe024978011d9dfc0, - limb2: 0x3c8d8365d668ff67eb09d359, - limb3: 0x3c84e7fccd9714f08035ab9 + limb0: 0x35a784f5416b9b8334905a2c, + limb1: 0xe354839b1bc773104b000b26, + limb2: 0x7752b31c8b091c79d929eb9c, + limb3: 0xb7b97c6be9cc8afb5bc5735 }, r0a1: u384 { - limb0: 0xca017dccd24e59253d5774bd, - limb1: 0x12df94808b3dea7eb3dc93bc, - limb2: 0x468303714c230bae54d31bfd, - limb3: 0xeae7cf9a98ee9a292f2f0c8 + limb0: 0xad83a5972c78ea6e8bee5ae1, + limb1: 0x211c74cc3fb00298ee9909ec, + limb2: 0x423d7274d597ada488060e43, + limb3: 0x1801df43882b5a33b8533f6c }, r1a0: u384 { - limb0: 0x857d9d37f1e4a3e4b96cb993, - limb1: 0xd68774be50041c069ed864d4, - limb2: 0xce2efd9bcedce6ecbfb0e9eb, - limb3: 0x6a8b3f000e3f0af4e282abf + limb0: 0xf48f6e1e092e03108eb20f38, + limb1: 0x9bcdcf9bfb03d73e579978e, + limb2: 0xcba676b0e5fa2a088d68e635, + limb3: 0xcb9cbf50340fcc71b0be45c }, r1a1: u384 { - limb0: 0x55098776966e8e581c320fb3, - limb1: 0x14c27d58f5608daecfcd8507, - limb2: 0x3368f70b21ad04ef97056738, - limb3: 0xafcbf6aa34e49fcf0c79080 + limb0: 0x3a583430b57c26a18b27bbc0, + limb1: 0x4be38e191e82d861740d4f35, + limb2: 0xfe63037de3b7599f6371212e, + limb3: 0x8601eccbac732aa96ef90b } }, G2Line { r0a0: u384 { - limb0: 0xd3621fe33c6005b2c8cd7ccf, - limb1: 0xd435da7fe024978011d9dfc0, - limb2: 0x3c8d8365d668ff67eb09d359, - limb3: 0x3c84e7fccd9714f08035ab9 + limb0: 0x35a784f5416b9b8334905a2c, + limb1: 0xe354839b1bc773104b000b26, + limb2: 0x7752b31c8b091c79d929eb9c, + limb3: 0xb7b97c6be9cc8afb5bc5735 }, r0a1: u384 { - limb0: 0xca017dccd24e59253d5774bd, - limb1: 0x12df94808b3dea7eb3dc93bc, - limb2: 0x468303714c230bae54d31bfd, - limb3: 0xeae7cf9a98ee9a292f2f0c8 + limb0: 0xad83a5972c78ea6e8bee5ae1, + limb1: 0x211c74cc3fb00298ee9909ec, + limb2: 0x423d7274d597ada488060e43, + limb3: 0x1801df43882b5a33b8533f6c }, r1a0: u384 { - limb0: 0x857d9d37f1e4a3e4b96cb993, - limb1: 0xd68774be50041c069ed864d4, - limb2: 0xce2efd9bcedce6ecbfb0e9eb, - limb3: 0x6a8b3f000e3f0af4e282abf + limb0: 0xf48f6e1e092e03108eb20f38, + limb1: 0x9bcdcf9bfb03d73e579978e, + limb2: 0xcba676b0e5fa2a088d68e635, + limb3: 0xcb9cbf50340fcc71b0be45c }, r1a1: u384 { - limb0: 0x55098776966e8e581c320fb3, - limb1: 0x14c27d58f5608daecfcd8507, - limb2: 0x3368f70b21ad04ef97056738, - limb3: 0xafcbf6aa34e49fcf0c79080 + limb0: 0x3a583430b57c26a18b27bbc0, + limb1: 0x4be38e191e82d861740d4f35, + limb2: 0xfe63037de3b7599f6371212e, + limb3: 0x8601eccbac732aa96ef90b } }, G2Line { r0a0: u384 { - limb0: 0xdc8c11bc6bf92b9e81d4b478, - limb1: 0xcbe8b09465d226834915195b, - limb2: 0xfbd9c3c033c060226db98484, - limb3: 0x95e51c316efcf6f48c289ec + limb0: 0x50c4d58794e9b0e39594f09f, + limb1: 0x7ae1b647d7b6a99833adb19d, + limb2: 0x43ed13bb3c3bbb8deaec5cab, + limb3: 0x2d53890c3ff85fd7c103545 }, r0a1: u384 { - limb0: 0x8bf1a43f463fef9f8a16f02c, - limb1: 0x10061124e82ce3c49ea26295, - limb2: 0x65d4b333ccc20dd644a036e4, - limb3: 0x7dee5d2374cc734420ef850 + limb0: 0xd45c53f3bb48c811cef68cca, + limb1: 0x1c1b555a9242061409fda332, + limb2: 0x6bd197f1ffe00375684cffd6, + limb3: 0x15f2bc319e9fe4d4cd651801 }, r1a0: u384 { - limb0: 0xda6cbb6182189781f5180362, - limb1: 0xd184664d5f2d7ba711d5701f, - limb2: 0xaf5dbf08a920e5ab81e66f, - limb3: 0x1976a4edbad2c03a7416c3dd + limb0: 0xf0f4590c6968cc8323776230, + limb1: 0xfba722cbf6c21e1cb3f12cba, + limb2: 0xd2a12b507529f4f2077789e8, + limb3: 0x13f94de6c4a21959b92b03ff }, r1a1: u384 { - limb0: 0x21a6893f5b6d8345dc661060, - limb1: 0x40c839e07b8769bf6d67955f, - limb2: 0x96f590012089ee65e5ef399b, - limb3: 0xc6d7b48ced6f249f0a15657 + limb0: 0x4bee81c016c23b1d9969cf44, + limb1: 0x355a116ead4664c76ae9674c, + limb2: 0x8fa461dbbc4562f57242c5d6, + limb3: 0x167ec60ca319d80bf30dd93a } }, G2Line { r0a0: u384 { - limb0: 0xdc8c11bc6bf92b9e81d4b478, - limb1: 0xcbe8b09465d226834915195b, - limb2: 0xfbd9c3c033c060226db98484, - limb3: 0x95e51c316efcf6f48c289ec + limb0: 0x50c4d58794e9b0e39594f09f, + limb1: 0x7ae1b647d7b6a99833adb19d, + limb2: 0x43ed13bb3c3bbb8deaec5cab, + limb3: 0x2d53890c3ff85fd7c103545 }, r0a1: u384 { - limb0: 0x8bf1a43f463fef9f8a16f02c, - limb1: 0x10061124e82ce3c49ea26295, - limb2: 0x65d4b333ccc20dd644a036e4, - limb3: 0x7dee5d2374cc734420ef850 + limb0: 0xd45c53f3bb48c811cef68cca, + limb1: 0x1c1b555a9242061409fda332, + limb2: 0x6bd197f1ffe00375684cffd6, + limb3: 0x15f2bc319e9fe4d4cd651801 }, r1a0: u384 { - limb0: 0xda6cbb6182189781f5180362, - limb1: 0xd184664d5f2d7ba711d5701f, - limb2: 0xaf5dbf08a920e5ab81e66f, - limb3: 0x1976a4edbad2c03a7416c3dd + limb0: 0xf0f4590c6968cc8323776230, + limb1: 0xfba722cbf6c21e1cb3f12cba, + limb2: 0xd2a12b507529f4f2077789e8, + limb3: 0x13f94de6c4a21959b92b03ff }, r1a1: u384 { - limb0: 0x21a6893f5b6d8345dc661060, - limb1: 0x40c839e07b8769bf6d67955f, - limb2: 0x96f590012089ee65e5ef399b, - limb3: 0xc6d7b48ced6f249f0a15657 + limb0: 0x4bee81c016c23b1d9969cf44, + limb1: 0x355a116ead4664c76ae9674c, + limb2: 0x8fa461dbbc4562f57242c5d6, + limb3: 0x167ec60ca319d80bf30dd93a } }, G2Line { r0a0: u384 { - limb0: 0xabbf9b8a5e234eddf4c3b01e, - limb1: 0xa18d4470fb6cbac00824d36a, - limb2: 0x82197f18df17fd8112d263b9, - limb3: 0x803ee02012cbdeb064801a + limb0: 0x369611abdb6cee630fc3fe3f, + limb1: 0x9ce2deb814075cd3b1f6e805, + limb2: 0xfcda3cd922ebd14c49d381, + limb3: 0x749aef7937c02ba80b7a3d1 }, r0a1: u384 { - limb0: 0xb01837db4622bda273ea276d, - limb1: 0x665daf4ef31de8348ff1c7ff, - limb2: 0x3c78d1354f972b18f47f5d60, - limb3: 0x9c33da48eec5794eaa5b79f + limb0: 0xb9848447124e6e229be774a7, + limb1: 0x16e7d15c3f2ecead69f5fd50, + limb2: 0x1bb2acdf9b6d250446d5320b, + limb3: 0x71424724431273e81f303de }, r1a0: u384 { - limb0: 0xb042ab3ece2af73b070abcad, - limb1: 0xf69ac450416c075a1c2ceae1, - limb2: 0xfe17633c54fba20616228593, - limb3: 0x7b7efdb6f725aa6fd5d8de2 + limb0: 0xc6b4358abc52481e334d5938, + limb1: 0x2ff0e51db3f0da43e71e110a, + limb2: 0x585625ad95a2e52ae1ceaaa, + limb3: 0xc5eb60c8d47b337963c6d55 }, r1a1: u384 { - limb0: 0xa1d92c4daf1fe5c0aaa24d81, - limb1: 0xc8ff1f6c6e9a0108ab61f6d7, - limb2: 0x1833a2b8fbace57ddb0e1b7f, - limb3: 0x59f26928d3db741e118ddcb + limb0: 0xdbaa91102aa8e67cf32cfe13, + limb1: 0xa401827ecf080a37abe56cbf, + limb2: 0x8b0d6822b8957fa7f2c16e73, + limb3: 0xeac53012ddb4321b1dc25d7 } }, G2Line { r0a0: u384 { - limb0: 0xabbf9b8a5e234eddf4c3b01e, - limb1: 0xa18d4470fb6cbac00824d36a, - limb2: 0x82197f18df17fd8112d263b9, - limb3: 0x803ee02012cbdeb064801a + limb0: 0x369611abdb6cee630fc3fe3f, + limb1: 0x9ce2deb814075cd3b1f6e805, + limb2: 0xfcda3cd922ebd14c49d381, + limb3: 0x749aef7937c02ba80b7a3d1 }, r0a1: u384 { - limb0: 0xb01837db4622bda273ea276d, - limb1: 0x665daf4ef31de8348ff1c7ff, - limb2: 0x3c78d1354f972b18f47f5d60, - limb3: 0x9c33da48eec5794eaa5b79f + limb0: 0xb9848447124e6e229be774a7, + limb1: 0x16e7d15c3f2ecead69f5fd50, + limb2: 0x1bb2acdf9b6d250446d5320b, + limb3: 0x71424724431273e81f303de }, r1a0: u384 { - limb0: 0xb042ab3ece2af73b070abcad, - limb1: 0xf69ac450416c075a1c2ceae1, - limb2: 0xfe17633c54fba20616228593, - limb3: 0x7b7efdb6f725aa6fd5d8de2 + limb0: 0xc6b4358abc52481e334d5938, + limb1: 0x2ff0e51db3f0da43e71e110a, + limb2: 0x585625ad95a2e52ae1ceaaa, + limb3: 0xc5eb60c8d47b337963c6d55 }, r1a1: u384 { - limb0: 0xa1d92c4daf1fe5c0aaa24d81, - limb1: 0xc8ff1f6c6e9a0108ab61f6d7, - limb2: 0x1833a2b8fbace57ddb0e1b7f, - limb3: 0x59f26928d3db741e118ddcb + limb0: 0xdbaa91102aa8e67cf32cfe13, + limb1: 0xa401827ecf080a37abe56cbf, + limb2: 0x8b0d6822b8957fa7f2c16e73, + limb3: 0xeac53012ddb4321b1dc25d7 } }, G2Line { r0a0: u384 { - limb0: 0xf78d95faa364b00e76a05396, - limb1: 0x29200a6d27435a5e523fe331, - limb2: 0xa79bfac0775f1b9141465a1e, - limb3: 0x53148d60972e5a2b89e4a0f + limb0: 0x4eca2e0c289a6357cd2ec02e, + limb1: 0xa5e46cf9720a6cabd480d724, + limb2: 0x81717648b0d381a16c4de5c4, + limb3: 0x15e457d401643ae6585441e6 }, r0a1: u384 { - limb0: 0xf7c0f50af051fe18b4e33f60, - limb1: 0xce7a17b8441a1a18eb2003d9, - limb2: 0xcb89fdf497b39ba3dde294bb, - limb3: 0x118ec60be40abfadf8865578 + limb0: 0x3e73770cfe2d10ef57d620d8, + limb1: 0x7744d37c5830530b4812fefe, + limb2: 0x588caf8f86ea2b1ca9b9ca5a, + limb3: 0x2e64a21fd65c2ca7ca62b69 }, r1a0: u384 { - limb0: 0x28327706ef99616e1143f5dc, - limb1: 0x81b15188a4aa1203518f83bc, - limb2: 0xa71e3a86141b6cd1260cf29c, - limb3: 0xa22d5c7ad18f689200e382f + limb0: 0x144be60ffe84e8da6fadff00, + limb1: 0xaaffed3c3878fc053f17abe8, + limb2: 0x8f1a94954832dc09b4ae8e1d, + limb3: 0xd31e3c55c88bb96e9b1773c }, r1a1: u384 { - limb0: 0xec6a9c9a570f63b5a7ca116e, - limb1: 0xc7cddac3aed40da83fb73f2a, - limb2: 0xdefbda355cb77203ba5a50f7, - limb3: 0x1565986a10ba8960ed7a0604 + limb0: 0x56aa6b8b7de66a0c925a4246, + limb1: 0x5067fb22a844392d0a237acf, + limb2: 0xf4f46e4d6ea479f0d878f653, + limb3: 0x2a6c2af7a3866c637892ac4 } }, G2Line { r0a0: u384 { - limb0: 0xf78d95faa364b00e76a05396, - limb1: 0x29200a6d27435a5e523fe331, - limb2: 0xa79bfac0775f1b9141465a1e, - limb3: 0x53148d60972e5a2b89e4a0f + limb0: 0x4eca2e0c289a6357cd2ec02e, + limb1: 0xa5e46cf9720a6cabd480d724, + limb2: 0x81717648b0d381a16c4de5c4, + limb3: 0x15e457d401643ae6585441e6 }, r0a1: u384 { - limb0: 0xf7c0f50af051fe18b4e33f60, - limb1: 0xce7a17b8441a1a18eb2003d9, - limb2: 0xcb89fdf497b39ba3dde294bb, - limb3: 0x118ec60be40abfadf8865578 + limb0: 0x3e73770cfe2d10ef57d620d8, + limb1: 0x7744d37c5830530b4812fefe, + limb2: 0x588caf8f86ea2b1ca9b9ca5a, + limb3: 0x2e64a21fd65c2ca7ca62b69 }, r1a0: u384 { - limb0: 0x28327706ef99616e1143f5dc, - limb1: 0x81b15188a4aa1203518f83bc, - limb2: 0xa71e3a86141b6cd1260cf29c, - limb3: 0xa22d5c7ad18f689200e382f + limb0: 0x144be60ffe84e8da6fadff00, + limb1: 0xaaffed3c3878fc053f17abe8, + limb2: 0x8f1a94954832dc09b4ae8e1d, + limb3: 0xd31e3c55c88bb96e9b1773c }, r1a1: u384 { - limb0: 0xec6a9c9a570f63b5a7ca116e, - limb1: 0xc7cddac3aed40da83fb73f2a, - limb2: 0xdefbda355cb77203ba5a50f7, - limb3: 0x1565986a10ba8960ed7a0604 + limb0: 0x56aa6b8b7de66a0c925a4246, + limb1: 0x5067fb22a844392d0a237acf, + limb2: 0xf4f46e4d6ea479f0d878f653, + limb3: 0x2a6c2af7a3866c637892ac4 } }, G2Line { r0a0: u384 { - limb0: 0xb12577ae6040a374c72e8071, - limb1: 0xdd0805258b416311e0f2e7b6, - limb2: 0xb479fa72554fc23454636cc9, - limb3: 0xa34db7b1652f2481b9fee95 + limb0: 0x419590f4b7c4c8592d3b79dc, + limb1: 0x13b221123f6ae42dee8aee65, + limb2: 0xf1ab6984860ca71d99e5e90e, + limb3: 0xa512c4c723c52319d9bb5ca }, r0a1: u384 { - limb0: 0xd440fd623ed5cac178ea6551, - limb1: 0xffd02ef137a971fe714d9c71, - limb2: 0xdeee9369a9221651304efdb, - limb3: 0x67571c92870e8cd2743109f + limb0: 0xd86b08844ee415031f4beafc, + limb1: 0xa6f9f9ea73dcac79f10e7c1, + limb2: 0x63977601526ba7a16ef8669c, + limb3: 0x6037fa72a8f38890389233d }, r1a0: u384 { - limb0: 0xc6ca3b046006ae8527d6bd4d, - limb1: 0xb0de88ef3e2af1cfccc116a0, - limb2: 0xc03ade5849d4022d3beda7b9, - limb3: 0x3ba6abbd586501477fda1d6 + limb0: 0x925d359cd3f230dea2b8c7c8, + limb1: 0x2537aba4c649fdb1d0755677, + limb2: 0xac49749e20cbb0987b9a168d, + limb3: 0x87c82e7db5e901ba19aada4 }, r1a1: u384 { - limb0: 0x50905bf6b3a06a31e121e070, - limb1: 0x60610466830d678908221aaa, - limb2: 0x401b2fbbdedd37c3c05ce7df, - limb3: 0x1117eb761092225c4a313e4a + limb0: 0xafd75226a1ca9991bc50c82b, + limb1: 0x62effb9b4321fc93961b1125, + limb2: 0x8376540c594a90fac459f940, + limb3: 0x10d2e3335483610e181829c4 } }, G2Line { r0a0: u384 { - limb0: 0xb12577ae6040a374c72e8071, - limb1: 0xdd0805258b416311e0f2e7b6, - limb2: 0xb479fa72554fc23454636cc9, - limb3: 0xa34db7b1652f2481b9fee95 + limb0: 0x419590f4b7c4c8592d3b79dc, + limb1: 0x13b221123f6ae42dee8aee65, + limb2: 0xf1ab6984860ca71d99e5e90e, + limb3: 0xa512c4c723c52319d9bb5ca }, r0a1: u384 { - limb0: 0xd440fd623ed5cac178ea6551, - limb1: 0xffd02ef137a971fe714d9c71, - limb2: 0xdeee9369a9221651304efdb, - limb3: 0x67571c92870e8cd2743109f + limb0: 0xd86b08844ee415031f4beafc, + limb1: 0xa6f9f9ea73dcac79f10e7c1, + limb2: 0x63977601526ba7a16ef8669c, + limb3: 0x6037fa72a8f38890389233d }, r1a0: u384 { - limb0: 0xc6ca3b046006ae8527d6bd4d, - limb1: 0xb0de88ef3e2af1cfccc116a0, - limb2: 0xc03ade5849d4022d3beda7b9, - limb3: 0x3ba6abbd586501477fda1d6 + limb0: 0x925d359cd3f230dea2b8c7c8, + limb1: 0x2537aba4c649fdb1d0755677, + limb2: 0xac49749e20cbb0987b9a168d, + limb3: 0x87c82e7db5e901ba19aada4 }, r1a1: u384 { - limb0: 0x50905bf6b3a06a31e121e070, - limb1: 0x60610466830d678908221aaa, - limb2: 0x401b2fbbdedd37c3c05ce7df, - limb3: 0x1117eb761092225c4a313e4a + limb0: 0xafd75226a1ca9991bc50c82b, + limb1: 0x62effb9b4321fc93961b1125, + limb2: 0x8376540c594a90fac459f940, + limb3: 0x10d2e3335483610e181829c4 } }, G2Line { r0a0: u384 { - limb0: 0x399cf51255551813e8555a20, - limb1: 0x9927c83a6df3d0756a441ebd, - limb2: 0xe71a7cd79fca1b8bc10a5793, - limb3: 0x361cf1da57e1e226776b45e + limb0: 0xdb2cb45b4fa33907130a9b80, + limb1: 0x3799e98df0efe977c271f5e, + limb2: 0xc8f0d7a4464af79837597e87, + limb3: 0xab850cd6f456fa6ad46156d }, r0a1: u384 { - limb0: 0xa6f5c92a615a8fc2936f6262, - limb1: 0x199f7cb0c11142dc753bcfd5, - limb2: 0xbf7714305781d2f7de4569d9, - limb3: 0x19de34488c80f20788ec67c3 + limb0: 0x8697955e28ad992ad63212ee, + limb1: 0xa8099c19ea23e27a27555626, + limb2: 0x9ebd7814b7381d6372f71253, + limb3: 0x22f3c00c29822d56c103c57 }, r1a0: u384 { - limb0: 0xe24460ef6fd2e2c269c13c69, - limb1: 0x7698f0b9765a7ba7bcc59064, - limb2: 0xc0f3224c2bb11634e4c78233, - limb3: 0x7e7a0bc60788bcd9baef690 + limb0: 0x160f2968e9a2dd0b6be49642, + limb1: 0xf3f7ab198c0962e0fbda3ea3, + limb2: 0xc09bd377c81df36a7e661108, + limb3: 0x59a870114f1d32fc73ba72 }, r1a1: u384 { - limb0: 0x2475837274731d5d01ee0f01, - limb1: 0x99e3d6018b921677d3042195, - limb2: 0xa1e09ebea825af60eb47d75d, - limb3: 0x195f38f3e3d669b53de4ba41 + limb0: 0xede50c3432aae8893326a656, + limb1: 0xbc2b750da1bde6b74fd4344f, + limb2: 0x86bcf0ecc4bd0d1c7736af75, + limb3: 0x6b235aa50863e14d501d7dc } }, G2Line { r0a0: u384 { - limb0: 0x399cf51255551813e8555a20, - limb1: 0x9927c83a6df3d0756a441ebd, - limb2: 0xe71a7cd79fca1b8bc10a5793, - limb3: 0x361cf1da57e1e226776b45e + limb0: 0xdb2cb45b4fa33907130a9b80, + limb1: 0x3799e98df0efe977c271f5e, + limb2: 0xc8f0d7a4464af79837597e87, + limb3: 0xab850cd6f456fa6ad46156d }, r0a1: u384 { - limb0: 0xa6f5c92a615a8fc2936f6262, - limb1: 0x199f7cb0c11142dc753bcfd5, - limb2: 0xbf7714305781d2f7de4569d9, - limb3: 0x19de34488c80f20788ec67c3 + limb0: 0x8697955e28ad992ad63212ee, + limb1: 0xa8099c19ea23e27a27555626, + limb2: 0x9ebd7814b7381d6372f71253, + limb3: 0x22f3c00c29822d56c103c57 }, r1a0: u384 { - limb0: 0xe24460ef6fd2e2c269c13c69, - limb1: 0x7698f0b9765a7ba7bcc59064, - limb2: 0xc0f3224c2bb11634e4c78233, - limb3: 0x7e7a0bc60788bcd9baef690 + limb0: 0x160f2968e9a2dd0b6be49642, + limb1: 0xf3f7ab198c0962e0fbda3ea3, + limb2: 0xc09bd377c81df36a7e661108, + limb3: 0x59a870114f1d32fc73ba72 }, r1a1: u384 { - limb0: 0x2475837274731d5d01ee0f01, - limb1: 0x99e3d6018b921677d3042195, - limb2: 0xa1e09ebea825af60eb47d75d, - limb3: 0x195f38f3e3d669b53de4ba41 + limb0: 0xede50c3432aae8893326a656, + limb1: 0xbc2b750da1bde6b74fd4344f, + limb2: 0x86bcf0ecc4bd0d1c7736af75, + limb3: 0x6b235aa50863e14d501d7dc } }, G2Line { r0a0: u384 { - limb0: 0x10f840bfb10bdf8807a19dfa, - limb1: 0x9536256ce235a555ae3866dd, - limb2: 0xeff4b97f9126c373cb3164cb, - limb3: 0x19ab7af5e3c6b5e475854184 + limb0: 0x32ffa135568abef7235c087a, + limb1: 0xd3c95357b6e90212cd6d9e31, + limb2: 0xef38ba3bebf92c000fd4005d, + limb3: 0xdd7e6a2dd6ae27f63292b89 }, r0a1: u384 { - limb0: 0x122433c6749521f7d8dec993, - limb1: 0x726df80e21624d097219aedf, - limb2: 0xbf35c30c00987c804de827d4, - limb3: 0x45746b1f6bfd866ee10b9f9 + limb0: 0xb26c0f73470e42e69322b5ff, + limb1: 0x48c45cf0ca038128fb46880d, + limb2: 0xad6b8eabd05aca1dda76fdd4, + limb3: 0xf4f5ac828bdc9c226f5129f }, r1a0: u384 { - limb0: 0x329dde71e3526aede4e8e8e1, - limb1: 0xfac46aa050bef39fffe3bf7a, - limb2: 0x15241b80b033284f7c11fc04, - limb3: 0xf8f18d1ec3d0af4d544a753 + limb0: 0xa01d9f0c784f66716b1a2169, + limb1: 0x722ee45fcc882878c6a9c316, + limb2: 0x36e48d5489bbde0d5971becf, + limb3: 0x481e77f20d9d78f46d90887 }, r1a1: u384 { - limb0: 0x710495f449337505d8d693c4, - limb1: 0x4f84842ccd2e0639da4e1f26, - limb2: 0x5f5ada40d79342287552d6cf, - limb3: 0x1a41f9d98f5658a98c378a + limb0: 0x35209600bfe95fe9c0dd79df, + limb1: 0x68735fe0c7617c4161abe8cb, + limb2: 0xcc83dfb53119e887b37d4723, + limb3: 0x18cadd185e43a5dea6f74998 } }, G2Line { r0a0: u384 { - limb0: 0x10f840bfb10bdf8807a19dfa, - limb1: 0x9536256ce235a555ae3866dd, - limb2: 0xeff4b97f9126c373cb3164cb, - limb3: 0x19ab7af5e3c6b5e475854184 + limb0: 0x32ffa135568abef7235c087a, + limb1: 0xd3c95357b6e90212cd6d9e31, + limb2: 0xef38ba3bebf92c000fd4005d, + limb3: 0xdd7e6a2dd6ae27f63292b89 }, r0a1: u384 { - limb0: 0x122433c6749521f7d8dec993, - limb1: 0x726df80e21624d097219aedf, - limb2: 0xbf35c30c00987c804de827d4, - limb3: 0x45746b1f6bfd866ee10b9f9 + limb0: 0xb26c0f73470e42e69322b5ff, + limb1: 0x48c45cf0ca038128fb46880d, + limb2: 0xad6b8eabd05aca1dda76fdd4, + limb3: 0xf4f5ac828bdc9c226f5129f }, r1a0: u384 { - limb0: 0x329dde71e3526aede4e8e8e1, - limb1: 0xfac46aa050bef39fffe3bf7a, - limb2: 0x15241b80b033284f7c11fc04, - limb3: 0xf8f18d1ec3d0af4d544a753 + limb0: 0xa01d9f0c784f66716b1a2169, + limb1: 0x722ee45fcc882878c6a9c316, + limb2: 0x36e48d5489bbde0d5971becf, + limb3: 0x481e77f20d9d78f46d90887 }, r1a1: u384 { - limb0: 0x710495f449337505d8d693c4, - limb1: 0x4f84842ccd2e0639da4e1f26, - limb2: 0x5f5ada40d79342287552d6cf, - limb3: 0x1a41f9d98f5658a98c378a + limb0: 0x35209600bfe95fe9c0dd79df, + limb1: 0x68735fe0c7617c4161abe8cb, + limb2: 0xcc83dfb53119e887b37d4723, + limb3: 0x18cadd185e43a5dea6f74998 } }, G2Line { r0a0: u384 { - limb0: 0x20f8a0963a59bf1160d97edd, - limb1: 0xde7fadcecf73ec740b0b648d, - limb2: 0xd71bc54dd9d5b423c515fc4f, - limb3: 0x7f0c0631a92e94ad7d038e2 + limb0: 0xb8733d5c17825e39a6245f32, + limb1: 0xa55a4a6f15cc8e24b33b20de, + limb2: 0x9c7dfcb3b060f2cf35769782, + limb3: 0x880099328c8d71cfcbb6640 }, r0a1: u384 { - limb0: 0xd5814bf018b5ec0f2de82b6a, - limb1: 0x3a9ab8434b4c2eb3cee45a2e, - limb2: 0x90dfe41db69b4ebf0fa8914d, - limb3: 0x7e75d4fa3cee8df0d19dd8 + limb0: 0xdd3a9f9530c57265d94ba021, + limb1: 0x25e60565503071a605ea8a40, + limb2: 0xd81696b208c9a7db76cce860, + limb3: 0x14421c23a34d0587522a19be }, r1a0: u384 { - limb0: 0x8cb423e4b32683031cb3d962, - limb1: 0x59b6ca7709ac5a173dadae1a, - limb2: 0xe9c2a4a70660f0ec696be635, - limb3: 0xbb48e82fd950bad7f389bc3 + limb0: 0x9e272f84ad279ffd423aa90a, + limb1: 0xffd52b06d9aeb61925379bb2, + limb2: 0x31af171a7cb6464a385e47e2, + limb3: 0xa4e9a54e661afc9e6e135f4 }, r1a1: u384 { - limb0: 0x3b1614c49c1b7de2d5151e, - limb1: 0x6a4ff45e6f64735413fbfa65, - limb2: 0x91bc1b3f7b678263b7c6bcc2, - limb3: 0x15eed8bb1068a8d1bbd6844b + limb0: 0x928f9c95fe7d6765f22c997c, + limb1: 0x43316765e27a8ac2ddcd76ec, + limb2: 0x789f86f87ca0687b29599acd, + limb3: 0x3648fd2adc25e5260340bf7 } }, G2Line { r0a0: u384 { - limb0: 0x20f8a0963a59bf1160d97edd, - limb1: 0xde7fadcecf73ec740b0b648d, - limb2: 0xd71bc54dd9d5b423c515fc4f, - limb3: 0x7f0c0631a92e94ad7d038e2 + limb0: 0xb8733d5c17825e39a6245f32, + limb1: 0xa55a4a6f15cc8e24b33b20de, + limb2: 0x9c7dfcb3b060f2cf35769782, + limb3: 0x880099328c8d71cfcbb6640 }, r0a1: u384 { - limb0: 0xd5814bf018b5ec0f2de82b6a, - limb1: 0x3a9ab8434b4c2eb3cee45a2e, - limb2: 0x90dfe41db69b4ebf0fa8914d, - limb3: 0x7e75d4fa3cee8df0d19dd8 + limb0: 0xdd3a9f9530c57265d94ba021, + limb1: 0x25e60565503071a605ea8a40, + limb2: 0xd81696b208c9a7db76cce860, + limb3: 0x14421c23a34d0587522a19be }, r1a0: u384 { - limb0: 0x8cb423e4b32683031cb3d962, - limb1: 0x59b6ca7709ac5a173dadae1a, - limb2: 0xe9c2a4a70660f0ec696be635, - limb3: 0xbb48e82fd950bad7f389bc3 + limb0: 0x9e272f84ad279ffd423aa90a, + limb1: 0xffd52b06d9aeb61925379bb2, + limb2: 0x31af171a7cb6464a385e47e2, + limb3: 0xa4e9a54e661afc9e6e135f4 }, r1a1: u384 { - limb0: 0x3b1614c49c1b7de2d5151e, - limb1: 0x6a4ff45e6f64735413fbfa65, - limb2: 0x91bc1b3f7b678263b7c6bcc2, - limb3: 0x15eed8bb1068a8d1bbd6844b + limb0: 0x928f9c95fe7d6765f22c997c, + limb1: 0x43316765e27a8ac2ddcd76ec, + limb2: 0x789f86f87ca0687b29599acd, + limb3: 0x3648fd2adc25e5260340bf7 } }, G2Line { r0a0: u384 { - limb0: 0x90f43f6dc80188330c3d13, - limb1: 0xd0fa56cddebe193eefb84430, - limb2: 0xf008db4b59f2e0a8f9caf11, - limb3: 0x36e2a9df2897a7e00a1bde6 + limb0: 0xf1a918c6da331badb2e951d2, + limb1: 0xf16f76325d2c954074269c43, + limb2: 0x12bdf656b102851888dbd1da, + limb3: 0xcd4239f520efae36205d878 }, r0a1: u384 { - limb0: 0x183185c58716ecfccd9c47e5, - limb1: 0xbacee78d7bc72404d8bafe7c, - limb2: 0xacec68ff69cb2b993d370328, - limb3: 0xd67a03be3853fcd068fd752 + limb0: 0xed92e5a054290912c2f58fdc, + limb1: 0x9cee15289cefbe5cef05403, + limb2: 0xc5375412adfe56fc9b45dfba, + limb3: 0x8ba1567b2374fcd941f2d02 }, r1a0: u384 { - limb0: 0x3271e2c6868656e5bb68dc8b, - limb1: 0x4191897d629b89cd7d583267, - limb2: 0x12c3eae99edc23b57fa77203, - limb3: 0x42a7110b7ec018eef6c60b3 + limb0: 0x89ba6f45d5ade641fb4fe681, + limb1: 0xee221fe37d14cfc7db866277, + limb2: 0x2f567d1a383d108dd7a206d8, + limb3: 0x26316b73edf3a4b74ac8ca0 }, r1a1: u384 { - limb0: 0xfbfa2247eb0ecf22435e56ba, - limb1: 0x26e54b15bf485995a20d0ad8, - limb2: 0x31cec6bf35037b148f2bee4e, - limb3: 0x53a7f92763f7c929313b5f8 + limb0: 0xef1bf43406fd811d3923b64e, + limb1: 0xe60218148e13fb16187781d8, + limb2: 0xf0623243b832ab262ae2bd53, + limb3: 0x14ec3680120f2c2b4b9c73bb } }, G2Line { r0a0: u384 { - limb0: 0x90f43f6dc80188330c3d13, - limb1: 0xd0fa56cddebe193eefb84430, - limb2: 0xf008db4b59f2e0a8f9caf11, - limb3: 0x36e2a9df2897a7e00a1bde6 + limb0: 0xf1a918c6da331badb2e951d2, + limb1: 0xf16f76325d2c954074269c43, + limb2: 0x12bdf656b102851888dbd1da, + limb3: 0xcd4239f520efae36205d878 }, r0a1: u384 { - limb0: 0x183185c58716ecfccd9c47e5, - limb1: 0xbacee78d7bc72404d8bafe7c, - limb2: 0xacec68ff69cb2b993d370328, - limb3: 0xd67a03be3853fcd068fd752 + limb0: 0xed92e5a054290912c2f58fdc, + limb1: 0x9cee15289cefbe5cef05403, + limb2: 0xc5375412adfe56fc9b45dfba, + limb3: 0x8ba1567b2374fcd941f2d02 }, r1a0: u384 { - limb0: 0x3271e2c6868656e5bb68dc8b, - limb1: 0x4191897d629b89cd7d583267, - limb2: 0x12c3eae99edc23b57fa77203, - limb3: 0x42a7110b7ec018eef6c60b3 + limb0: 0x89ba6f45d5ade641fb4fe681, + limb1: 0xee221fe37d14cfc7db866277, + limb2: 0x2f567d1a383d108dd7a206d8, + limb3: 0x26316b73edf3a4b74ac8ca0 }, r1a1: u384 { - limb0: 0xfbfa2247eb0ecf22435e56ba, - limb1: 0x26e54b15bf485995a20d0ad8, - limb2: 0x31cec6bf35037b148f2bee4e, - limb3: 0x53a7f92763f7c929313b5f8 + limb0: 0xef1bf43406fd811d3923b64e, + limb1: 0xe60218148e13fb16187781d8, + limb2: 0xf0623243b832ab262ae2bd53, + limb3: 0x14ec3680120f2c2b4b9c73bb } }, G2Line { r0a0: u384 { - limb0: 0x63b87c960059bd68c9aa8124, - limb1: 0xab4d4e1a640ad5bce68675a5, - limb2: 0xc4f01d0051301e43f108745c, - limb3: 0x1769a7003598dfa5d681da01 + limb0: 0x8a52a39107a0ec10b8344191, + limb1: 0x62271773d04707e777ef384a, + limb2: 0x542571bdc55955faffd48ae3, + limb3: 0x159babcf86f178dd3b05db0c }, r0a1: u384 { - limb0: 0x4f139dab292cf37042ba9e71, - limb1: 0xd04da37b4aa8b8c21d285676, - limb2: 0xbc2ff4536421c63e0e75a9c2, - limb3: 0x84c07ec6cb3760c182be8a6 + limb0: 0x1de09c02242d5d15e6ae653f, + limb1: 0x4394847acee312c8908b60f3, + limb2: 0xac48e5dde8cba73894a0a583, + limb3: 0x10ff2a6e917ac68a76e210f7 }, r1a0: u384 { - limb0: 0x4d64b5d4d748cfff19787401, - limb1: 0x4a01ef8a6a6920f9be73a6ba, - limb2: 0x9b9379f9cf31f119dc91167c, - limb3: 0x14f7d22998e9ba637dde7d90 + limb0: 0x1743256d4776de623ae41e0f, + limb1: 0xa321f02e18e0e34a0c8e2902, + limb2: 0xa26dfa1e821c3313944961c2, + limb3: 0xe9e246cbb6bf85e62b7fbc1 }, r1a1: u384 { - limb0: 0x7999341139e5a79f0e7a77d9, - limb1: 0x6b466a215ced708e073edb32, - limb2: 0x2346c7e89e31d78f02798d68, - limb3: 0x1955ab8ad4f8cd64ddf9034 + limb0: 0x69181258cdd25a4cc7dd77c9, + limb1: 0xbd425539e0bb572f3c7c0d7b, + limb2: 0xbbfbf769a5334ea223cd755a, + limb3: 0xddbb0fea81f0f2e78bed8ac } }, G2Line { r0a0: u384 { - limb0: 0x63b87c960059bd68c9aa8124, - limb1: 0xab4d4e1a640ad5bce68675a5, - limb2: 0xc4f01d0051301e43f108745c, - limb3: 0x1769a7003598dfa5d681da01 + limb0: 0x8a52a39107a0ec10b8344191, + limb1: 0x62271773d04707e777ef384a, + limb2: 0x542571bdc55955faffd48ae3, + limb3: 0x159babcf86f178dd3b05db0c }, r0a1: u384 { - limb0: 0x4f139dab292cf37042ba9e71, - limb1: 0xd04da37b4aa8b8c21d285676, - limb2: 0xbc2ff4536421c63e0e75a9c2, - limb3: 0x84c07ec6cb3760c182be8a6 + limb0: 0x1de09c02242d5d15e6ae653f, + limb1: 0x4394847acee312c8908b60f3, + limb2: 0xac48e5dde8cba73894a0a583, + limb3: 0x10ff2a6e917ac68a76e210f7 }, r1a0: u384 { - limb0: 0x4d64b5d4d748cfff19787401, - limb1: 0x4a01ef8a6a6920f9be73a6ba, - limb2: 0x9b9379f9cf31f119dc91167c, - limb3: 0x14f7d22998e9ba637dde7d90 + limb0: 0x1743256d4776de623ae41e0f, + limb1: 0xa321f02e18e0e34a0c8e2902, + limb2: 0xa26dfa1e821c3313944961c2, + limb3: 0xe9e246cbb6bf85e62b7fbc1 }, r1a1: u384 { - limb0: 0x7999341139e5a79f0e7a77d9, - limb1: 0x6b466a215ced708e073edb32, - limb2: 0x2346c7e89e31d78f02798d68, - limb3: 0x1955ab8ad4f8cd64ddf9034 + limb0: 0x69181258cdd25a4cc7dd77c9, + limb1: 0xbd425539e0bb572f3c7c0d7b, + limb2: 0xbbfbf769a5334ea223cd755a, + limb3: 0xddbb0fea81f0f2e78bed8ac } }, G2Line { r0a0: u384 { - limb0: 0xd591fc1898611f1932cd7018, - limb1: 0x665384c4c2ee64302855dd80, - limb2: 0x488ed549f47cc8937ec83b9b, - limb3: 0x834fb5ac5a160edc4225fc1 + limb0: 0xe9bfb367a0db832b0d1c26db, + limb1: 0xa48c428e5b08ba15f650dbed, + limb2: 0xd916f689b93e37f1927e257c, + limb3: 0x224b5c7dd8f51a0b2861a69 }, r0a1: u384 { - limb0: 0xfccb8fb90df912358f31bc40, - limb1: 0xaa49d7bbbed8933645addfc8, - limb2: 0xe90faa18aac095a8d2c48ce, - limb3: 0x13eb86d8d32723850dc857a6 + limb0: 0x7e9b1b5701d09a782224612a, + limb1: 0x3f67130bb4d3e352fa03761a, + limb2: 0x8de6921d9f950ad8f590150f, + limb3: 0xd41227ac7bf2822c782355e }, r1a0: u384 { - limb0: 0x29dfc1d02abdf45d5da348f3, - limb1: 0x59adf7eb29006d84db598bfa, - limb2: 0x229702547c4676208011f43f, - limb3: 0x14a67d5a2acb4e1a24c647c4 + limb0: 0x1bf8f3da6407cf1084f5a645, + limb1: 0x1c66926201504bcae8d94538, + limb2: 0x212e24b9469b5f1da5a273ca, + limb3: 0x152bd7ba7802d3a4fe4eea68 }, r1a1: u384 { - limb0: 0x55154a400579570a23e8ed04, - limb1: 0x683acc805887277aeec6e8c7, - limb2: 0x4d6d25765397c66cc4420f91, - limb3: 0x192b71f753d52872e3aa7232 + limb0: 0x4eac0f6bde521243da1a0d0f, + limb1: 0xf819d7e262593bdb181c0790, + limb2: 0x9c075e5eb03bb34aeaf3ddaf, + limb3: 0xb860c68a9ed844ef4e218da } }, G2Line { r0a0: u384 { - limb0: 0xd591fc1898611f1932cd7018, - limb1: 0x665384c4c2ee64302855dd80, - limb2: 0x488ed549f47cc8937ec83b9b, - limb3: 0x834fb5ac5a160edc4225fc1 + limb0: 0xe9bfb367a0db832b0d1c26db, + limb1: 0xa48c428e5b08ba15f650dbed, + limb2: 0xd916f689b93e37f1927e257c, + limb3: 0x224b5c7dd8f51a0b2861a69 }, r0a1: u384 { - limb0: 0xfccb8fb90df912358f31bc40, - limb1: 0xaa49d7bbbed8933645addfc8, - limb2: 0xe90faa18aac095a8d2c48ce, - limb3: 0x13eb86d8d32723850dc857a6 + limb0: 0x7e9b1b5701d09a782224612a, + limb1: 0x3f67130bb4d3e352fa03761a, + limb2: 0x8de6921d9f950ad8f590150f, + limb3: 0xd41227ac7bf2822c782355e }, r1a0: u384 { - limb0: 0x29dfc1d02abdf45d5da348f3, - limb1: 0x59adf7eb29006d84db598bfa, - limb2: 0x229702547c4676208011f43f, - limb3: 0x14a67d5a2acb4e1a24c647c4 + limb0: 0x1bf8f3da6407cf1084f5a645, + limb1: 0x1c66926201504bcae8d94538, + limb2: 0x212e24b9469b5f1da5a273ca, + limb3: 0x152bd7ba7802d3a4fe4eea68 }, r1a1: u384 { - limb0: 0x55154a400579570a23e8ed04, - limb1: 0x683acc805887277aeec6e8c7, - limb2: 0x4d6d25765397c66cc4420f91, - limb3: 0x192b71f753d52872e3aa7232 + limb0: 0x4eac0f6bde521243da1a0d0f, + limb1: 0xf819d7e262593bdb181c0790, + limb2: 0x9c075e5eb03bb34aeaf3ddaf, + limb3: 0xb860c68a9ed844ef4e218da } }, G2Line { r0a0: u384 { - limb0: 0xc6550a05c094ce23d3d0f3d9, - limb1: 0xc1cadb9090445f6e96265c1e, - limb2: 0x12c2b9b2f41b7b74e278750c, - limb3: 0x1678dc8d43f3d9984dfa7a41 + limb0: 0x6bd519469c0a6db70833ab59, + limb1: 0x85d4d9ac3f772687e047b38b, + limb2: 0xf772d3b9bc792831f8dc4da0, + limb3: 0x83ad4ea2e572323c5ed4cae }, r0a1: u384 { - limb0: 0x73f45b6db834d2ab72a1673, - limb1: 0x11fce2da975ec9f2226cb34b, - limb2: 0x9faed2673abdeea9c3ca4c57, - limb3: 0x112e825a6e7427984fb37cac + limb0: 0xda51516f555646564a5c763f, + limb1: 0xe2e61f63fd1b2ec441e13edc, + limb2: 0xee9acd1de7e13ea5f7612615, + limb3: 0xe17ce0bf64cb2d5d0687027 }, r1a0: u384 { - limb0: 0x8b06637b46a192acdbc206b2, - limb1: 0x97842e3b444af6f662b22288, - limb2: 0xe788621e3e5f346e54166701, - limb3: 0x1521baee86182400ca9d611c + limb0: 0x46432e99c8d88b233d4b56e1, + limb1: 0x2176899ab708478710bb559f, + limb2: 0xf1596a22deef10f396ccb4d0, + limb3: 0x104170ed422177535e2b83c1 }, r1a1: u384 { - limb0: 0x4974e88fd0caf0516e708941, - limb1: 0x807bdafc61992215f4c7f047, - limb2: 0xc811c79a569d9c8be16b994a, - limb3: 0xb3cef999d2e80e5cc245545 + limb0: 0x1397bda781065e8713557d91, + limb1: 0x46acd993603b042971d606a5, + limb2: 0x56672e297d9a7e6432222c6a, + limb3: 0x13c3e2eacfd4f03083771057 } }, G2Line { r0a0: u384 { - limb0: 0xc6550a05c094ce23d3d0f3d9, - limb1: 0xc1cadb9090445f6e96265c1e, - limb2: 0x12c2b9b2f41b7b74e278750c, - limb3: 0x1678dc8d43f3d9984dfa7a41 + limb0: 0x6bd519469c0a6db70833ab59, + limb1: 0x85d4d9ac3f772687e047b38b, + limb2: 0xf772d3b9bc792831f8dc4da0, + limb3: 0x83ad4ea2e572323c5ed4cae }, r0a1: u384 { - limb0: 0x73f45b6db834d2ab72a1673, - limb1: 0x11fce2da975ec9f2226cb34b, - limb2: 0x9faed2673abdeea9c3ca4c57, - limb3: 0x112e825a6e7427984fb37cac + limb0: 0xda51516f555646564a5c763f, + limb1: 0xe2e61f63fd1b2ec441e13edc, + limb2: 0xee9acd1de7e13ea5f7612615, + limb3: 0xe17ce0bf64cb2d5d0687027 }, r1a0: u384 { - limb0: 0x8b06637b46a192acdbc206b2, - limb1: 0x97842e3b444af6f662b22288, - limb2: 0xe788621e3e5f346e54166701, - limb3: 0x1521baee86182400ca9d611c + limb0: 0x46432e99c8d88b233d4b56e1, + limb1: 0x2176899ab708478710bb559f, + limb2: 0xf1596a22deef10f396ccb4d0, + limb3: 0x104170ed422177535e2b83c1 }, r1a1: u384 { - limb0: 0x4974e88fd0caf0516e708941, - limb1: 0x807bdafc61992215f4c7f047, - limb2: 0xc811c79a569d9c8be16b994a, - limb3: 0xb3cef999d2e80e5cc245545 + limb0: 0x1397bda781065e8713557d91, + limb1: 0x46acd993603b042971d606a5, + limb2: 0x56672e297d9a7e6432222c6a, + limb3: 0x13c3e2eacfd4f03083771057 } }, G2Line { r0a0: u384 { - limb0: 0xcba1ca598dbf95da8d3630c2, - limb1: 0xd9ac88c69dd711e33510c5d4, - limb2: 0x4e6d6007d67ff5ca429d0818, - limb3: 0x5d1687da6de333dccc68623 + limb0: 0x469ac5fc1ac00ce9ff5d6896, + limb1: 0xed1a968d5437d83198eb7a35, + limb2: 0x628c707fd4b54e163d242e7f, + limb3: 0x133da77ba17de20bbb751230 }, r0a1: u384 { - limb0: 0xf30521732387dd6df2818588, - limb1: 0x917960895d7178c08cb88477, - limb2: 0xb50875f476d838d71f12a906, - limb3: 0x192c24c73e9cebd3565c16de + limb0: 0x813447c71991ae21740e91c3, + limb1: 0x7b494f96f2ff34993ba63fd2, + limb2: 0x2d553fb9f14105dfcff00edb, + limb3: 0x87fc96e18fd564074828ce6 }, r1a0: u384 { - limb0: 0x924d40edbe6ce4bb6214e7a2, - limb1: 0xaab304daacb1fa5559191e2a, - limb2: 0xc5ef6f083d18cc4e98ccbd01, - limb3: 0x1837691ad1c2a141aa4fa99b + limb0: 0xe5c72a4b29e05d9864262a90, + limb1: 0x725897e08baa364db3104e96, + limb2: 0x1fef3ee8df44319b941a0711, + limb3: 0x1238ad6245e98702afd9fa0d }, r1a1: u384 { - limb0: 0x99ffe8a986c1ff4dcd6ab900, - limb1: 0xff519d3ed88d4308fcdbd2a9, - limb2: 0x9433bdc0c0d3eca8917da332, - limb3: 0x5daf273efe4e7390af7b37a + limb0: 0xe8ddbe5a3f8ff5b33183f0a, + limb1: 0x2229e588e2a4974c2ccd3187, + limb2: 0xb1cc300fc8e28c90baf4d38b, + limb3: 0x188b93baa142124027ee0cd6 } }, G2Line { r0a0: u384 { - limb0: 0xcba1ca598dbf95da8d3630c2, - limb1: 0xd9ac88c69dd711e33510c5d4, - limb2: 0x4e6d6007d67ff5ca429d0818, - limb3: 0x5d1687da6de333dccc68623 + limb0: 0x469ac5fc1ac00ce9ff5d6896, + limb1: 0xed1a968d5437d83198eb7a35, + limb2: 0x628c707fd4b54e163d242e7f, + limb3: 0x133da77ba17de20bbb751230 }, r0a1: u384 { - limb0: 0xf30521732387dd6df2818588, - limb1: 0x917960895d7178c08cb88477, - limb2: 0xb50875f476d838d71f12a906, - limb3: 0x192c24c73e9cebd3565c16de + limb0: 0x813447c71991ae21740e91c3, + limb1: 0x7b494f96f2ff34993ba63fd2, + limb2: 0x2d553fb9f14105dfcff00edb, + limb3: 0x87fc96e18fd564074828ce6 }, r1a0: u384 { - limb0: 0x924d40edbe6ce4bb6214e7a2, - limb1: 0xaab304daacb1fa5559191e2a, - limb2: 0xc5ef6f083d18cc4e98ccbd01, - limb3: 0x1837691ad1c2a141aa4fa99b + limb0: 0xe5c72a4b29e05d9864262a90, + limb1: 0x725897e08baa364db3104e96, + limb2: 0x1fef3ee8df44319b941a0711, + limb3: 0x1238ad6245e98702afd9fa0d }, r1a1: u384 { - limb0: 0x99ffe8a986c1ff4dcd6ab900, - limb1: 0xff519d3ed88d4308fcdbd2a9, - limb2: 0x9433bdc0c0d3eca8917da332, - limb3: 0x5daf273efe4e7390af7b37a + limb0: 0xe8ddbe5a3f8ff5b33183f0a, + limb1: 0x2229e588e2a4974c2ccd3187, + limb2: 0xb1cc300fc8e28c90baf4d38b, + limb3: 0x188b93baa142124027ee0cd6 } }, G2Line { r0a0: u384 { - limb0: 0xb3828db8c004fea1a7cc2757, - limb1: 0x4c2d04f3024174c091ce1654, - limb2: 0x83fe6d06c138346568441c20, - limb3: 0x12d9046fb25158888901cfc + limb0: 0x60b6f478c5fb570555c652f7, + limb1: 0x8432f575fc231ffa8ba44ee3, + limb2: 0x4cbf173d818c6d864159c368, + limb3: 0x152ca19b4d1497a8e3b8e71 }, r0a1: u384 { - limb0: 0xf0c933a0d72581f7897c7f44, - limb1: 0xd0cf844174a3b0239ffb40d, - limb2: 0x3c3b87d03dcc7513c6b523b7, - limb3: 0xc7f21ae96de648f5c66d3b2 + limb0: 0xc6b533d62a7bc4778ee8a933, + limb1: 0x423d4f5366d5b00528cecfe6, + limb2: 0x6c1c52cb8dcb264601888581, + limb3: 0x130a21a4d9d2dd3d3058ad26 }, r1a0: u384 { - limb0: 0xb63ceda0f9a82727bd2acaea, - limb1: 0xed64388b842c14f011b8ed5e, - limb2: 0x7f3177cac75c4f8c8031074d, - limb3: 0x13a53f2b64f28f276596d759 + limb0: 0xe2c69f6437a35d936e13e350, + limb1: 0x8a05f7e5c8a2d5665083f, + limb2: 0x22bdd9e34209618e08527413, + limb3: 0x12238ad8c565cfc0e7624156 }, r1a1: u384 { - limb0: 0x4cd341db6bf35ae4a8c621e9, - limb1: 0x3f9693309711dda0cdf1061b, - limb2: 0x5030886f7bf7f6354f9a6609, - limb3: 0xdd0fb897f1a88eea21f9cf + limb0: 0x2afaf399d5d442ece155591f, + limb1: 0xb8babb480c6af14d74465993, + limb2: 0x3cc1d540c091d036a56f0435, + limb3: 0x867fdac4a5a9bd3d239c0ae } }, G2Line { r0a0: u384 { - limb0: 0xb3828db8c004fea1a7cc2757, - limb1: 0x4c2d04f3024174c091ce1654, - limb2: 0x83fe6d06c138346568441c20, - limb3: 0x12d9046fb25158888901cfc + limb0: 0x60b6f478c5fb570555c652f7, + limb1: 0x8432f575fc231ffa8ba44ee3, + limb2: 0x4cbf173d818c6d864159c368, + limb3: 0x152ca19b4d1497a8e3b8e71 }, r0a1: u384 { - limb0: 0xf0c933a0d72581f7897c7f44, - limb1: 0xd0cf844174a3b0239ffb40d, - limb2: 0x3c3b87d03dcc7513c6b523b7, - limb3: 0xc7f21ae96de648f5c66d3b2 + limb0: 0xc6b533d62a7bc4778ee8a933, + limb1: 0x423d4f5366d5b00528cecfe6, + limb2: 0x6c1c52cb8dcb264601888581, + limb3: 0x130a21a4d9d2dd3d3058ad26 }, r1a0: u384 { - limb0: 0xb63ceda0f9a82727bd2acaea, - limb1: 0xed64388b842c14f011b8ed5e, - limb2: 0x7f3177cac75c4f8c8031074d, - limb3: 0x13a53f2b64f28f276596d759 + limb0: 0xe2c69f6437a35d936e13e350, + limb1: 0x8a05f7e5c8a2d5665083f, + limb2: 0x22bdd9e34209618e08527413, + limb3: 0x12238ad8c565cfc0e7624156 }, r1a1: u384 { - limb0: 0x4cd341db6bf35ae4a8c621e9, - limb1: 0x3f9693309711dda0cdf1061b, - limb2: 0x5030886f7bf7f6354f9a6609, - limb3: 0xdd0fb897f1a88eea21f9cf + limb0: 0x2afaf399d5d442ece155591f, + limb1: 0xb8babb480c6af14d74465993, + limb2: 0x3cc1d540c091d036a56f0435, + limb3: 0x867fdac4a5a9bd3d239c0ae } }, G2Line { r0a0: u384 { - limb0: 0x63ce0660395b29166de788d9, - limb1: 0x52f176d492457db902305bd4, - limb2: 0x47b45bb6d545eacac8a4290e, - limb3: 0x14cfcb298e40355f6c2e4188 + limb0: 0xe37e00937ba65924a8b608b7, + limb1: 0xba45df44bd8478ad81474084, + limb2: 0xbc3fe2e78b0df7e9c055574f, + limb3: 0x17a606ebbc91ba782360669f }, r0a1: u384 { - limb0: 0x6ab1cd34e95e7cdac5f211ac, - limb1: 0xa3d43f15e8d04492b6d355c1, - limb2: 0xa844df38b9da3de22c916296, - limb3: 0x8a47ac0915e45cb080ac754 + limb0: 0xfe59384820e675ed432fabc8, + limb1: 0xe13bddf4bc2c221229963724, + limb2: 0x5e6a1335be2405acdfc89f95, + limb3: 0x17efea7192c3b49e732185e4 }, r1a0: u384 { - limb0: 0x7333082b6ed5b02567d8468b, - limb1: 0xe38aa6ba72a5c999835f42f3, - limb2: 0x55b7d4445f89ca85b9e8bb87, - limb3: 0xcebfc34509adfe8b1261136 + limb0: 0x8d89d5f9a596495a9ed86723, + limb1: 0x37d884514dcdfe6330f16aeb, + limb2: 0xfbe2d93aae0cc87ec63792cc, + limb3: 0x5cb6d33a8fb5620f529e224 }, r1a1: u384 { - limb0: 0xd655efa9adc76ae3f164aff6, - limb1: 0xa19182f9a0083fe90bbcdd30, - limb2: 0xee483cba8c5c0f8bf2352d33, - limb3: 0xa82a83314d7ee8b109d5fd4 + limb0: 0xf8b3f36c4710db2813109e3d, + limb1: 0x9fbcd8223cee401d6f69756, + limb2: 0xb5edc3a5a3953470cd2d154c, + limb3: 0x9a1f37f12a86190fbd3fae8 } }, G2Line { r0a0: u384 { - limb0: 0x63ce0660395b29166de788d9, - limb1: 0x52f176d492457db902305bd4, - limb2: 0x47b45bb6d545eacac8a4290e, - limb3: 0x14cfcb298e40355f6c2e4188 + limb0: 0xe37e00937ba65924a8b608b7, + limb1: 0xba45df44bd8478ad81474084, + limb2: 0xbc3fe2e78b0df7e9c055574f, + limb3: 0x17a606ebbc91ba782360669f }, r0a1: u384 { - limb0: 0x6ab1cd34e95e7cdac5f211ac, - limb1: 0xa3d43f15e8d04492b6d355c1, - limb2: 0xa844df38b9da3de22c916296, - limb3: 0x8a47ac0915e45cb080ac754 + limb0: 0xfe59384820e675ed432fabc8, + limb1: 0xe13bddf4bc2c221229963724, + limb2: 0x5e6a1335be2405acdfc89f95, + limb3: 0x17efea7192c3b49e732185e4 }, r1a0: u384 { - limb0: 0x7333082b6ed5b02567d8468b, - limb1: 0xe38aa6ba72a5c999835f42f3, - limb2: 0x55b7d4445f89ca85b9e8bb87, - limb3: 0xcebfc34509adfe8b1261136 + limb0: 0x8d89d5f9a596495a9ed86723, + limb1: 0x37d884514dcdfe6330f16aeb, + limb2: 0xfbe2d93aae0cc87ec63792cc, + limb3: 0x5cb6d33a8fb5620f529e224 }, r1a1: u384 { - limb0: 0xd655efa9adc76ae3f164aff6, - limb1: 0xa19182f9a0083fe90bbcdd30, - limb2: 0xee483cba8c5c0f8bf2352d33, - limb3: 0xa82a83314d7ee8b109d5fd4 + limb0: 0xf8b3f36c4710db2813109e3d, + limb1: 0x9fbcd8223cee401d6f69756, + limb2: 0xb5edc3a5a3953470cd2d154c, + limb3: 0x9a1f37f12a86190fbd3fae8 } }, G2Line { r0a0: u384 { - limb0: 0x36c8d902e0b84e21f36c2c46, - limb1: 0xfe3d700f6127a455b696109b, - limb2: 0x6bc340d7062f406ed6069132, - limb3: 0x11f71c4d8d7223b3dceff889 + limb0: 0xf572a9254aab7d02e6e18e12, + limb1: 0x25f6a58a4ac6b2e5aa9e30fd, + limb2: 0x291d3ffd1882f554f7eb9030, + limb3: 0x14492ff41dabf1a3446a8bc }, r0a1: u384 { - limb0: 0x6c1bbc6bd2bdd7b2edb86c6b, - limb1: 0xdb917578ed7adb6961b4cc0, - limb2: 0x4ef07503b60a8b637d13bdf5, - limb3: 0x12c52c4cb31652c330d49278 + limb0: 0x496fa0c3a067ea0723bc8b04, + limb1: 0x235705d25abd810b4c0ab2d2, + limb2: 0xc904ea670d327a4da355254b, + limb3: 0xc5286ff6a01f80644909741 }, r1a0: u384 { - limb0: 0x966c1706eccf585c0c95d97f, - limb1: 0x8bc55cc27b9665cdbb046f59, - limb2: 0x14a1c8efe6c647dd7af6257, - limb3: 0xb79a22bf616b03bf6248226 + limb0: 0xd2503834642cb86e2fd8e955, + limb1: 0xcb32eeb05d7c4619579c337, + limb2: 0xda6b97434d6356b07a5682d0, + limb3: 0x17d7a5ae75b00f8a6be0869d }, r1a1: u384 { - limb0: 0xbd8d5da9e34a3e93d561d729, - limb1: 0x8a3c704f600ee83108b8c4d1, - limb2: 0x2824cef34cfbd96e42f930ca, - limb3: 0x6701244eeb1feae120064 + limb0: 0xf6c18e9852a61741d1a58a71, + limb1: 0xbcb6992562146b15de7020cf, + limb2: 0x6a935df6b073126e40278764, + limb3: 0x43b43fd178daff064b160a7 } }, G2Line { r0a0: u384 { - limb0: 0x36c8d902e0b84e21f36c2c46, - limb1: 0xfe3d700f6127a455b696109b, - limb2: 0x6bc340d7062f406ed6069132, - limb3: 0x11f71c4d8d7223b3dceff889 + limb0: 0xf572a9254aab7d02e6e18e12, + limb1: 0x25f6a58a4ac6b2e5aa9e30fd, + limb2: 0x291d3ffd1882f554f7eb9030, + limb3: 0x14492ff41dabf1a3446a8bc }, r0a1: u384 { - limb0: 0x6c1bbc6bd2bdd7b2edb86c6b, - limb1: 0xdb917578ed7adb6961b4cc0, - limb2: 0x4ef07503b60a8b637d13bdf5, - limb3: 0x12c52c4cb31652c330d49278 + limb0: 0x496fa0c3a067ea0723bc8b04, + limb1: 0x235705d25abd810b4c0ab2d2, + limb2: 0xc904ea670d327a4da355254b, + limb3: 0xc5286ff6a01f80644909741 }, r1a0: u384 { - limb0: 0x966c1706eccf585c0c95d97f, - limb1: 0x8bc55cc27b9665cdbb046f59, - limb2: 0x14a1c8efe6c647dd7af6257, - limb3: 0xb79a22bf616b03bf6248226 + limb0: 0xd2503834642cb86e2fd8e955, + limb1: 0xcb32eeb05d7c4619579c337, + limb2: 0xda6b97434d6356b07a5682d0, + limb3: 0x17d7a5ae75b00f8a6be0869d }, r1a1: u384 { - limb0: 0xbd8d5da9e34a3e93d561d729, - limb1: 0x8a3c704f600ee83108b8c4d1, - limb2: 0x2824cef34cfbd96e42f930ca, - limb3: 0x6701244eeb1feae120064 + limb0: 0xf6c18e9852a61741d1a58a71, + limb1: 0xbcb6992562146b15de7020cf, + limb2: 0x6a935df6b073126e40278764, + limb3: 0x43b43fd178daff064b160a7 } }, G2Line { r0a0: u384 { - limb0: 0xd38e938e7b35288869c6fc06, - limb1: 0x76e5de67acadcf13068f7178, - limb2: 0x3de17bbbbd28acdd46fcdc27, - limb3: 0x13ebe20f7af63a347ff2e6f1 + limb0: 0xf6319d592a5694bc46696337, + limb1: 0x451f2ed5bfd3336ad0d8ba97, + limb2: 0x7e1cebcedbdf77784260add0, + limb3: 0x132eaf25f317bb4157b8f15c }, r0a1: u384 { - limb0: 0x5397df6903b30321c4edd1e6, - limb1: 0x52e6b7c9a259004f4e5958ce, - limb2: 0xa49dd418b33d06e8a06a0339, - limb3: 0x1271e03e88b3d2d6d77e47e6 + limb0: 0x71c53170de382d079a96ff3, + limb1: 0xa38b8a791b34753e5cdb937, + limb2: 0xc28b4ec5173206100e5ebe66, + limb3: 0x184445c3b15e7e79225dbd30 }, r1a0: u384 { - limb0: 0x97f57253bd276fa11983c03, - limb1: 0x7804edd6e1cbdf59133e3def, - limb2: 0xc3074cc400bd01c286154259, - limb3: 0xc6a95982ae8fa9f846d3e02 + limb0: 0x48a4c907af3c04d409af2b54, + limb1: 0x5ba9409869910df2721c4194, + limb2: 0x54edfb6d8e9d7166b4dd184e, + limb3: 0x22d50e6a0fc341969081f03 }, r1a1: u384 { - limb0: 0x46e1dff730c8221162584c5a, - limb1: 0xf58bb9811c11a85fb23d0624, - limb2: 0x66853553066dcf80cce6e7f6, - limb3: 0x188ada59f565d1a8cfe9ece9 + limb0: 0xb04646ff3f005ff50c9e18df, + limb1: 0x93f971f4287a88184972225f, + limb2: 0x15a689815939015e72535806, + limb3: 0x19fd611f130b5d1e8ede166f } }, G2Line { r0a0: u384 { - limb0: 0xd38e938e7b35288869c6fc06, - limb1: 0x76e5de67acadcf13068f7178, - limb2: 0x3de17bbbbd28acdd46fcdc27, - limb3: 0x13ebe20f7af63a347ff2e6f1 + limb0: 0xf6319d592a5694bc46696337, + limb1: 0x451f2ed5bfd3336ad0d8ba97, + limb2: 0x7e1cebcedbdf77784260add0, + limb3: 0x132eaf25f317bb4157b8f15c }, r0a1: u384 { - limb0: 0x5397df6903b30321c4edd1e6, - limb1: 0x52e6b7c9a259004f4e5958ce, - limb2: 0xa49dd418b33d06e8a06a0339, - limb3: 0x1271e03e88b3d2d6d77e47e6 + limb0: 0x71c53170de382d079a96ff3, + limb1: 0xa38b8a791b34753e5cdb937, + limb2: 0xc28b4ec5173206100e5ebe66, + limb3: 0x184445c3b15e7e79225dbd30 }, r1a0: u384 { - limb0: 0x97f57253bd276fa11983c03, - limb1: 0x7804edd6e1cbdf59133e3def, - limb2: 0xc3074cc400bd01c286154259, - limb3: 0xc6a95982ae8fa9f846d3e02 + limb0: 0x48a4c907af3c04d409af2b54, + limb1: 0x5ba9409869910df2721c4194, + limb2: 0x54edfb6d8e9d7166b4dd184e, + limb3: 0x22d50e6a0fc341969081f03 }, r1a1: u384 { - limb0: 0x46e1dff730c8221162584c5a, - limb1: 0xf58bb9811c11a85fb23d0624, - limb2: 0x66853553066dcf80cce6e7f6, - limb3: 0x188ada59f565d1a8cfe9ece9 + limb0: 0xb04646ff3f005ff50c9e18df, + limb1: 0x93f971f4287a88184972225f, + limb2: 0x15a689815939015e72535806, + limb3: 0x19fd611f130b5d1e8ede166f } }, G2Line { r0a0: u384 { - limb0: 0x6876e2342a72dad60b1d818a, - limb1: 0x893d3124ce1a8621699f0032, - limb2: 0xfd8c1f4ff9550644f8cbcc25, - limb3: 0x4cf2e85a42e1b23b67ebd27 + limb0: 0x4af66b41351181b331ea3976, + limb1: 0xdf686d1dfa279c5d955d69f8, + limb2: 0xf224539293baa97ba91472c8, + limb3: 0x181f9a5deeefeb729ee64ef3 }, r0a1: u384 { - limb0: 0x427d447d9c1cc167b8e54091, - limb1: 0x2e770fadec60428ff783da46, - limb2: 0x63ccc30f754a587bb83bc76a, - limb3: 0xfe5c2befec855bd0a76eeaf + limb0: 0xf94c654eb0dcbb11daf5dd12, + limb1: 0xb7895ee3b2e22e4a2d8f112b, + limb2: 0xf1924a889450458e43d53bbf, + limb3: 0x130e2c572546f4d1e95aae48 }, r1a0: u384 { - limb0: 0xfb67f37b72b1b787f8d36e67, - limb1: 0xe66660f07dcb1c3da5792552, - limb2: 0x3e3e6150622c9d4bb6fdc05c, - limb3: 0xaf1e570ec5293506d442476 + limb0: 0x14818b38cd680cdb9b9fd318, + limb1: 0x9d59e4aace6a4fa54918e52, + limb2: 0x943c5ea01fc056693a13a1dc, + limb3: 0x1d208479b5a2ba789c1c49c }, r1a1: u384 { - limb0: 0x9ab14437b745b4a78cce6b18, - limb1: 0x4e9edc28d1193274694203bf, - limb2: 0x7d5ad54aaaeb1aedcddd55be, - limb3: 0x7251e5500a9f8dd3ec57c82 + limb0: 0xc95627db420a1769985c65a, + limb1: 0x28114e69cc6b1e6610686034, + limb2: 0x684dba5818cd9567cd3eb1d5, + limb3: 0x8b2f4bfbb76f7bbe06fa3fb } }, G2Line { r0a0: u384 { - limb0: 0x3b177ede8d2002d2eb10a2a4, - limb1: 0xb12ea54640bb126aee520ec3, - limb2: 0xe7e51f420f4490990b0f088, - limb3: 0xcb71e08e79171568651b414 + limb0: 0xa3f965892619fa2d5f100a90, + limb1: 0x91ac9f1860e2c0784cc09f2e, + limb2: 0x5d0d3a1daee694dd540e2be8, + limb3: 0x135b1b1e627752d4225fe38f }, r0a1: u384 { - limb0: 0x1a0f09e7142d1088134f79af, - limb1: 0x9689b1e65b765ef7a22292b1, - limb2: 0x5824f5e3cfc0a72ac8727d71, - limb3: 0x13c640752a7de830613fbefb + limb0: 0x4a3bbb3eb2650c54b67cb3e6, + limb1: 0xdbc39eac3f79cdd03bf8c447, + limb2: 0xf6e59f6ab4d2f09c29a4d6a6, + limb3: 0x1569cfa6c576cb41e0abab8e }, r1a0: u384 { - limb0: 0xcf8fec7a5dcc9c311b24a7a5, - limb1: 0x9aceb2f1d375d8b98990670a, - limb2: 0xd64885270e571f5bce65eb76, - limb3: 0x5a9006ac3eae17b6eeedce6 + limb0: 0xd3fc9075971fe3ac2ac0ee27, + limb1: 0x160bd9673609e08f18d29a2a, + limb2: 0x6036d235fbac166426b89e79, + limb3: 0x8dce438a963a69aff1172f9 }, r1a1: u384 { - limb0: 0xeb2925ce7e8ce16f6900f319, - limb1: 0xb7c24cc268cd1289351b169, - limb2: 0xf985f78a3ccc5b92e1b07c8, - limb3: 0x11f31d03e8e740919c1a72e4 + limb0: 0xeec2b40db63bc7ec5d2964b, + limb1: 0x55dda0ccc259984398ae15c, + limb2: 0xc6b82e182877a6a5d0b90a8d, + limb3: 0x6a18a2cb4b051e7cf08daf6 } }, G2Line { r0a0: u384 { - limb0: 0x6876e2342a72dad60b1d818a, - limb1: 0x893d3124ce1a8621699f0032, - limb2: 0xfd8c1f4ff9550644f8cbcc25, - limb3: 0x4cf2e85a42e1b23b67ebd27 + limb0: 0x4af66b41351181b331ea3976, + limb1: 0xdf686d1dfa279c5d955d69f8, + limb2: 0xf224539293baa97ba91472c8, + limb3: 0x181f9a5deeefeb729ee64ef3 }, r0a1: u384 { - limb0: 0x427d447d9c1cc167b8e54091, - limb1: 0x2e770fadec60428ff783da46, - limb2: 0x63ccc30f754a587bb83bc76a, - limb3: 0xfe5c2befec855bd0a76eeaf + limb0: 0xf94c654eb0dcbb11daf5dd12, + limb1: 0xb7895ee3b2e22e4a2d8f112b, + limb2: 0xf1924a889450458e43d53bbf, + limb3: 0x130e2c572546f4d1e95aae48 }, r1a0: u384 { - limb0: 0xfb67f37b72b1b787f8d36e67, - limb1: 0xe66660f07dcb1c3da5792552, - limb2: 0x3e3e6150622c9d4bb6fdc05c, - limb3: 0xaf1e570ec5293506d442476 + limb0: 0x14818b38cd680cdb9b9fd318, + limb1: 0x9d59e4aace6a4fa54918e52, + limb2: 0x943c5ea01fc056693a13a1dc, + limb3: 0x1d208479b5a2ba789c1c49c }, r1a1: u384 { - limb0: 0x9ab14437b745b4a78cce6b18, - limb1: 0x4e9edc28d1193274694203bf, - limb2: 0x7d5ad54aaaeb1aedcddd55be, - limb3: 0x7251e5500a9f8dd3ec57c82 + limb0: 0xc95627db420a1769985c65a, + limb1: 0x28114e69cc6b1e6610686034, + limb2: 0x684dba5818cd9567cd3eb1d5, + limb3: 0x8b2f4bfbb76f7bbe06fa3fb } }, G2Line { r0a0: u384 { - limb0: 0x3b177ede8d2002d2eb10a2a4, - limb1: 0xb12ea54640bb126aee520ec3, - limb2: 0xe7e51f420f4490990b0f088, - limb3: 0xcb71e08e79171568651b414 + limb0: 0xa3f965892619fa2d5f100a90, + limb1: 0x91ac9f1860e2c0784cc09f2e, + limb2: 0x5d0d3a1daee694dd540e2be8, + limb3: 0x135b1b1e627752d4225fe38f }, r0a1: u384 { - limb0: 0x1a0f09e7142d1088134f79af, - limb1: 0x9689b1e65b765ef7a22292b1, - limb2: 0x5824f5e3cfc0a72ac8727d71, - limb3: 0x13c640752a7de830613fbefb + limb0: 0x4a3bbb3eb2650c54b67cb3e6, + limb1: 0xdbc39eac3f79cdd03bf8c447, + limb2: 0xf6e59f6ab4d2f09c29a4d6a6, + limb3: 0x1569cfa6c576cb41e0abab8e }, r1a0: u384 { - limb0: 0xcf8fec7a5dcc9c311b24a7a5, - limb1: 0x9aceb2f1d375d8b98990670a, - limb2: 0xd64885270e571f5bce65eb76, - limb3: 0x5a9006ac3eae17b6eeedce6 + limb0: 0xd3fc9075971fe3ac2ac0ee27, + limb1: 0x160bd9673609e08f18d29a2a, + limb2: 0x6036d235fbac166426b89e79, + limb3: 0x8dce438a963a69aff1172f9 }, r1a1: u384 { - limb0: 0xeb2925ce7e8ce16f6900f319, - limb1: 0xb7c24cc268cd1289351b169, - limb2: 0xf985f78a3ccc5b92e1b07c8, - limb3: 0x11f31d03e8e740919c1a72e4 + limb0: 0xeec2b40db63bc7ec5d2964b, + limb1: 0x55dda0ccc259984398ae15c, + limb2: 0xc6b82e182877a6a5d0b90a8d, + limb3: 0x6a18a2cb4b051e7cf08daf6 } }, G2Line { r0a0: u384 { - limb0: 0x4cb6f7fde75571b0131228b4, - limb1: 0x485bc1cd4d19b498cf56db36, - limb2: 0x13d10a46b4eb7d4864c131a8, - limb3: 0x5a617eb448ffa67c9eb796 + limb0: 0x7eb8b667e108389abcdbaaf6, + limb1: 0xf531fcd8df038d93a189e6d3, + limb2: 0x721eeae149af3e91bf8919fa, + limb3: 0x14bbc2d4ec94ecfbbbe55338 }, r0a1: u384 { - limb0: 0x55a31da0117cfae82b428026, - limb1: 0xa85614652fbf0ff935fddf97, - limb2: 0x124ed63b63f87a5191168c48, - limb3: 0x15406d9442defdbd93ec107e + limb0: 0x2f13d75f13a2babe4e969db7, + limb1: 0xfd9489784f2965cc46d0566f, + limb2: 0x84d7ac80ce36d619d8d8376e, + limb3: 0x5b5cf98e7897838d047fd4 }, r1a0: u384 { - limb0: 0x393df353230d71a5abc626da, - limb1: 0x96c83504158b023ce4cdc6a1, - limb2: 0xc231302e7cec8f9adc748c3a, - limb3: 0x16957c71c6a0c58258797965 + limb0: 0x836f1573b93409ebd410dd7d, + limb1: 0x1c80f8caabfd78714d16f31b, + limb2: 0xd6c3be262aacbd8ee9bffb64, + limb3: 0x404cb670f104f7bc6ac6ce1 }, r1a1: u384 { - limb0: 0x8a15b27d54c44f0484a728e7, - limb1: 0x4580c5474f789b9673c86b12, - limb2: 0xd93aeb500bfc08288df40d89, - limb3: 0xbdb432afb3f8c0901688e18 + limb0: 0xb6d7a510819438b506657d01, + limb1: 0xcd0718e98198254ac1159b0f, + limb2: 0xdafb78b219c112c6cbed0850, + limb3: 0x36b81a5a46d3abd8707f175 } }, G2Line { r0a0: u384 { - limb0: 0x4cb6f7fde75571b0131228b4, - limb1: 0x485bc1cd4d19b498cf56db36, - limb2: 0x13d10a46b4eb7d4864c131a8, - limb3: 0x5a617eb448ffa67c9eb796 + limb0: 0x7eb8b667e108389abcdbaaf6, + limb1: 0xf531fcd8df038d93a189e6d3, + limb2: 0x721eeae149af3e91bf8919fa, + limb3: 0x14bbc2d4ec94ecfbbbe55338 }, r0a1: u384 { - limb0: 0x55a31da0117cfae82b428026, - limb1: 0xa85614652fbf0ff935fddf97, - limb2: 0x124ed63b63f87a5191168c48, - limb3: 0x15406d9442defdbd93ec107e + limb0: 0x2f13d75f13a2babe4e969db7, + limb1: 0xfd9489784f2965cc46d0566f, + limb2: 0x84d7ac80ce36d619d8d8376e, + limb3: 0x5b5cf98e7897838d047fd4 }, r1a0: u384 { - limb0: 0x393df353230d71a5abc626da, - limb1: 0x96c83504158b023ce4cdc6a1, - limb2: 0xc231302e7cec8f9adc748c3a, - limb3: 0x16957c71c6a0c58258797965 + limb0: 0x836f1573b93409ebd410dd7d, + limb1: 0x1c80f8caabfd78714d16f31b, + limb2: 0xd6c3be262aacbd8ee9bffb64, + limb3: 0x404cb670f104f7bc6ac6ce1 }, r1a1: u384 { - limb0: 0x8a15b27d54c44f0484a728e7, - limb1: 0x4580c5474f789b9673c86b12, - limb2: 0xd93aeb500bfc08288df40d89, - limb3: 0xbdb432afb3f8c0901688e18 + limb0: 0xb6d7a510819438b506657d01, + limb1: 0xcd0718e98198254ac1159b0f, + limb2: 0xdafb78b219c112c6cbed0850, + limb3: 0x36b81a5a46d3abd8707f175 } }, G2Line { r0a0: u384 { - limb0: 0x20ca8d7f1de1a4cb09ebe7dd, - limb1: 0x976343d02687671ec36efbfa, - limb2: 0x623930ac3dd168287eb5bfc4, - limb3: 0x5bce1d8f76587a479e853a8 + limb0: 0xc67f0cf174bce99c3a1c8171, + limb1: 0xbda456379da0bcf7227567d0, + limb2: 0xa8a13ec9cbaa6fc33c080750, + limb3: 0x10ac69558879504fe43611a3 }, r0a1: u384 { - limb0: 0x2be76b95021897e48bc4df0b, - limb1: 0x13a2551a1b2c19335645fa7, - limb2: 0xc4774e73a260de9b234008be, - limb3: 0x3972bfbad5cf8f3b1f56b0c + limb0: 0x5a4c29402ec1639461a54ee2, + limb1: 0x7898004551bee30b5326443c, + limb2: 0x3d00cecf3abb75ba0687577e, + limb3: 0x1828692e25ec610d628831ec }, r1a0: u384 { - limb0: 0x7635b0b91e2cb29651752033, - limb1: 0x6985f4498683f492bef27231, - limb2: 0xe4dc9a90d51e7bf0ab04748, - limb3: 0x127eb3211185a97d3b94571d + limb0: 0x54ee51feb5fe0d6d6977ce0f, + limb1: 0xa567961df73e459c513fdf53, + limb2: 0xbb32926a29ceaa2f89298be5, + limb3: 0x1398c2c93d90b8c305d12b82 }, r1a1: u384 { - limb0: 0xe511b0423e2ba185c514919a, - limb1: 0x1513c92c1d0fc9db28b94e17, - limb2: 0x690b9ea192d886ea1f1544dd, - limb3: 0x168829c6e99903b752d689ff + limb0: 0x662200af896a2132c18553d9, + limb1: 0xfbbc9bb64462ebd0d5592c37, + limb2: 0x70aff8c371b32e87daa99378, + limb3: 0x1393f172bfdc9d6159b69b7 } }, G2Line { r0a0: u384 { - limb0: 0x20ca8d7f1de1a4cb09ebe7dd, - limb1: 0x976343d02687671ec36efbfa, - limb2: 0x623930ac3dd168287eb5bfc4, - limb3: 0x5bce1d8f76587a479e853a8 + limb0: 0xc67f0cf174bce99c3a1c8171, + limb1: 0xbda456379da0bcf7227567d0, + limb2: 0xa8a13ec9cbaa6fc33c080750, + limb3: 0x10ac69558879504fe43611a3 }, r0a1: u384 { - limb0: 0x2be76b95021897e48bc4df0b, - limb1: 0x13a2551a1b2c19335645fa7, - limb2: 0xc4774e73a260de9b234008be, - limb3: 0x3972bfbad5cf8f3b1f56b0c + limb0: 0x5a4c29402ec1639461a54ee2, + limb1: 0x7898004551bee30b5326443c, + limb2: 0x3d00cecf3abb75ba0687577e, + limb3: 0x1828692e25ec610d628831ec }, r1a0: u384 { - limb0: 0x7635b0b91e2cb29651752033, - limb1: 0x6985f4498683f492bef27231, - limb2: 0xe4dc9a90d51e7bf0ab04748, - limb3: 0x127eb3211185a97d3b94571d + limb0: 0x54ee51feb5fe0d6d6977ce0f, + limb1: 0xa567961df73e459c513fdf53, + limb2: 0xbb32926a29ceaa2f89298be5, + limb3: 0x1398c2c93d90b8c305d12b82 }, r1a1: u384 { - limb0: 0xe511b0423e2ba185c514919a, - limb1: 0x1513c92c1d0fc9db28b94e17, - limb2: 0x690b9ea192d886ea1f1544dd, - limb3: 0x168829c6e99903b752d689ff + limb0: 0x662200af896a2132c18553d9, + limb1: 0xfbbc9bb64462ebd0d5592c37, + limb2: 0x70aff8c371b32e87daa99378, + limb3: 0x1393f172bfdc9d6159b69b7 } }, G2Line { r0a0: u384 { - limb0: 0x99d75149909fe58217d0e80f, - limb1: 0x215309d3e60b7e7eac0e4c14, - limb2: 0xd0b52f5462ffee5ad477f96e, - limb3: 0x4fe3252c831658ea578ce00 + limb0: 0x419bd83d86eb9b48fe76e908, + limb1: 0x7ec8a4a508d9dd8d9f0cbc7b, + limb2: 0x1d157efa166e4febf963514c, + limb3: 0x1420bba65d2104b6119d2c4 }, r0a1: u384 { - limb0: 0x74603d5c716a9c01f4623a6a, - limb1: 0xbcda4fcdc58cbf3ef51e4cba, - limb2: 0x42c8fa71883120cf9ed1646c, - limb3: 0x149196aa4de84743b2a7aeb1 + limb0: 0x8830d2087d44cfe993746df0, + limb1: 0xdfef5c81ebf6ebc03bec9cc6, + limb2: 0xe7905948e5114e4596ff5f60, + limb3: 0x6e1ae64e8927dfa21004749 }, r1a0: u384 { - limb0: 0xba9f975f2276117a6f9fa807, - limb1: 0xf7f275c9e90ea94a35a7c4c4, - limb2: 0x3015891bbffdeef04c10a5bc, - limb3: 0xd9047a858fbf74b24e1bf0c + limb0: 0xefaa36295da267644963c6d, + limb1: 0x78a7e15f56f557c1fcbc7ca5, + limb2: 0xb767608dd17af71487652221, + limb3: 0xc78320f16929d767e3d821b }, r1a1: u384 { - limb0: 0xf39901bf755ec745f2b538ea, - limb1: 0x8566017e20f70611bb1c2326, - limb2: 0x446503151892f833dd2ffe8, - limb3: 0x125c734608ccf6013738ed3b + limb0: 0xfefc0a1166505acd55fa1631, + limb1: 0x378919952b23d95a013db919, + limb2: 0x4effd8054d15deeab8826b64, + limb3: 0x176a34096cb7158d0cef3c3c } }, G2Line { r0a0: u384 { - limb0: 0x99d75149909fe58217d0e80f, - limb1: 0x215309d3e60b7e7eac0e4c14, - limb2: 0xd0b52f5462ffee5ad477f96e, - limb3: 0x4fe3252c831658ea578ce00 + limb0: 0x419bd83d86eb9b48fe76e908, + limb1: 0x7ec8a4a508d9dd8d9f0cbc7b, + limb2: 0x1d157efa166e4febf963514c, + limb3: 0x1420bba65d2104b6119d2c4 }, r0a1: u384 { - limb0: 0x74603d5c716a9c01f4623a6a, - limb1: 0xbcda4fcdc58cbf3ef51e4cba, - limb2: 0x42c8fa71883120cf9ed1646c, - limb3: 0x149196aa4de84743b2a7aeb1 + limb0: 0x8830d2087d44cfe993746df0, + limb1: 0xdfef5c81ebf6ebc03bec9cc6, + limb2: 0xe7905948e5114e4596ff5f60, + limb3: 0x6e1ae64e8927dfa21004749 }, r1a0: u384 { - limb0: 0xba9f975f2276117a6f9fa807, - limb1: 0xf7f275c9e90ea94a35a7c4c4, - limb2: 0x3015891bbffdeef04c10a5bc, - limb3: 0xd9047a858fbf74b24e1bf0c + limb0: 0xefaa36295da267644963c6d, + limb1: 0x78a7e15f56f557c1fcbc7ca5, + limb2: 0xb767608dd17af71487652221, + limb3: 0xc78320f16929d767e3d821b }, r1a1: u384 { - limb0: 0xf39901bf755ec745f2b538ea, - limb1: 0x8566017e20f70611bb1c2326, - limb2: 0x446503151892f833dd2ffe8, - limb3: 0x125c734608ccf6013738ed3b + limb0: 0xfefc0a1166505acd55fa1631, + limb1: 0x378919952b23d95a013db919, + limb2: 0x4effd8054d15deeab8826b64, + limb3: 0x176a34096cb7158d0cef3c3c } }, G2Line { r0a0: u384 { - limb0: 0xcd410d3c10c43d260194aeb5, - limb1: 0xb27c0222f397224b9789a695, - limb2: 0x66cf46e4ec0552ec054ce8dc, - limb3: 0xadf81fe9827565c80c1da43 + limb0: 0x7b88b524da914a1f772f35ae, + limb1: 0xfd1848ce315a9c3752a60924, + limb2: 0x99ce0565c9e2ce7e0f035981, + limb3: 0xc6041b85ac77652b5988bcf }, r0a1: u384 { - limb0: 0x54737257d0ff4457c147ad4d, - limb1: 0xce38ae231338e531bfab0e92, - limb2: 0x218c1640dad602809b35a8ed, - limb3: 0x10b760229a8ee3ac38e24ae6 + limb0: 0xe523275236f4583af6eeaefa, + limb1: 0x650f16313ed6cabca4754fa1, + limb2: 0xcd36d4eb569ea862c7af7455, + limb3: 0x2fe9ab09130587a7800420c }, r1a0: u384 { - limb0: 0x2965f2b3f5d044bd48867db1, - limb1: 0xbf62d50871a46fe789b60a1a, - limb2: 0xdc9f14043ad3e66bdf009964, - limb3: 0xd6622408de5fd073a616543 + limb0: 0x4e1e2e29fcded125b398e1fe, + limb1: 0xc90219c4198d53fe6cb96001, + limb2: 0xb380b169215a71a3f045eedb, + limb3: 0x5579d5b88fb5581d447345e }, r1a1: u384 { - limb0: 0x785a0b991501841bd27b62af, - limb1: 0xc4320483cc630abdb66604e1, - limb2: 0xc68b803470e5cdbcdb57af15, - limb3: 0x22188f8d81849da09b2098d + limb0: 0x452a54b953fd0750e0f43789, + limb1: 0xb0baf5e9db5674ab6715c233, + limb2: 0x5f52e0f7b6fc6c4244aa746c, + limb3: 0xc282524800b40c6e9d7d09e } }, G2Line { r0a0: u384 { - limb0: 0xcd410d3c10c43d260194aeb5, - limb1: 0xb27c0222f397224b9789a695, - limb2: 0x66cf46e4ec0552ec054ce8dc, - limb3: 0xadf81fe9827565c80c1da43 + limb0: 0x7b88b524da914a1f772f35ae, + limb1: 0xfd1848ce315a9c3752a60924, + limb2: 0x99ce0565c9e2ce7e0f035981, + limb3: 0xc6041b85ac77652b5988bcf }, r0a1: u384 { - limb0: 0x54737257d0ff4457c147ad4d, - limb1: 0xce38ae231338e531bfab0e92, - limb2: 0x218c1640dad602809b35a8ed, - limb3: 0x10b760229a8ee3ac38e24ae6 + limb0: 0xe523275236f4583af6eeaefa, + limb1: 0x650f16313ed6cabca4754fa1, + limb2: 0xcd36d4eb569ea862c7af7455, + limb3: 0x2fe9ab09130587a7800420c }, r1a0: u384 { - limb0: 0x2965f2b3f5d044bd48867db1, - limb1: 0xbf62d50871a46fe789b60a1a, - limb2: 0xdc9f14043ad3e66bdf009964, - limb3: 0xd6622408de5fd073a616543 + limb0: 0x4e1e2e29fcded125b398e1fe, + limb1: 0xc90219c4198d53fe6cb96001, + limb2: 0xb380b169215a71a3f045eedb, + limb3: 0x5579d5b88fb5581d447345e }, r1a1: u384 { - limb0: 0x785a0b991501841bd27b62af, - limb1: 0xc4320483cc630abdb66604e1, - limb2: 0xc68b803470e5cdbcdb57af15, - limb3: 0x22188f8d81849da09b2098d + limb0: 0x452a54b953fd0750e0f43789, + limb1: 0xb0baf5e9db5674ab6715c233, + limb2: 0x5f52e0f7b6fc6c4244aa746c, + limb3: 0xc282524800b40c6e9d7d09e } }, G2Line { r0a0: u384 { - limb0: 0xd380c682d95a8ca80b77e3e1, - limb1: 0x80975dda895f4fcb6287b95f, - limb2: 0x66bd6f32dc1425df6da4484, - limb3: 0x18f2a03b6d5cc7ce996c3752 + limb0: 0x8da7be93d265fae7f78ea33b, + limb1: 0x3cfa6d6e558e13e96c9334cf, + limb2: 0xb1c81766cbfad8e142cdb6a3, + limb3: 0x131f36155651b8afb4ebd5e8 }, r0a1: u384 { - limb0: 0x57f4cad3b4e86b98c7bcd2cf, - limb1: 0xe5cfc656dfcae5db712db96e, - limb2: 0x8be11110f99f217f1e13e8d, - limb3: 0xc695ea0a4a6736d172dd612 + limb0: 0xc76fbd197e5e22abf4dd0e8c, + limb1: 0x237273a153a717caef3efe4f, + limb2: 0x2ddcdfe400ff8dfbac82d72a, + limb3: 0x19de6f563931c8d091104ac6 }, r1a0: u384 { - limb0: 0x13da55a0a470dece890562e6, - limb1: 0x1282e527ec2c96213d480532, - limb2: 0x8226a1fa4b6bff8427972f64, - limb3: 0xab83ceccc3e011d59694d9e + limb0: 0x53d221c09aa2967ab460b527, + limb1: 0x5636dea540c5558443acc1da, + limb2: 0xbd4279f5254520786ba7b9b5, + limb3: 0x340cf1396c7e30a89d8ffba }, r1a1: u384 { - limb0: 0x9b5bd990447f5b82f6e8579f, - limb1: 0xf0f340874c2a3acb0d9dff1f, - limb2: 0xaf5c8cb693a5cbe35c4d45e6, - limb3: 0x8583081b38c28e66cc2e94c + limb0: 0x7909a524aeb96b8445fc2ba9, + limb1: 0x7fa36fa405fc2aff90e328e4, + limb2: 0xe01fb6a79a3da842de275483, + limb3: 0xbc3928a2d1bbdbfd58d1443 } }, G2Line { r0a0: u384 { - limb0: 0xd380c682d95a8ca80b77e3e1, - limb1: 0x80975dda895f4fcb6287b95f, - limb2: 0x66bd6f32dc1425df6da4484, - limb3: 0x18f2a03b6d5cc7ce996c3752 + limb0: 0x8da7be93d265fae7f78ea33b, + limb1: 0x3cfa6d6e558e13e96c9334cf, + limb2: 0xb1c81766cbfad8e142cdb6a3, + limb3: 0x131f36155651b8afb4ebd5e8 }, r0a1: u384 { - limb0: 0x57f4cad3b4e86b98c7bcd2cf, - limb1: 0xe5cfc656dfcae5db712db96e, - limb2: 0x8be11110f99f217f1e13e8d, - limb3: 0xc695ea0a4a6736d172dd612 + limb0: 0xc76fbd197e5e22abf4dd0e8c, + limb1: 0x237273a153a717caef3efe4f, + limb2: 0x2ddcdfe400ff8dfbac82d72a, + limb3: 0x19de6f563931c8d091104ac6 }, r1a0: u384 { - limb0: 0x13da55a0a470dece890562e6, - limb1: 0x1282e527ec2c96213d480532, - limb2: 0x8226a1fa4b6bff8427972f64, - limb3: 0xab83ceccc3e011d59694d9e + limb0: 0x53d221c09aa2967ab460b527, + limb1: 0x5636dea540c5558443acc1da, + limb2: 0xbd4279f5254520786ba7b9b5, + limb3: 0x340cf1396c7e30a89d8ffba }, r1a1: u384 { - limb0: 0x9b5bd990447f5b82f6e8579f, - limb1: 0xf0f340874c2a3acb0d9dff1f, - limb2: 0xaf5c8cb693a5cbe35c4d45e6, - limb3: 0x8583081b38c28e66cc2e94c + limb0: 0x7909a524aeb96b8445fc2ba9, + limb1: 0x7fa36fa405fc2aff90e328e4, + limb2: 0xe01fb6a79a3da842de275483, + limb3: 0xbc3928a2d1bbdbfd58d1443 } }, G2Line { r0a0: u384 { - limb0: 0xb1839e9bb068f586522a933b, - limb1: 0xffb3d05e487195a4523bd419, - limb2: 0xc06b6d1cd1814071844416cd, - limb3: 0x12e25de38ed61692aea91498 + limb0: 0xfed92e64132d7808ab35d1fc, + limb1: 0xa5784a062c564da6ee71abe7, + limb2: 0x2551dc5a3d3074f4cc7882f2, + limb3: 0x129ab035c8ebffedda4c586 }, r0a1: u384 { - limb0: 0xa86e6349640aafb5516d1aa1, - limb1: 0x5e85b0f359cd6dd3f600e93, - limb2: 0x9d6f0cf11dae90f8d282360, - limb3: 0x1662d956e867f2d811ffa5cc + limb0: 0xdce4385190d2bb34ca0b8ad6, + limb1: 0xc7df3ac196a4cb1dfc5e7437, + limb2: 0x94c50e4e111832c570fa3298, + limb3: 0x38aba1f3ea34888af767da0 }, r1a0: u384 { - limb0: 0x979e15b31d624473008c2d00, - limb1: 0x43dcdd26c32b7a6d40252377, - limb2: 0x27e029df202ec0ce008468e3, - limb3: 0x8802e9e65628fef40d91baa + limb0: 0xb38b0bc04b6a06d7c5efd768, + limb1: 0x8b51653a436eaccb81c08780, + limb2: 0x442039371bedc47893d7f4d4, + limb3: 0xb21d39e91bb21eb3481ec8d }, r1a1: u384 { - limb0: 0x39505e1686e74c786314e9bf, - limb1: 0x27295cbed6897c0c65730e0d, - limb2: 0xff0ce7b4085c0b0e9e6a082, - limb3: 0x7c22e76a3014adda331a3b4 + limb0: 0x8a3462042e7f468dbfeccc6d, + limb1: 0x25765010a8f78b662b8b24ed, + limb2: 0xd4b6f584392eefe683f4f32, + limb3: 0xb613c19dda8c4f85f3d18fc } }, G2Line { r0a0: u384 { - limb0: 0xb1839e9bb068f586522a933b, - limb1: 0xffb3d05e487195a4523bd419, - limb2: 0xc06b6d1cd1814071844416cd, - limb3: 0x12e25de38ed61692aea91498 + limb0: 0xfed92e64132d7808ab35d1fc, + limb1: 0xa5784a062c564da6ee71abe7, + limb2: 0x2551dc5a3d3074f4cc7882f2, + limb3: 0x129ab035c8ebffedda4c586 }, r0a1: u384 { - limb0: 0xa86e6349640aafb5516d1aa1, - limb1: 0x5e85b0f359cd6dd3f600e93, - limb2: 0x9d6f0cf11dae90f8d282360, - limb3: 0x1662d956e867f2d811ffa5cc + limb0: 0xdce4385190d2bb34ca0b8ad6, + limb1: 0xc7df3ac196a4cb1dfc5e7437, + limb2: 0x94c50e4e111832c570fa3298, + limb3: 0x38aba1f3ea34888af767da0 }, r1a0: u384 { - limb0: 0x979e15b31d624473008c2d00, - limb1: 0x43dcdd26c32b7a6d40252377, - limb2: 0x27e029df202ec0ce008468e3, - limb3: 0x8802e9e65628fef40d91baa + limb0: 0xb38b0bc04b6a06d7c5efd768, + limb1: 0x8b51653a436eaccb81c08780, + limb2: 0x442039371bedc47893d7f4d4, + limb3: 0xb21d39e91bb21eb3481ec8d }, r1a1: u384 { - limb0: 0x39505e1686e74c786314e9bf, - limb1: 0x27295cbed6897c0c65730e0d, - limb2: 0xff0ce7b4085c0b0e9e6a082, - limb3: 0x7c22e76a3014adda331a3b4 + limb0: 0x8a3462042e7f468dbfeccc6d, + limb1: 0x25765010a8f78b662b8b24ed, + limb2: 0xd4b6f584392eefe683f4f32, + limb3: 0xb613c19dda8c4f85f3d18fc } }, G2Line { r0a0: u384 { - limb0: 0xc4fee7562a94f26846c71517, - limb1: 0xb18ab4f9802631a44de23538, - limb2: 0xdb1c1f9d37fb3c24d2182a09, - limb3: 0x17981bd3dc6a6a4c191f1d4d + limb0: 0x48ea9e6794dbc8abc50ef769, + limb1: 0x5cdf2a4b1f1c50ec3bbab62a, + limb2: 0x43108c47d023911948b36790, + limb3: 0x64e0f2f7bbafbe7254182c2 }, r0a1: u384 { - limb0: 0xfbdcd178fd4295ae1bb232d4, - limb1: 0x7cd38a35485b33b1b9d7f3c, - limb2: 0x3ce98f4003f02792f72589c2, - limb3: 0x747f77a58567d82df135d26 + limb0: 0xe94d02e2722ddb7d521febb1, + limb1: 0xd6e1c846b0f958c2566af832, + limb2: 0xd81e1ce8139e3c88eb642059, + limb3: 0x134785636dfddc539f24ec23 }, r1a0: u384 { - limb0: 0x892459bc3eb7eca8d5543d3e, - limb1: 0xc0033b80ef2f905d48eeb48d, - limb2: 0x2c20fba91ba1f71d09822286, - limb3: 0x3e88a8a665312e7eef52b2c + limb0: 0x45f8069bac4659c6d3ffb518, + limb1: 0x3892bbc70847ba7b0caf4394, + limb2: 0xf8ca9091f93a710632e5ff0c, + limb3: 0x824cf5703ca0bd307c43a5e }, r1a1: u384 { - limb0: 0x3f3363bba9d7fe1acba3b7d6, - limb1: 0x256116479ce4274f7baddf64, - limb2: 0x33e86c45a62033edb5f8bacd, - limb3: 0x82cce95d5984b8b99b97bc9 + limb0: 0x7ede71434dba8a474f34b4bd, + limb1: 0x2fc2f8c048e418f86203bbdf, + limb2: 0x203ae3ef17ecd4217d27b5ee, + limb3: 0x1cee1174128faaa5b41afac } }, G2Line { r0a0: u384 { - limb0: 0xc4fee7562a94f26846c71517, - limb1: 0xb18ab4f9802631a44de23538, - limb2: 0xdb1c1f9d37fb3c24d2182a09, - limb3: 0x17981bd3dc6a6a4c191f1d4d + limb0: 0x48ea9e6794dbc8abc50ef769, + limb1: 0x5cdf2a4b1f1c50ec3bbab62a, + limb2: 0x43108c47d023911948b36790, + limb3: 0x64e0f2f7bbafbe7254182c2 }, r0a1: u384 { - limb0: 0xfbdcd178fd4295ae1bb232d4, - limb1: 0x7cd38a35485b33b1b9d7f3c, - limb2: 0x3ce98f4003f02792f72589c2, - limb3: 0x747f77a58567d82df135d26 + limb0: 0xe94d02e2722ddb7d521febb1, + limb1: 0xd6e1c846b0f958c2566af832, + limb2: 0xd81e1ce8139e3c88eb642059, + limb3: 0x134785636dfddc539f24ec23 }, r1a0: u384 { - limb0: 0x892459bc3eb7eca8d5543d3e, - limb1: 0xc0033b80ef2f905d48eeb48d, - limb2: 0x2c20fba91ba1f71d09822286, - limb3: 0x3e88a8a665312e7eef52b2c + limb0: 0x45f8069bac4659c6d3ffb518, + limb1: 0x3892bbc70847ba7b0caf4394, + limb2: 0xf8ca9091f93a710632e5ff0c, + limb3: 0x824cf5703ca0bd307c43a5e }, r1a1: u384 { - limb0: 0x3f3363bba9d7fe1acba3b7d6, - limb1: 0x256116479ce4274f7baddf64, - limb2: 0x33e86c45a62033edb5f8bacd, - limb3: 0x82cce95d5984b8b99b97bc9 + limb0: 0x7ede71434dba8a474f34b4bd, + limb1: 0x2fc2f8c048e418f86203bbdf, + limb2: 0x203ae3ef17ecd4217d27b5ee, + limb3: 0x1cee1174128faaa5b41afac } }, G2Line { r0a0: u384 { - limb0: 0xf3e662ee59cfea28dfad2e74, - limb1: 0xdf7a73d7c7315aba12124c2c, - limb2: 0xa8da43306fb2e680cf5b756d, - limb3: 0xff3e34e2b90b1c88100342b + limb0: 0x34d0ff2199a36ffb68433265, + limb1: 0x640ed7347ad5353958b78447, + limb2: 0x52f00ed40ebc20f8142b3b4a, + limb3: 0x171dfa9b4c0beef6d9b7a8aa }, r0a1: u384 { - limb0: 0x9394bdd32ecbd67e2f3183cb, - limb1: 0xa9e13106ac10074ccc0c810f, - limb2: 0x2bae33e902f7b7a9f46f6b75, - limb3: 0x6ee7d3ca4209e3affa57b63 + limb0: 0x293af26d027cf14acbdeadf5, + limb1: 0xbf6945ba97845546655cc5b3, + limb2: 0x3fafeac6f07bdc3a0f5282e0, + limb3: 0xf934b1ebe63e6b3ff7ed953 }, r1a0: u384 { - limb0: 0xecf615f5be45b66b4039851, - limb1: 0x4d87348d411609d6609a82cd, - limb2: 0xf1474f0ed8d793c5e56ab824, - limb3: 0x3fca8097aa518eb1de4d29b + limb0: 0xb268b112fe50663ebefc462f, + limb1: 0x65ea246d3f57a53929c566c3, + limb2: 0xf6f1acec8b216a759551ef23, + limb3: 0x7ea7981226f28866a638a10 }, r1a1: u384 { - limb0: 0xb622b2155f1337c508a07f36, - limb1: 0x31d10e3f773fd8cecb90a4b3, - limb2: 0xb5fbb1ff076de733db69fbb, - limb3: 0x12b7a8e60d91bb835e5fd6a5 + limb0: 0xd8c41d9dccfe679612af6f3f, + limb1: 0x18e8b663036a6bcc598c2eec, + limb2: 0xba4fb9893f92638c0878adc0, + limb3: 0x5e434ba461270fb9c9e1767 } }, G2Line { r0a0: u384 { - limb0: 0xf3e662ee59cfea28dfad2e74, - limb1: 0xdf7a73d7c7315aba12124c2c, - limb2: 0xa8da43306fb2e680cf5b756d, - limb3: 0xff3e34e2b90b1c88100342b + limb0: 0x34d0ff2199a36ffb68433265, + limb1: 0x640ed7347ad5353958b78447, + limb2: 0x52f00ed40ebc20f8142b3b4a, + limb3: 0x171dfa9b4c0beef6d9b7a8aa }, r0a1: u384 { - limb0: 0x9394bdd32ecbd67e2f3183cb, - limb1: 0xa9e13106ac10074ccc0c810f, - limb2: 0x2bae33e902f7b7a9f46f6b75, - limb3: 0x6ee7d3ca4209e3affa57b63 + limb0: 0x293af26d027cf14acbdeadf5, + limb1: 0xbf6945ba97845546655cc5b3, + limb2: 0x3fafeac6f07bdc3a0f5282e0, + limb3: 0xf934b1ebe63e6b3ff7ed953 }, r1a0: u384 { - limb0: 0xecf615f5be45b66b4039851, - limb1: 0x4d87348d411609d6609a82cd, - limb2: 0xf1474f0ed8d793c5e56ab824, - limb3: 0x3fca8097aa518eb1de4d29b + limb0: 0xb268b112fe50663ebefc462f, + limb1: 0x65ea246d3f57a53929c566c3, + limb2: 0xf6f1acec8b216a759551ef23, + limb3: 0x7ea7981226f28866a638a10 }, r1a1: u384 { - limb0: 0xb622b2155f1337c508a07f36, - limb1: 0x31d10e3f773fd8cecb90a4b3, - limb2: 0xb5fbb1ff076de733db69fbb, - limb3: 0x12b7a8e60d91bb835e5fd6a5 + limb0: 0xd8c41d9dccfe679612af6f3f, + limb1: 0x18e8b663036a6bcc598c2eec, + limb2: 0xba4fb9893f92638c0878adc0, + limb3: 0x5e434ba461270fb9c9e1767 } }, G2Line { r0a0: u384 { - limb0: 0x241270f3c90dfeb268a10bde, - limb1: 0xe352a060fa4b7a18ee77e247, - limb2: 0xe1898dc46f3295a6e402c5ae, - limb3: 0xb771bad4243a06c8a5a82db + limb0: 0xef96197612181ab06928cec6, + limb1: 0x458de6a5370193193dd000ec, + limb2: 0x427f47055aef7963d1ecade7, + limb3: 0x1955f48009a7185c26d8d6b7 }, r0a1: u384 { - limb0: 0x50794d175d2409c6a228106a, - limb1: 0x1a57fbf78c2abc8fd412a751, - limb2: 0x1c351be328741aeb9d0fdeed, - limb3: 0xa92b690f12597934dcfb658 + limb0: 0x2a3400147ba99f14163f66c9, + limb1: 0x707fb60013ac43c3eeb16717, + limb2: 0xa1341f3f7a674dd231569ff2, + limb3: 0xd1bf9b6cea07015dd1732d3 }, r1a0: u384 { - limb0: 0x7787a563fa6e8e61c286039e, - limb1: 0xec4a039042b7841787c14633, - limb2: 0xa5763ef340c5726add3fe4ad, - limb3: 0x8e8f90812a4b16fcebf7e0f + limb0: 0x324ced360e1b6821be307c61, + limb1: 0xb6fc1c3a2e46f2cbedb61baa, + limb2: 0xccc6b66e2c94c9fbc4c6cd05, + limb3: 0x17642529940f22b24f5f8c20 }, r1a1: u384 { - limb0: 0x11bed6ec64b8eea40115d0bd, - limb1: 0xafff83aa48ff9d84933d870c, - limb2: 0x1a63cc95de85c9cf4383d0d3, - limb3: 0xb0c8541941e1f71d8dd4519 + limb0: 0x4e3269814ec6c42223fc2007, + limb1: 0x3b44204dc45ba230453eaa17, + limb2: 0x816eb035608279fef41c816b, + limb3: 0x9ce00eddf6dbd60f984662f } }, G2Line { r0a0: u384 { - limb0: 0x241270f3c90dfeb268a10bde, - limb1: 0xe352a060fa4b7a18ee77e247, - limb2: 0xe1898dc46f3295a6e402c5ae, - limb3: 0xb771bad4243a06c8a5a82db + limb0: 0xef96197612181ab06928cec6, + limb1: 0x458de6a5370193193dd000ec, + limb2: 0x427f47055aef7963d1ecade7, + limb3: 0x1955f48009a7185c26d8d6b7 }, r0a1: u384 { - limb0: 0x50794d175d2409c6a228106a, - limb1: 0x1a57fbf78c2abc8fd412a751, - limb2: 0x1c351be328741aeb9d0fdeed, - limb3: 0xa92b690f12597934dcfb658 + limb0: 0x2a3400147ba99f14163f66c9, + limb1: 0x707fb60013ac43c3eeb16717, + limb2: 0xa1341f3f7a674dd231569ff2, + limb3: 0xd1bf9b6cea07015dd1732d3 }, r1a0: u384 { - limb0: 0x7787a563fa6e8e61c286039e, - limb1: 0xec4a039042b7841787c14633, - limb2: 0xa5763ef340c5726add3fe4ad, - limb3: 0x8e8f90812a4b16fcebf7e0f + limb0: 0x324ced360e1b6821be307c61, + limb1: 0xb6fc1c3a2e46f2cbedb61baa, + limb2: 0xccc6b66e2c94c9fbc4c6cd05, + limb3: 0x17642529940f22b24f5f8c20 }, r1a1: u384 { - limb0: 0x11bed6ec64b8eea40115d0bd, - limb1: 0xafff83aa48ff9d84933d870c, - limb2: 0x1a63cc95de85c9cf4383d0d3, - limb3: 0xb0c8541941e1f71d8dd4519 + limb0: 0x4e3269814ec6c42223fc2007, + limb1: 0x3b44204dc45ba230453eaa17, + limb2: 0x816eb035608279fef41c816b, + limb3: 0x9ce00eddf6dbd60f984662f } }, G2Line { r0a0: u384 { - limb0: 0x9315e28d3f426c3b0a6c361a, - limb1: 0x1fbe67226b7b495474228009, - limb2: 0xa9ed60c318e86685fa399c34, - limb3: 0x15f5772e9f2796bfdf9a3778 + limb0: 0xb196a6791908f85ce25103, + limb1: 0x79ee02cfddf43e28120fe318, + limb2: 0x9a3655b9beb63075e5e5ec4b, + limb3: 0x4be87bc3958380dc14d9b12 }, r0a1: u384 { - limb0: 0xe76f346e83f99810119e34b3, - limb1: 0x77106854180c925754480c2, - limb2: 0xf8d63e8976f4cdaab48142e, - limb3: 0xd54319df42091ac76d07845 + limb0: 0x47ba7d8e7b41cff500b921db, + limb1: 0xc056ec39db623cf55d970a58, + limb2: 0xbcdc1f36dd1bca9c7fb4540a, + limb3: 0xd2bf2c4e6c3d08808c7339c }, r1a0: u384 { - limb0: 0xc0e8a98156f160d910b8d214, - limb1: 0x1698d8a6530329e2d226e0d6, - limb2: 0x4abbc5b469ba9c90e8771e6, - limb3: 0xdbae9e3c9c7bf6dafb7706c + limb0: 0xb220a39ce064de206d15a50, + limb1: 0xb8bba5ed9ccca0abad42b968, + limb2: 0xd8181c62d72647eee1d81c8c, + limb3: 0x703c9dfed780e69b235d80f }, r1a1: u384 { - limb0: 0x86c724a4418df8a15176be90, - limb1: 0xabc7abd8dea4ec929d323944, - limb2: 0x85e2467e4f21a577a6da646f, - limb3: 0xbe3b8955411ecb5839a1d6b + limb0: 0x7286ebcc64a71cb27dc42513, + limb1: 0xe8d38889491ed78be2254919, + limb2: 0x86d69ea6af08d2f6aa002e42, + limb3: 0x10635004a19d3147afb9b49d } }, G2Line { r0a0: u384 { - limb0: 0x9315e28d3f426c3b0a6c361a, - limb1: 0x1fbe67226b7b495474228009, - limb2: 0xa9ed60c318e86685fa399c34, - limb3: 0x15f5772e9f2796bfdf9a3778 + limb0: 0xb196a6791908f85ce25103, + limb1: 0x79ee02cfddf43e28120fe318, + limb2: 0x9a3655b9beb63075e5e5ec4b, + limb3: 0x4be87bc3958380dc14d9b12 }, r0a1: u384 { - limb0: 0xe76f346e83f99810119e34b3, - limb1: 0x77106854180c925754480c2, - limb2: 0xf8d63e8976f4cdaab48142e, - limb3: 0xd54319df42091ac76d07845 + limb0: 0x47ba7d8e7b41cff500b921db, + limb1: 0xc056ec39db623cf55d970a58, + limb2: 0xbcdc1f36dd1bca9c7fb4540a, + limb3: 0xd2bf2c4e6c3d08808c7339c }, r1a0: u384 { - limb0: 0xc0e8a98156f160d910b8d214, - limb1: 0x1698d8a6530329e2d226e0d6, - limb2: 0x4abbc5b469ba9c90e8771e6, - limb3: 0xdbae9e3c9c7bf6dafb7706c + limb0: 0xb220a39ce064de206d15a50, + limb1: 0xb8bba5ed9ccca0abad42b968, + limb2: 0xd8181c62d72647eee1d81c8c, + limb3: 0x703c9dfed780e69b235d80f }, r1a1: u384 { - limb0: 0x86c724a4418df8a15176be90, - limb1: 0xabc7abd8dea4ec929d323944, - limb2: 0x85e2467e4f21a577a6da646f, - limb3: 0xbe3b8955411ecb5839a1d6b + limb0: 0x7286ebcc64a71cb27dc42513, + limb1: 0xe8d38889491ed78be2254919, + limb2: 0x86d69ea6af08d2f6aa002e42, + limb3: 0x10635004a19d3147afb9b49d } }, G2Line { r0a0: u384 { - limb0: 0xf1bcd38e651b3fa8e31783b0, - limb1: 0xacde73576e774d182ca0fca4, - limb2: 0x12a2ae88f13fc25fa70bac31, - limb3: 0xe89d5ca4ff4d865e5de8e2f + limb0: 0xc1d73f616b5e4248769bd7ca, + limb1: 0xce884334140ae3947b4a1788, + limb2: 0xd1bd54f4c2f9ec4d889bd498, + limb3: 0x8a0c009b64ab265b93abbca }, r0a1: u384 { - limb0: 0x274bfb4d5cee3add2faa952b, - limb1: 0x1411a83a0b24b08653bd3f36, - limb2: 0x7b440339b90dfc1ffff59648, - limb3: 0x173b71461ee3c8227f1c80de + limb0: 0xabaaa6c4d3cd968da037e28e, + limb1: 0xbee067e413e69a5fce1e9c27, + limb2: 0x472888119c0d1b0564ea6fb9, + limb3: 0x4b1298ea9d4a0cb1707f74b }, r1a0: u384 { - limb0: 0x6cd4ba3bc0efe0bf1719a20e, - limb1: 0x43d75883d1d610e978f2f849, - limb2: 0xf390d7e29fb81335eaee4fc8, - limb3: 0x12e38c4542a739bcff24ab2d + limb0: 0x5a6bfb7fbf286ce171ad124b, + limb1: 0xea3e1416e2cc90bddd3ab336, + limb2: 0xa31c20ea649b928d96adf3f1, + limb3: 0x8e52d671b19b19007103cf7 }, r1a1: u384 { - limb0: 0xb2b09ad604237c832b19c9df, - limb1: 0xd46ceeb0d30c4d18fdbd9f3a, - limb2: 0xe6df2ca8fcaee02789a6e6d1, - limb3: 0x11986021a55d99050c602f6 + limb0: 0x621489d3bb07f1f1a76c317a, + limb1: 0x35fe9e2d67eae9cfb201b80d, + limb2: 0x539a78631690cc930aeb0d06, + limb3: 0x17c2910a45e92a5d189a5647 } }, G2Line { r0a0: u384 { - limb0: 0xf1bcd38e651b3fa8e31783b0, - limb1: 0xacde73576e774d182ca0fca4, - limb2: 0x12a2ae88f13fc25fa70bac31, - limb3: 0xe89d5ca4ff4d865e5de8e2f + limb0: 0xc1d73f616b5e4248769bd7ca, + limb1: 0xce884334140ae3947b4a1788, + limb2: 0xd1bd54f4c2f9ec4d889bd498, + limb3: 0x8a0c009b64ab265b93abbca }, r0a1: u384 { - limb0: 0x274bfb4d5cee3add2faa952b, - limb1: 0x1411a83a0b24b08653bd3f36, - limb2: 0x7b440339b90dfc1ffff59648, - limb3: 0x173b71461ee3c8227f1c80de + limb0: 0xabaaa6c4d3cd968da037e28e, + limb1: 0xbee067e413e69a5fce1e9c27, + limb2: 0x472888119c0d1b0564ea6fb9, + limb3: 0x4b1298ea9d4a0cb1707f74b }, r1a0: u384 { - limb0: 0x6cd4ba3bc0efe0bf1719a20e, - limb1: 0x43d75883d1d610e978f2f849, - limb2: 0xf390d7e29fb81335eaee4fc8, - limb3: 0x12e38c4542a739bcff24ab2d + limb0: 0x5a6bfb7fbf286ce171ad124b, + limb1: 0xea3e1416e2cc90bddd3ab336, + limb2: 0xa31c20ea649b928d96adf3f1, + limb3: 0x8e52d671b19b19007103cf7 }, r1a1: u384 { - limb0: 0xb2b09ad604237c832b19c9df, - limb1: 0xd46ceeb0d30c4d18fdbd9f3a, - limb2: 0xe6df2ca8fcaee02789a6e6d1, - limb3: 0x11986021a55d99050c602f6 + limb0: 0x621489d3bb07f1f1a76c317a, + limb1: 0x35fe9e2d67eae9cfb201b80d, + limb2: 0x539a78631690cc930aeb0d06, + limb3: 0x17c2910a45e92a5d189a5647 } }, G2Line { r0a0: u384 { - limb0: 0x1ecd54f5569133dde5c48a2d, - limb1: 0x448368089b680be62c8d7f40, - limb2: 0x16cbca78026309346586dcf5, - limb3: 0xff4143277cb107aedcabd52 + limb0: 0xfaceea5f122c096784323f83, + limb1: 0x1deec935cb246963ddd96d1e, + limb2: 0x7f29c1f62f11e21fd58e51ce, + limb3: 0x1367aaabe913dd0a66ed5767 }, r0a1: u384 { - limb0: 0xe1baf651412d2c0ca264046a, - limb1: 0x74831eac90a33e962968751c, - limb2: 0x7ad52642e9f379db91b9e9a6, - limb3: 0xa08fc105db4fae524e9c2b4 + limb0: 0x14c1e34ded96d0070324c84, + limb1: 0xb8be1d3d384648b4141db4a2, + limb2: 0x8b68de67c802b180d0c3d451, + limb3: 0x1097b5d801eacd1a66f92b10 }, r1a0: u384 { - limb0: 0x310f40264d4c069695af4ced, - limb1: 0x88b9450a7f505b7731e81388, - limb2: 0x11f69714a1ed25a7531cc1d4, - limb3: 0x111c436889257edb88fd2a80 + limb0: 0x27bdb95d09954e39a6983141, + limb1: 0xbb3bdddc9bed42b3e5dbb3f8, + limb2: 0x9aa4e1fa99a7c28715227dc, + limb3: 0xac433ff4473f03c6e72cf13 }, r1a1: u384 { - limb0: 0x9dfd10552634d22795d03c43, - limb1: 0x26b43b33565d9a6f2629dd90, - limb2: 0xec6494f34c2369a84dff9e1, - limb3: 0xf60d5d1745c38fb34bd4e1c + limb0: 0x6b084f8598c57e772da2634e, + limb1: 0xe0903bf0de2f4a06236b5377, + limb2: 0x84ee76cb98d95314a474af01, + limb3: 0x1784aaabcc3b5125a141e45d } }, G2Line { r0a0: u384 { - limb0: 0x1ecd54f5569133dde5c48a2d, - limb1: 0x448368089b680be62c8d7f40, - limb2: 0x16cbca78026309346586dcf5, - limb3: 0xff4143277cb107aedcabd52 + limb0: 0xfaceea5f122c096784323f83, + limb1: 0x1deec935cb246963ddd96d1e, + limb2: 0x7f29c1f62f11e21fd58e51ce, + limb3: 0x1367aaabe913dd0a66ed5767 }, r0a1: u384 { - limb0: 0xe1baf651412d2c0ca264046a, - limb1: 0x74831eac90a33e962968751c, - limb2: 0x7ad52642e9f379db91b9e9a6, - limb3: 0xa08fc105db4fae524e9c2b4 + limb0: 0x14c1e34ded96d0070324c84, + limb1: 0xb8be1d3d384648b4141db4a2, + limb2: 0x8b68de67c802b180d0c3d451, + limb3: 0x1097b5d801eacd1a66f92b10 }, r1a0: u384 { - limb0: 0x310f40264d4c069695af4ced, - limb1: 0x88b9450a7f505b7731e81388, - limb2: 0x11f69714a1ed25a7531cc1d4, - limb3: 0x111c436889257edb88fd2a80 + limb0: 0x27bdb95d09954e39a6983141, + limb1: 0xbb3bdddc9bed42b3e5dbb3f8, + limb2: 0x9aa4e1fa99a7c28715227dc, + limb3: 0xac433ff4473f03c6e72cf13 }, r1a1: u384 { - limb0: 0x9dfd10552634d22795d03c43, - limb1: 0x26b43b33565d9a6f2629dd90, - limb2: 0xec6494f34c2369a84dff9e1, - limb3: 0xf60d5d1745c38fb34bd4e1c + limb0: 0x6b084f8598c57e772da2634e, + limb1: 0xe0903bf0de2f4a06236b5377, + limb2: 0x84ee76cb98d95314a474af01, + limb3: 0x1784aaabcc3b5125a141e45d } }, G2Line { r0a0: u384 { - limb0: 0xc7a11ed10e86d2f1c2005799, - limb1: 0xeeaf63eb4e257ffa798eafdd, - limb2: 0xdfadb8e3975a17bd89e750c3, - limb3: 0x1282998f4893e3d791fa39c3 + limb0: 0x6eff9ba7f60c670242d1fa57, + limb1: 0x8626d7d1944294b3c2a48a74, + limb2: 0xacaef8a92308b7a109d1aed5, + limb3: 0x93d7b0e6a9d68ea32a48f43 }, r0a1: u384 { - limb0: 0x870e0ee1f7a8e2cfa903188f, - limb1: 0x97656500f3ebc8e054fcb317, - limb2: 0xc6d31c70c1f649e4a7108022, - limb3: 0x17e74ec886b364706c326c44 + limb0: 0x757fca706b4ed5a5c9281465, + limb1: 0x69d2db3c5f3a1266550f4f19, + limb2: 0x63e6c584e0d8dc9429256c5c, + limb3: 0x17d7b7796eae9d82ccffd464 }, r1a0: u384 { - limb0: 0x337127be24feba44b8ca5be2, - limb1: 0xaabec89545b78556c28fb8ad, - limb2: 0x28b8088931e31cb8a935f828, - limb3: 0x366beedbfee7e88b6e32234 + limb0: 0x43a686d2ca2b993b4bebb6ac, + limb1: 0xf1122be2f9df7216cc50c8df, + limb2: 0x8bb9d13919909f2b7d0947f9, + limb3: 0x177a9240a6cff7f13acb31ba }, r1a1: u384 { - limb0: 0x4c939c125fcb6eb1a6818044, - limb1: 0x1c53c4a3d2a7423ea559d595, - limb2: 0xbf944877b83a9e734fda6200, - limb3: 0xcc5d23a48d3aafd0c2c7717 + limb0: 0x2101fbd360aa7d0d0ee19f99, + limb1: 0xec5aaaf3a2040aca8dd59ad9, + limb2: 0xa70d1db451439a4642fc46f3, + limb3: 0x13bcd6d4ad34b858ffb045f6 } }, G2Line { r0a0: u384 { - limb0: 0xc7a11ed10e86d2f1c2005799, - limb1: 0xeeaf63eb4e257ffa798eafdd, - limb2: 0xdfadb8e3975a17bd89e750c3, - limb3: 0x1282998f4893e3d791fa39c3 + limb0: 0x6eff9ba7f60c670242d1fa57, + limb1: 0x8626d7d1944294b3c2a48a74, + limb2: 0xacaef8a92308b7a109d1aed5, + limb3: 0x93d7b0e6a9d68ea32a48f43 }, r0a1: u384 { - limb0: 0x870e0ee1f7a8e2cfa903188f, - limb1: 0x97656500f3ebc8e054fcb317, - limb2: 0xc6d31c70c1f649e4a7108022, - limb3: 0x17e74ec886b364706c326c44 + limb0: 0x757fca706b4ed5a5c9281465, + limb1: 0x69d2db3c5f3a1266550f4f19, + limb2: 0x63e6c584e0d8dc9429256c5c, + limb3: 0x17d7b7796eae9d82ccffd464 }, r1a0: u384 { - limb0: 0x337127be24feba44b8ca5be2, - limb1: 0xaabec89545b78556c28fb8ad, - limb2: 0x28b8088931e31cb8a935f828, - limb3: 0x366beedbfee7e88b6e32234 + limb0: 0x43a686d2ca2b993b4bebb6ac, + limb1: 0xf1122be2f9df7216cc50c8df, + limb2: 0x8bb9d13919909f2b7d0947f9, + limb3: 0x177a9240a6cff7f13acb31ba }, r1a1: u384 { - limb0: 0x4c939c125fcb6eb1a6818044, - limb1: 0x1c53c4a3d2a7423ea559d595, - limb2: 0xbf944877b83a9e734fda6200, - limb3: 0xcc5d23a48d3aafd0c2c7717 + limb0: 0x2101fbd360aa7d0d0ee19f99, + limb1: 0xec5aaaf3a2040aca8dd59ad9, + limb2: 0xa70d1db451439a4642fc46f3, + limb3: 0x13bcd6d4ad34b858ffb045f6 } }, G2Line { r0a0: u384 { - limb0: 0x3c7c2654d7d9f158da8679b3, - limb1: 0xed232f5d6ace0fe62d869d37, - limb2: 0x2b6dab014df2531f31b7459e, - limb3: 0xc1d36fe3dcf73ab8ece9fc1 + limb0: 0x3b2cb59fddb1960ab13e9e47, + limb1: 0xa8331c5308735a1e3e49a5c4, + limb2: 0x798c692a5373e07345f9496d, + limb3: 0x17b75c299b830b7db1e55e00 }, r0a1: u384 { - limb0: 0xd534622557734ad9c787c831, - limb1: 0x5b709c885ae6e748669b5ecc, - limb2: 0xe4e54b1a270cf77348ae96d8, - limb3: 0x10b9594d101a2ce0a0f1474e + limb0: 0xc5d2dc6039e61debb0100d54, + limb1: 0x41e6a2cfdb897c652a232e4d, + limb2: 0xc91d7b4bb5ee0dc2989beca, + limb3: 0x68e3168773aa1cb0ed80ec9 }, r1a0: u384 { - limb0: 0xe32b79ee8dd568abf1e1190e, - limb1: 0xcbbed9604f9b53bb00c1db01, - limb2: 0x2f3952f57f45ff5c7525a1ee, - limb3: 0x10235cae00dbd504c249fb3e + limb0: 0x50f2e6f8d9cc279a8e295cdf, + limb1: 0xd348136bc5decdf30fadc609, + limb2: 0xc089b8f1ebf729e48385f0c4, + limb3: 0xcd6d031b4ff56300cc3646f }, r1a1: u384 { - limb0: 0x2a73c328553742944163b2ed, - limb1: 0xad1f86a7096decf5e2731923, - limb2: 0x3af9e6065230954bf6ad86f5, - limb3: 0x110920599409ce1af4be562e + limb0: 0xe0e11f880e696bd2ea185c76, + limb1: 0xd6e53f643160fe740c366d36, + limb2: 0xc2fca2f2e46f1c9c3be8b840, + limb3: 0xdb6cd7345898cb48b4572ab } }, G2Line { r0a0: u384 { - limb0: 0x3c7c2654d7d9f158da8679b3, - limb1: 0xed232f5d6ace0fe62d869d37, - limb2: 0x2b6dab014df2531f31b7459e, - limb3: 0xc1d36fe3dcf73ab8ece9fc1 + limb0: 0x3b2cb59fddb1960ab13e9e47, + limb1: 0xa8331c5308735a1e3e49a5c4, + limb2: 0x798c692a5373e07345f9496d, + limb3: 0x17b75c299b830b7db1e55e00 }, r0a1: u384 { - limb0: 0xd534622557734ad9c787c831, - limb1: 0x5b709c885ae6e748669b5ecc, - limb2: 0xe4e54b1a270cf77348ae96d8, - limb3: 0x10b9594d101a2ce0a0f1474e + limb0: 0xc5d2dc6039e61debb0100d54, + limb1: 0x41e6a2cfdb897c652a232e4d, + limb2: 0xc91d7b4bb5ee0dc2989beca, + limb3: 0x68e3168773aa1cb0ed80ec9 }, r1a0: u384 { - limb0: 0xe32b79ee8dd568abf1e1190e, - limb1: 0xcbbed9604f9b53bb00c1db01, - limb2: 0x2f3952f57f45ff5c7525a1ee, - limb3: 0x10235cae00dbd504c249fb3e + limb0: 0x50f2e6f8d9cc279a8e295cdf, + limb1: 0xd348136bc5decdf30fadc609, + limb2: 0xc089b8f1ebf729e48385f0c4, + limb3: 0xcd6d031b4ff56300cc3646f }, r1a1: u384 { - limb0: 0x2a73c328553742944163b2ed, - limb1: 0xad1f86a7096decf5e2731923, - limb2: 0x3af9e6065230954bf6ad86f5, - limb3: 0x110920599409ce1af4be562e + limb0: 0xe0e11f880e696bd2ea185c76, + limb1: 0xd6e53f643160fe740c366d36, + limb2: 0xc2fca2f2e46f1c9c3be8b840, + limb3: 0xdb6cd7345898cb48b4572ab } }, G2Line { r0a0: u384 { - limb0: 0xeb99cf3207d73867979a7beb, - limb1: 0x25818fcea1b965bb30b2997b, - limb2: 0x72ca5aed1712188f72d58cd3, - limb3: 0x1048e51c5bfdd630afea650b + limb0: 0x28b275816cb8ba43b50ec028, + limb1: 0x5ce530495945847da04b55f6, + limb2: 0x7acd93a2ccbd5e5bb9712a5c, + limb3: 0x16ad6d9166af8ca8c52cb8c5 }, r0a1: u384 { - limb0: 0x2a5daf31335f8c33b7061549, - limb1: 0x37e650664494aae680db5dae, - limb2: 0xc575d22a40c2ab8423eb3e8e, - limb3: 0xe0f07077b484901bc81aefd + limb0: 0xe05ee7b14b2fce35ec0c53be, + limb1: 0xf03092a5c26a199c8d502199, + limb2: 0xfea3beed2144e1bf2dd05135, + limb3: 0x116c1b86c61d213ccb9090a }, r1a0: u384 { - limb0: 0xe180f7f4d7cb16a815c38939, - limb1: 0x4b2eea27f2ae56e014602c50, - limb2: 0x90503c7e2efb48f3356307d1, - limb3: 0x34e856b98f0f5304a3f953 + limb0: 0xef6fca3afb318378c59ad323, + limb1: 0x972f11ea5910f9ca77e13abe, + limb2: 0xdb85b36c5d1f7fd8b2a3b92, + limb3: 0xd55bb338be5e6136853adb4 }, r1a1: u384 { - limb0: 0x302c71d7ea0a0dd18afc3817, - limb1: 0x820b1323f8e38b6e627237dc, - limb2: 0x1edb8477ec03221172202cc7, - limb3: 0x4e1b07707191c1aef83605 + limb0: 0x766e4946311f5bf63976ff84, + limb1: 0x9c3c71aaa6c5350b67b847aa, + limb2: 0x67ec9354b2f012c09d252371, + limb3: 0x11b7f0c3dc91200cd85b0005 } }, G2Line { r0a0: u384 { - limb0: 0xeb99cf3207d73867979a7beb, - limb1: 0x25818fcea1b965bb30b2997b, - limb2: 0x72ca5aed1712188f72d58cd3, - limb3: 0x1048e51c5bfdd630afea650b + limb0: 0x28b275816cb8ba43b50ec028, + limb1: 0x5ce530495945847da04b55f6, + limb2: 0x7acd93a2ccbd5e5bb9712a5c, + limb3: 0x16ad6d9166af8ca8c52cb8c5 }, r0a1: u384 { - limb0: 0x2a5daf31335f8c33b7061549, - limb1: 0x37e650664494aae680db5dae, - limb2: 0xc575d22a40c2ab8423eb3e8e, - limb3: 0xe0f07077b484901bc81aefd + limb0: 0xe05ee7b14b2fce35ec0c53be, + limb1: 0xf03092a5c26a199c8d502199, + limb2: 0xfea3beed2144e1bf2dd05135, + limb3: 0x116c1b86c61d213ccb9090a }, r1a0: u384 { - limb0: 0xe180f7f4d7cb16a815c38939, - limb1: 0x4b2eea27f2ae56e014602c50, - limb2: 0x90503c7e2efb48f3356307d1, - limb3: 0x34e856b98f0f5304a3f953 + limb0: 0xef6fca3afb318378c59ad323, + limb1: 0x972f11ea5910f9ca77e13abe, + limb2: 0xdb85b36c5d1f7fd8b2a3b92, + limb3: 0xd55bb338be5e6136853adb4 }, r1a1: u384 { - limb0: 0x302c71d7ea0a0dd18afc3817, - limb1: 0x820b1323f8e38b6e627237dc, - limb2: 0x1edb8477ec03221172202cc7, - limb3: 0x4e1b07707191c1aef83605 + limb0: 0x766e4946311f5bf63976ff84, + limb1: 0x9c3c71aaa6c5350b67b847aa, + limb2: 0x67ec9354b2f012c09d252371, + limb3: 0x11b7f0c3dc91200cd85b0005 } }, G2Line { r0a0: u384 { - limb0: 0xdc9d37916baf5c8611c2eb9b, - limb1: 0x7709c0ab4f02d32ea14c061a, - limb2: 0xeb6567a2b8750a10ef19f8c3, - limb3: 0x78e1ab7de6ef36639aef6be + limb0: 0x16fc514c294eac843c08592a, + limb1: 0xda9527dae73a0e154ff3db33, + limb2: 0x5aef459310199025e097f4a5, + limb3: 0xeb4765b58e95f01d0240e70 }, r0a1: u384 { - limb0: 0xf025395d9899bb6ba22b3aa8, - limb1: 0xb001ee5f98e314956b2b7b6d, - limb2: 0xd3552f082a5c0fc7d9df08dc, - limb3: 0x10dbf5ce25c8ed46ba0e90bf + limb0: 0xea643701247010db3eff71c2, + limb1: 0x5d53397580685dd8d04e2290, + limb2: 0x9a253e39b83e3176960ada21, + limb3: 0xa8634b16c2c46c2c7623199 }, r1a0: u384 { - limb0: 0x9462a6e283b126c73ec7554e, - limb1: 0x965693e016c78cae1b4e4cbb, - limb2: 0xc6273c1946c77cd548711343, - limb3: 0x10825a7c72067ae1cde9f767 + limb0: 0xe4e3f3b472df1cc7eb866172, + limb1: 0xd8a227c37f8705f2a370971a, + limb2: 0x6b9f94021e2cfa7fab5512aa, + limb3: 0xc411dba802de0b2246ec749 }, r1a1: u384 { - limb0: 0xaae8143ae2c2e78ef5d587b2, - limb1: 0x51ec9c8d181ca4b4fc3059d4, - limb2: 0x34c72f3049c0d87557e6f519, - limb3: 0x4cc57f948dce82d6fdbf6a9 + limb0: 0x21b408b759ae5a17672ea255, + limb1: 0x9ca99cc099b6bfa8e7946dda, + limb2: 0xb40bee9f38c669b93a45df80, + limb3: 0xb3eeb149beb16cf033387ee } }, G2Line { r0a0: u384 { - limb0: 0xdc9d37916baf5c8611c2eb9b, - limb1: 0x7709c0ab4f02d32ea14c061a, - limb2: 0xeb6567a2b8750a10ef19f8c3, - limb3: 0x78e1ab7de6ef36639aef6be + limb0: 0x16fc514c294eac843c08592a, + limb1: 0xda9527dae73a0e154ff3db33, + limb2: 0x5aef459310199025e097f4a5, + limb3: 0xeb4765b58e95f01d0240e70 }, r0a1: u384 { - limb0: 0xf025395d9899bb6ba22b3aa8, - limb1: 0xb001ee5f98e314956b2b7b6d, - limb2: 0xd3552f082a5c0fc7d9df08dc, - limb3: 0x10dbf5ce25c8ed46ba0e90bf + limb0: 0xea643701247010db3eff71c2, + limb1: 0x5d53397580685dd8d04e2290, + limb2: 0x9a253e39b83e3176960ada21, + limb3: 0xa8634b16c2c46c2c7623199 }, r1a0: u384 { - limb0: 0x9462a6e283b126c73ec7554e, - limb1: 0x965693e016c78cae1b4e4cbb, - limb2: 0xc6273c1946c77cd548711343, - limb3: 0x10825a7c72067ae1cde9f767 + limb0: 0xe4e3f3b472df1cc7eb866172, + limb1: 0xd8a227c37f8705f2a370971a, + limb2: 0x6b9f94021e2cfa7fab5512aa, + limb3: 0xc411dba802de0b2246ec749 }, r1a1: u384 { - limb0: 0xaae8143ae2c2e78ef5d587b2, - limb1: 0x51ec9c8d181ca4b4fc3059d4, - limb2: 0x34c72f3049c0d87557e6f519, - limb3: 0x4cc57f948dce82d6fdbf6a9 + limb0: 0x21b408b759ae5a17672ea255, + limb1: 0x9ca99cc099b6bfa8e7946dda, + limb2: 0xb40bee9f38c669b93a45df80, + limb3: 0xb3eeb149beb16cf033387ee } }, ] @@ -20656,1599 +20646,1604 @@ mod pairing_tests { let hint = MPCheckHintBLS12_381 { lambda_root_inverse: E12D { w0: u384 { - limb0: 0x1417a034f87a98dced5fd9f6, - limb1: 0x87ae30395caa322fa8e69416, - limb2: 0x49a11063bb65bbc37fbb915b, - limb3: 0xf8357ac08e4b0eba98153f3 + limb0: 0x15ea218ae2dd0b70ae80962b, + limb1: 0x30a0e961075bec8169d117eb, + limb2: 0xc52b486fb91cc5660aa2d4b0, + limb3: 0x70129590f4fcaa739ca958c }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x7eab08f855cdb53f6104b7a5, - limb1: 0xf658f1b81b171e4429b42d5b, - limb2: 0xc1e5275eada7baceb3d54fe, - limb3: 0xf6bf3a00d9987fabb80e6b3 + limb0: 0x3eb1be4ffcc7538dd54c4992, + limb1: 0xd3d23e09a961da903cda0ae7, + limb2: 0x864d8203097173c828cdf3b4, + limb3: 0xf38444063b4c14cc94497f4 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x1bedf8532bfddc6f44581c18, - limb1: 0xf80fb526e31bc8ce42cf06d9, - limb2: 0xec9b2d9fd896f3df9cba14a5, - limb3: 0x467c09315c99f2c1476b56a + limb0: 0x659de328dae2cb700f8f939d, + limb1: 0x1e9d1123e7b92d01c531e34c, + limb2: 0x70a2dc1960e442407fd3d51d, + limb3: 0xb2382307eb1a459e5a484b3 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xabd593e898c86c290dd2ae65, - limb1: 0x889f0875a6466cb7959165de, - limb2: 0xdfc1c5155e864785f9683d00, - limb3: 0x182fecbe3acd373f7b42179c + limb0: 0x3aadabb773e1d4d3ad9ea425, + limb1: 0x5b10016bf5db66bc8ef3152a, + limb2: 0x9bee66ddbb6f357729ab5448, + limb3: 0x1fe7f0e5d087abe2a8b5caf }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x4c01339b39a49becdb5fc04a, - limb1: 0xb28def5657f3680959f01373, - limb2: 0xfc5d7393174a658421daff9f, - limb3: 0xe4c3ab819baf108a7717b83 + limb0: 0xccf280abef694ffee7ad41b3, + limb1: 0xbc3de178e7898c5d02481878, + limb2: 0x8d81a68dfdd46dfe1970d992, + limb3: 0x4c5d11aa6376f94a9d45b4e }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xd107151cba77c5a6cb69fe92, - limb1: 0xf81c687ae8af73ad1be96330, - limb2: 0x7b56d58ea83edde0c4cdd194, - limb3: 0x913783ffbdba2baf0a40dde + limb0: 0x30b4945e77090502ddb40e83, + limb1: 0xb20792de2ad2be74fc4c0dd, + limb2: 0x359faa986af4d532e2d05d2a, + limb3: 0x4d4b1edc006f38fd89ec7f4 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, w: MillerLoopResultScalingFactor { w0: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w4: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w6: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w8: u384 { - limb0: 0x1f4f4e93ad06b01c3ecdd8ea, - limb1: 0xf2e4fdd2fde0ae4d7d1d5b4b, - limb2: 0x772652548f3f3e64824c32ee, - limb3: 0x2a177e32800198ad0bc3108 + w4: u384 { + limb0: 0xd66db49ac6e4ff2f249c8a09, + limb1: 0x64d41909401fe745ab96f557, + limb2: 0xeed6d08deadc64b30a9fc856, + limb3: 0x15744e39455f8f825efa7e5 }, - w10: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } + w6: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w8: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w10: u384 { + limb0: 0xdae64b64f31a00d0db6320a2, + limb1: 0x25cb997b6910ede73150aa6, + limb2: 0x5474dc49799ae6d1e8e54a69, + limb3: 0x18a9cd06a529eda2252bffd0 + } }, Ris: array![ E12D { w0: u384 { - limb0: 0x3c201eb7dd9b51a66b18ab97, - limb1: 0x943ae8258ad1971093ee2709, - limb2: 0x183b3e17ae733772d00f3872, - limb3: 0x12c8d33586acb8876903fefd + limb0: 0xc35501bff375107cfcf00615, + limb1: 0xbce93fa2449d606a71b1f916, + limb2: 0xedfe402885ef136b3cc370e, + limb3: 0xeac7a808d282045675e84e5 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xcca51c57832167027c3dd3ab, - limb1: 0xefae2ee9afedcaf0c1d0e893, - limb2: 0x8f97206f65888d3a5f268d92, - limb3: 0x9677a3237bc75ccb1e4a9a2 + limb0: 0x789aceb1433fec25f8501309, + limb1: 0x6c9f7bffec4d8bc3664d7855, + limb2: 0xbcd0a3e1566b24f4463ba62c, + limb3: 0x187b7b60a6df5be7dd11bb4d }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xa722f7b699d859b9b3352a20, - limb1: 0x71469854322b2dbcc5897c5e, - limb2: 0x9fa9a4387d421f1c57ffaf6c, - limb3: 0x10dc408e9f1cab5994b70769 + limb0: 0x13a3d8dc8df193bd737e9b7c, + limb1: 0xad1eabbafb5e1d6ca2d29542, + limb2: 0x1a2f877e4c0b995194e5c8e6, + limb3: 0xc3056eba19226d4d41c252d }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xe170ab8cd3cb906e562c1c8, - limb1: 0x3b67530cc02ce2e9e9f80d4d, - limb2: 0x593f836fedfdde01146d9005, - limb3: 0x12e5f884ab2699b2c50e786e + limb0: 0x57054a66e7c0a087861847cc, + limb1: 0x7760a060f9c6b8c95e12943b, + limb2: 0x9bac76d38deac70c962ac0cf, + limb3: 0x9b5cd222615f98519f36a35 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xd5771258739faf0c96259a01, - limb1: 0x6cb77244b18daacfce54307c, - limb2: 0x40a4f9e5ee3b4036a33f87d0, - limb3: 0x18e881f50ffe8f5be625abb7 + limb0: 0x19a1cf48f337de5521a278c, + limb1: 0x9a8542627e4424e0ad149e74, + limb2: 0x85926ba6b10346c407a0ce2c, + limb3: 0x13819f6961afab89f849ae0d }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x4497578b39a6c808e3cbf90e, - limb1: 0x1026aacf8e2165febbfcf514, - limb2: 0x778537351593732e64ac4e90, - limb3: 0xbffc813505f46d010320ba0 + limb0: 0xf052f523631e205b32078bf3, + limb1: 0xd3adf7700a28f55ce7a031cd, + limb2: 0x25d0d5bc5353e82d2cf65e30, + limb3: 0x18977d8b585cd22684782adf }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1c35e73a16fd7c2bbc59d6d8, - limb1: 0x83a71610feff74913d5c511c, - limb2: 0x519e6c1f9eef82f1ac41c3d6, - limb3: 0x16b600d536d5e55b8a2f5 + limb0: 0xba72004f3ac6ae3a0be2b3c6, + limb1: 0x10df0383db6d864f8f411dc7, + limb2: 0x7e5ca0b6127e31dc2b857391, + limb3: 0x1568dff23bf282e40e449672 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x4add7af4b84f6c405e1452f0, - limb1: 0x44f5454df2f5cbd8aaafd572, - limb2: 0x3a8df775ddf8cf5da11c405e, - limb3: 0x1e0a6b6e4ba2764f0f04cfe + limb0: 0xf412709c7fb88e97d22c7e37, + limb1: 0x3d3bd706553b505d38f60b2a, + limb2: 0x12b2d435ce9a138a73afcc4e, + limb3: 0x6c9108ea0558b4ee23de717 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x72dfd6f641e2f182d3585ec2, - limb1: 0x2a8e60f4125f767183461a6e, - limb2: 0x49e10663196d884a4bda7de4, - limb3: 0x64e9d677826408ce99806ff + limb0: 0xd8aadfae7ba18f54fa6472b2, + limb1: 0x8670dc4178de04dbd72810e9, + limb2: 0xfde5533953e6bae1be18f9c6, + limb3: 0x1a006922e335f056710b8d1a }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xeb908b13134169f1b5353e76, - limb1: 0x7691f91530830a737dc084, - limb2: 0x6385c702dd1cc37ed0c9ea4e, - limb3: 0xa40e3f81bf99d89feb73224 + limb0: 0x841b4473e449c5c4b3c9eaf2, + limb1: 0x9c1574295b024a6bf2fbfb17, + limb2: 0x7b31c4d939d33cb654c3e96e, + limb3: 0x18e8b36e94eb85df9a01fada }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xc6da4a91cc075b6b2ab11ca4, - limb1: 0x44c41145bde79ef06426a9e2, - limb2: 0x8b3c522f7915d280fb271c73, - limb3: 0x12fe4b400b51519bcd24a4bd + limb0: 0xc967edc548ce3e8a2dd2d490, + limb1: 0x3f3522daa70fa2b793fc3e60, + limb2: 0xf3f27f36daf2ae137457f91d, + limb3: 0xc99c2e451b3227b9a8bdf5d }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x66f937dfbbdcaf7af6b049e0, - limb1: 0x6cce96086947fd24afd0627a, - limb2: 0x23ab528fa10680321a7b4b06, - limb3: 0x297ae625628981457edf497 + limb0: 0x9703413845e725a0ed6e5b8c, + limb1: 0xc25fa619524a28aca1b9df3, + limb2: 0x7027f03665f3232c39903c9f, + limb3: 0x11ba54ac30e8a500257b05f5 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x30e83ecaaef7486e0cc68dc7, - limb1: 0xbe80639dbfc1cdbf56d8aa63, - limb2: 0x9ed6ab115972a86d8ee25249, - limb3: 0x10d6e2732afacf506a069b9b + limb0: 0xcc54415245758c17c0a14ba0, + limb1: 0x24afa55d81440aae4cd1ed90, + limb2: 0x4a718bc02f1bb907f8b8c685, + limb3: 0x12ba42049394e7ef9c343d3a }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x2c1708ded0c949fd02ed1e22, - limb1: 0x792b73888cdfde9265461fbd, - limb2: 0x4ccdb75de9a454f945c90e08, - limb3: 0xdb0ed37cd0a4ed0f2d0e66d + limb0: 0x25cd47d8ab5acfb3a6f6d88c, + limb1: 0x20888e804f184dae20d62b77, + limb2: 0xebdf6711e5b04f02d67ec3f1, + limb3: 0x4a7a738d76f6042ef1eaeca }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x805341cc7e9b3625eb80388, - limb1: 0x9a4cb2abb1c2e8822cb7a25a, - limb2: 0x76b011e215f8f6977f6cf90b, - limb3: 0x18f506a9fdbcc4e3a888abce + limb0: 0x9ede392dad858b347753b0c0, + limb1: 0xfd5f1f02d5cc404f396c870b, + limb2: 0x3f151d1ea51ed2161c8bf68e, + limb3: 0x16fa4ebe34be08acfda768cd }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xcb51686e88160f576a0c4207, - limb1: 0x708065a62bdc9bf9f23f4318, - limb2: 0xa6554de8423a25fed6137895, - limb3: 0xed68394bd621d8848904bf1 + limb0: 0x49aafc24b62ae95a9cc33b6c, + limb1: 0x7f722be15406933b10f7b007, + limb2: 0xdbf023af51bad36e1f25a1d1, + limb3: 0x903d236a69c9cfb74cd9b5b }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x8f1bbcb6064d0243ecff8215, - limb1: 0x5d2e4016f3130fcb272d94a6, - limb2: 0x6374767390bbd84b3789ebe0, - limb3: 0x61037b24dd505f310955a6d + limb0: 0xb06a264e630769be162515bc, + limb1: 0xf284a9f20a2d0cc1ca1fe836, + limb2: 0xe05b135524742bb9a1b5641f, + limb3: 0x9fb0cba0ae6e8413c10f0ee }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc62d532cec845a62df9d089d, - limb1: 0x342ec95002065d239ca5ccc5, - limb2: 0x587c34415b81379fb77dc48, - limb3: 0x8ca309b13ad41b0ddace00 + limb0: 0xfb8683d121b2a3a6df78737d, + limb1: 0x7f0c313a8dd5d2d85ac303f0, + limb2: 0xc4026e0b831e8d097b10ee1c, + limb3: 0xdecbc57c010d5c73671ddd5 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xd52245abb6a58b7364d859d2, - limb1: 0x403b9f6eda8fe3700d3f0cf5, - limb2: 0xce35be4a170f5d86cac794ed, - limb3: 0x18fc1345b901df50e4423172 + limb0: 0xd5726b1cd2a087c6bf7c08a5, + limb1: 0xb0563110e4ddb8abbf0ccaa9, + limb2: 0x6d6c62786d58f68a51911e5d, + limb3: 0x19df2ce4f9820ef8b050a0b0 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x80ca3a189d87f3bee1f5f5c3, - limb1: 0xe1c6ccced2b179039d9ac538, - limb2: 0x2401497aa6bc21098861580f, - limb3: 0x5bc23ccfef03ea1335faa18 + limb0: 0x3d1aa9040c8392234fb55ac8, + limb1: 0x9f98774c764c7c5cc1e23066, + limb2: 0xbb71c8591ae14a1dade1b8da, + limb3: 0x50cdeb39a04b4d85a461903 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x90d95c3b3a648b07760b8fbe, - limb1: 0x141c005aefc50ab01807eff8, - limb2: 0xa802df01d61090c745cf9f06, - limb3: 0x172b52485b70c07b9323d88f + limb0: 0x8335cb43d2645235f57e0161, + limb1: 0x2948962a356e506430bfc1fd, + limb2: 0xe61791c88f55208be2cb3aa8, + limb3: 0xa34fe2ebb25c83f6b44498c }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x909f49b239c56ce95cf4f81a, - limb1: 0xa2a503c8ec062a760d1560a, - limb2: 0x386a2cc3c8f7cf3cdcc0cba2, - limb3: 0x8f3e850e3ad3d1637e100cb + limb0: 0xc80c5ba3f710d9422a097ca, + limb1: 0xc78fab03aae88b574838cce2, + limb2: 0x213ce9f58b9eda1025fed092, + limb3: 0xb4ca3be13c455698ab299c9 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x21d4664cc1164d5986ec350e, - limb1: 0x6a9bc3e1dad2f56ea1cc0a43, - limb2: 0xe0c08b2313a14aa31f3e8f64, - limb3: 0x1ee8d10d1c2a1c935a5f360 + limb0: 0x5573a029cf3f354ea2344a58, + limb1: 0x84e31e3cf97c930ab88b2c6c, + limb2: 0x942d0b62ff75b584cbe32161, + limb3: 0x19469b394780d965cc63ee12 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x335fa0f8735cf50868d36483, - limb1: 0x61443a7dc352b4b317623973, - limb2: 0xd58206a2262e50d52b6f1878, - limb3: 0x8974991092938c8dfef26e4 + limb0: 0x5fcbe217029ecc0feb353506, + limb1: 0xf960d5c181e705a31f75e330, + limb2: 0x203ac3b4d78b01b2f0b7b965, + limb3: 0x142eb0dff3708fb77ebc9485 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe62a20389ed66c9b99fd4d48, - limb1: 0x7c6035e692a1c972ac5f8c14, - limb2: 0x35c3d83368b038539667b6cf, - limb3: 0xf3265b9ac552def5604596b + limb0: 0x1c8eb450e7708b960ea1abdd, + limb1: 0x9f4219f5e8b73cbc7fb42f6a, + limb2: 0x8e2e43a4519bbde08f529acc, + limb3: 0xffe14c820752a568994959f }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe2f68c37c58ecdee2547b400, - limb1: 0x7960f7744550ac99794a4f09, - limb2: 0xb53704617104c693d344b69a, - limb3: 0x8276714f553aefd461af40a + limb0: 0xc8160fd1c84bd73c632b1624, + limb1: 0x605fb17440ae7551a447d366, + limb2: 0x9fbbc78b25313fddf680355a, + limb3: 0x11a2e76a3ad353b9d5a3322 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x7226e7ae7e44ee6ac93bbdaf, - limb1: 0xb7c406b4dbaeeb85ac083b73, - limb2: 0x6b40e5cb5c1cd013f2e32a77, - limb3: 0x1305161514b8c32fd0f36c51 + limb0: 0x424edf3d631d37cbc077ad96, + limb1: 0xa92010b76f85b484aa828086, + limb2: 0x8195803adfcf04d588abc721, + limb3: 0x9e19e91f519c33c39d4b0c }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xfd08f55127c3b89d35f8ffc9, - limb1: 0x2f779ca7a859a6baa5ff44a0, - limb2: 0x147f4ea69ed1b81546561022, - limb3: 0xe623885e21eea073b523cf3 + limb0: 0x74dcf380e398861a9de824b6, + limb1: 0x3b76dc083b26eae0f2cd3cc6, + limb2: 0xbb82a36fd3e2f5deeaf55227, + limb3: 0x6df43a0c0563fcd5cb1e9d2 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x8964786bdb6c327295f28866, - limb1: 0xc35fb42ead07fd699788d3ba, - limb2: 0xfdb43719a855abfe4613c69b, - limb3: 0xc32f763d5e548beede41ec6 + limb0: 0x92b18016774f1ba890d21b0c, + limb1: 0x13c0d4727b7df0fc4a72e393, + limb2: 0x7d5c8ece3d566999d176fe00, + limb3: 0x10dbb3c388e3809c14eab838 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3aa8a1e6dd3fbd02f052ec0a, - limb1: 0xa6b45296565a1731f75b0381, - limb2: 0x8ec9cecab7e9b77ac3dc2f1c, - limb3: 0x16ecfc06583e0bec7d1869a3 + limb0: 0x9107ac7ccd4137f1d4b59be, + limb1: 0xa4135a2a2704c00414e30f5d, + limb2: 0xb12aaaf67560e35c34b20e51, + limb3: 0x177ac776fd536ed14164b60f }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xcc6e53b1d92ec9278a226022, - limb1: 0xdbb78637f3763205b40780f6, - limb2: 0xb2a4a64ab4c1dd36b06bf7b4, - limb3: 0x1874f0a5ed1b9cd293acacf3 + limb0: 0x5012ea91261685e342d6ba4, + limb1: 0x5c6c4756bd96bd273364fb91, + limb2: 0xd6e275de657b3fc77aa49da2, + limb3: 0x6585d32d36777b2cad5f5aa }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xfad26248662a14efb2c17bc9, - limb1: 0x1bbbf350e48714100d91da95, - limb2: 0x42ca217be4231a83bd7b41ec, - limb3: 0x797be3e49533746e77d3682 + limb0: 0xd14ee1f50099f4704e6a0b32, + limb1: 0x1db62df2e6cf64acdd7eb82e, + limb2: 0x75b8e2d086ebada7fa67e91d, + limb3: 0x9083de63a596194465554fd }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xbdb4b911bd5adffe788cdd51, - limb1: 0x27d999f5924da4dd37f83fd9, - limb2: 0xa16c9f8558f261ed509cff48, - limb3: 0x8b32ed3e351ca826e8091de + limb0: 0xbecee0390e9f460baad9da7d, + limb1: 0xf2522b9caff80102c54605d3, + limb2: 0x791e7a15bf7a43f139d3ecb0, + limb3: 0x3647b467d071e35c56ffb9c }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xaf55e2a26f6b8a536b2f0a0d, - limb1: 0xf13affc6a3f708d8f8212420, - limb2: 0xd7815ca22991a46e4fe71008, - limb3: 0x108e9479122ca85efe8b5da6 + limb0: 0x5676e48a820c41a268f4de20, + limb1: 0xcbf35a9e94b63440934bd008, + limb2: 0x31ca9e6c2d60ee8cd876dd88, + limb3: 0x154f5f1194dbe82ce57ea826 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe5270fbef970e0eb7cba520c, - limb1: 0x72c31fa64aa0aa6fa72a1c94, - limb2: 0x238431c2b5a1ba86507529d3, - limb3: 0x150e8d3a0782a3508093ec55 + limb0: 0x4ea9c13790b6f5ce6add3313, + limb1: 0xca492a6e73e77b0944ab409b, + limb2: 0x817c18ef869ec9afa8ea6f66, + limb3: 0x18498f22f1ddf79be1afced0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb4832b3f81a2e13c9387a0ed, - limb1: 0x20bf3001ba650fadcfd536c6, - limb2: 0x466a75d0e588d2bde789e124, - limb3: 0x19410dce77b7f247122f2fdd + limb0: 0x6d20a40797fa9a066f263170, + limb1: 0x2f41dc0d20ec85b376455fb1, + limb2: 0xa9facb44143dd2c8058760de, + limb3: 0x77dca0fc73485f61f2acf62 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x4fc5750bb4d77a88bcb57aee, - limb1: 0x91a956ece06428916e95c5e0, - limb2: 0xfd170b8bf86cb88bd0e6351f, - limb3: 0x6f893820de39226bdf1b307 + limb0: 0xc1102a70feb30542b7aa94f3, + limb1: 0x894cfecd2598cf15df3c3092, + limb2: 0x267764af358a347d9586cae5, + limb3: 0xb3b4a26aa8ab17b256d60c2 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xec668da3ffebebe8777a45f9, - limb1: 0xe234b733ac3634c5cde07ea1, - limb2: 0xb2c519b317fd6b777c7e0af, - limb3: 0x14b528be5347a21bc717f284 + limb0: 0x384292ce696a6a3f7705785, + limb1: 0x989a6b234c05f1595a6de078, + limb2: 0xf3026d0c482cdb84209f2617, + limb3: 0x124640bd5b84e56cbb68e7ca }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x9dcec96517b06c3f05b3e5c2, - limb1: 0x5696daa37f5b4145db754391, - limb2: 0x9a7469a1bfd87481addabef0, - limb3: 0x120e37e9f5ad5554afab08ca + limb0: 0xbf6a342802bc146aef47ecc4, + limb1: 0xbb0d3d6cd872db183924f69d, + limb2: 0x90f13a12de18000a44849e93, + limb3: 0x18c292f758c62f40c19ae44e }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x998ef0ee628f29b0d77b681d, - limb1: 0xfc9f95255b597c0b3ea5d6a3, - limb2: 0xe919a0a2128e1da55d462a38, - limb3: 0x12ef281040e822eb9ca361a2 + limb0: 0x46eac658adc2ae7ded26a4d8, + limb1: 0x5e726690af75eb499c93bb81, + limb2: 0x43868ca8e67b50862759c6b1, + limb3: 0xbd9cf13bc2a74653a4e7632 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xde244222b02f2ba2b96568c9, - limb1: 0x4ebab62f83810307ef774b4e, - limb2: 0xd369f955949f8327be33d34f, - limb3: 0x4a5c82ab40dc9f966c00f4c + limb0: 0xf98ba014a3b59dc98ea22859, + limb1: 0x84db1fff712ae39396f91643, + limb2: 0xd4e7783ef7efd46a4055b186, + limb3: 0x13daa762e026c831324be2a5 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x61192948a258943583449ca0, - limb1: 0xaa8402c68524bc9a801dda8a, - limb2: 0xb7a82b2dcf131ae3be3b850a, - limb3: 0x9eb05dce391f8fb0dbf8f74 + limb0: 0xda132ea9f2329de8c6e9b674, + limb1: 0x36e87482958c2fdcae17f981, + limb2: 0x95d217ca782c98fbe62edb28, + limb3: 0xbf94f20b7865c61a9f8e886 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x46f9660157237b0fe3e308e3, - limb1: 0xa4b8cb24cbe92996d10aa12d, - limb2: 0x284e17c4ef2e2e822d4301d6, - limb3: 0x9812ba715c10be00fb6ea46 + limb0: 0xb3f07519f6ade562f0b86e92, + limb1: 0xc10588d321c1179059e76cf7, + limb2: 0x858c712c1d1f5912addc0312, + limb3: 0x174f291dc313c2a0df182b42 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x2c6aac929c5b3543116da581, - limb1: 0xf36e656f7a86388a1836d0, - limb2: 0x2ffb0a9d479cb1c4e00e31b3, - limb3: 0x34d02e61e1234f009f0561a + limb0: 0xca84ed722b659efe3c44936b, + limb1: 0x76adcf6055158f4e120b957a, + limb2: 0x77c8bbfe43549e242ba5adf7, + limb3: 0x11d286d11ee6031323c148c5 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xe66db62339ce340bfe895b0, - limb1: 0xc28c2e98ca20ae882883b932, - limb2: 0x263091b6a58ac46fa1dcb684, - limb3: 0x10d61b636f356cfbb04f533a + limb0: 0x44ea5f537eecfa73371ba1f8, + limb1: 0x5673213f60f52e7857cbf601, + limb2: 0x449de1a0673950af40ca0dd7, + limb3: 0x194b1b44a5960e56f102e111 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xde3b7e010f9bd916c10ca61e, - limb1: 0x417381101da95ffbcdaebf10, - limb2: 0xb8f2854c7ab11293f8800dd, - limb3: 0x146e693b443ec52c862849d5 + limb0: 0xd0214e144fd758a9b0a1910, + limb1: 0xe5db4911e2d489b15c83026a, + limb2: 0x72be2b58f9f8c39042d1e5f7, + limb3: 0x14eb3049de4c470f12527c65 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x461c57859d1af03be257faf, - limb1: 0xb5e955fa56b455175a04c73e, - limb2: 0x32094cc69edd0c10a1fa513c, - limb3: 0x1232c4bccc8e083ad879d869 + limb0: 0x7d253c0fa9ac50e76b1298b6, + limb1: 0xc826096154f96e205a871de5, + limb2: 0x1b943e254fc05f650cd9e3c5, + limb3: 0xfecb29dc1567a521b242c60 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x8f9f5591e7d53d168c43a00f, - limb1: 0xd56d2be804bd93c23199c5e0, - limb2: 0x27012930291b79f0fe7214a2, - limb3: 0xb41883e9054b25d67689ccf + limb0: 0x946be728409f9b6ea6b2a035, + limb1: 0xab7315c870bc3bd243982fe, + limb2: 0x8ffd50cf7cf4b43ce96f7a2, + limb3: 0xdc17eaf52ad490e2ad8e47a }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xb98911032f6bd373d9bfe5db, - limb1: 0x3f322fc1baba0cb8a8552103, - limb2: 0x4ee7ba6d4d65c5daa5aab4d7, - limb3: 0x9e3fa11948f5875c759d18 + limb0: 0xe294e1bbb7165cc0cafd242d, + limb1: 0xb87e967aa5c56bf291c496e0, + limb2: 0x4410e2e2d8e14a26b84aa962, + limb3: 0x94cb54593ece799c20945aa }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x1b8caa94caf8c807ddbcf0cb, - limb1: 0x46cf9e634ff1342bf89efb5b, - limb2: 0xb2ee7b898f07e4b6ff659007, - limb3: 0x890bb9c14d21b0095fcbc6f + limb0: 0x4a55640c1a8694dad8fb19f3, + limb1: 0x1beb9e956f85b24c6e424213, + limb2: 0x23c07f6d80c01b797439db28, + limb3: 0x154459cf554b6126f430a431 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xc71ae29a10cc7a238ddfdd84, - limb1: 0x8566175db554229e6046d368, - limb2: 0xefed183d3f0b15411145b434, - limb3: 0x595618778bf1764d94fbbe1 + limb0: 0xde88e4d03f0887a556688f18, + limb1: 0x2f642d154c7c924ef6b0dbc, + limb2: 0x14fbb47e0d1e91f8e68d40d9, + limb3: 0x47d5e7a012866f014da5d5d }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xc1acf880cb93f285a45bb6a0, - limb1: 0x5e168ca601cb57efc01fc0e, - limb2: 0x9c11fd1d783656f9cee5a5c, - limb3: 0x5155bc63d9dfea75577fa3c + limb0: 0x93267b8f2b3e432d686a4139, + limb1: 0x28239535ff8577f71808c45f, + limb2: 0xe89503771e0a5e7d31f9515a, + limb3: 0x1bff4c732cded3354fb0aa2 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x66ad2675181abc8e31375de4, - limb1: 0x4f1b7def099ea075728cde8, - limb2: 0x188675ef5871962b5db6a896, - limb3: 0x102a7faa389428bed7b71c2d + limb0: 0xc381de5c6dfc72c36010baff, + limb1: 0x3dbdfad11f8482b322673bf4, + limb2: 0x3b810d379b7f32e60d925fb4, + limb3: 0x15bfd40d9b516d55af3d04bf }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x246aae3104c45b3a029f121b, - limb1: 0x5e220476e22f9eb9aaaca15a, - limb2: 0x68c3a3a320856767e090ae17, - limb3: 0x11b9715d8922fcbb6f4947ae + limb0: 0x6e86068a90af692ab7e1f024, + limb1: 0x2d8b6a35d3befa9da627d342, + limb2: 0x94cd32d7e48c000f981dbfff, + limb3: 0xe8b860d0d76fa2d3981e21d }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x84225e8b7aba806980c0886b, - limb1: 0xd11c1ef69a6d78307a1f93b7, - limb2: 0x4f87ac73ba71f30f45d7289a, - limb3: 0x159e75f915b1021062dc1a95 + limb0: 0x35219dd235ce766891ab3d40, + limb1: 0x7d929fcb7f52afbacb0039f1, + limb2: 0x6df3df0045fe30a0aa7b3503, + limb3: 0xa3e11c3ebf085c21553c1ba }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xc27982bfdd1191ccc94ac1c9, - limb1: 0x3ae2de7aeff571434bb2b771, - limb2: 0xaca0863a2dd79f9650dd463e, - limb3: 0x106dc4dfb9f5fdb9d14ddbb9 + limb0: 0x556a337b7ff0f796e86b4eb7, + limb1: 0x853d4d9174860507394191d8, + limb2: 0x1f24bdcfe1df8c889f5be5a9, + limb3: 0x130ced681654378eb5914de6 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xddde9496d4e2e2a542a11bae, - limb1: 0x2655a1328e65f428fbb0516b, - limb2: 0x4272b5aa9a7a39ec4d0d3814, - limb3: 0x1be571c53e2e24c79f12506 + limb0: 0x8eb49111aa45e457aeb6200f, + limb1: 0x992e104229cf0d6f2ce91332, + limb2: 0x715ddeff77fa4bf56029a7e3, + limb3: 0xd085d726299500fae24fd0a }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xae735b2edcc2fc0cf8cb84a8, - limb1: 0xb57850b2dae3cb53cbdd9531, - limb2: 0x663a29797fe231ac68f0e750, - limb3: 0x3f31eaca1d69e6b77c5e746 + limb0: 0xc9f7b27f7c057b9b61359639, + limb1: 0xd733df5aaee68adaa330f058, + limb2: 0xf3371f5dfa668e9dc3f64efd, + limb3: 0xf4c297de2329009abca7596 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x9e597ace17a2b3a8b929a4b0, - limb1: 0x9260e57c98b7f01ab4cd156f, - limb2: 0x3d9ca2e526942be23fe8d982, - limb3: 0x8497c045fcc6fcf4d3ca4f9 + limb0: 0xa17bd18e4b5dda97347be7bb, + limb1: 0xd84bbfa6b700f2509546097b, + limb2: 0x27007bd3a22bf20891885e7, + limb3: 0x2ab4e686d5aa26e81eb0a1b }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x700cf15204db6512325e2d28, - limb1: 0xdbe6f1f92bbf7c558c517407, - limb2: 0x67c6dc4586702aff4f7360d6, - limb3: 0xf31559c532858c2c8cf284c + limb0: 0x2675b8156b5b9c7840fc6d5d, + limb1: 0xd158f9551d42a43052e16d51, + limb2: 0xef38659c9bd9c6a757f3c6b4, + limb3: 0xeef573d52c9aeb3ec98718a }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x1c094614326dbd45dfa5d223, - limb1: 0x56d45d1759ab5d9b054adaae, - limb2: 0xd622a93794d29e4b6b248ab5, - limb3: 0x134620ee0508b82c47c84625 + limb0: 0x429db5947d00354fb828e35c, + limb1: 0xa7f4eecbe1f9f6c79739c3db, + limb2: 0xab64f3e05b3e5e4828f05571, + limb3: 0x124638f2242da1ea9e499628 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x66fc7314cfbc57490e2aca76, - limb1: 0x3584402bd54779e974d15f7c, - limb2: 0xcbc547cd507df2cededb6b38, - limb3: 0xd8989ef748915d1664a8b1d + limb0: 0x3e2cecfa458f82a02ebb351d, + limb1: 0xed6ee2da6190047e147255a1, + limb2: 0xd6c7e25e702dd621852e2374, + limb3: 0xdf4e80711a783a630f0701a }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x122e10b92cea69bce5e483dd, - limb1: 0x49062ecac6901e244b8ac992, - limb2: 0xadfb313e0ddd917a9e5f647f, - limb3: 0x2d683810363dbe3f7c349f8 + limb0: 0x94adb122f8eeb4ea8f41bf42, + limb1: 0xed1a924d4923e4a9821c89df, + limb2: 0x5097b9a2fb9c912aa44e3d68, + limb3: 0x852f6fc04cc084ecaf189db }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x2e3cc117aaf82b1bd5e1a5f7, - limb1: 0x9692c20bc225afd38283045, - limb2: 0x3109683c38cf88106d1e6747, - limb3: 0x150d5fb41672ddf37f9b2fc8 + limb0: 0x725e89fe0c535c1820e1b7eb, + limb1: 0x8766bf6cec1b71307b2cf6d7, + limb2: 0x75eb5a2fe327ae6347e32e5b, + limb3: 0x9920990c0320dd3e26f1db6 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xe7bf91da225c7ddbe0650f6, - limb1: 0x28e0e611f82cdeaa4c3c5143, - limb2: 0x5ed21f0bdc553ec779b47542, - limb3: 0x1210477af007107973347041 + limb0: 0x799409b8fa0a7b729cf8c38, + limb1: 0xb933dd281fa5691abd8342a0, + limb2: 0xea979962d81ea656d1cb571c, + limb3: 0x2cebf888194c60d2de14d0b }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x2912c5507abc0336b063e58f, - limb1: 0x8311e8f597645b7de01651f, - limb2: 0x3de4601f2d6f93d76dd41ae1, - limb3: 0x8d2966d40a651805ab09395 + limb0: 0x157728bb900c1c9ec53efdf7, + limb1: 0x8d3c3faaba29f73b808c0c87, + limb2: 0xf1b386cd659936c614bae9ee, + limb3: 0x3289f30d424d5b03cf8a92a }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xd0868bc2b0dfbb5fa709d86f, - limb1: 0xcfe6e39aa60ed5364ed8f196, - limb2: 0xcf9c2cf5dbf97434cdaec6bf, - limb3: 0xefde1f41c8467a3c7efade1 + limb0: 0xcabf0dec228560b64d1d8593, + limb1: 0x4dc785095455cab658487fea, + limb2: 0xac0e40ef90f910a7e06f05e6, + limb3: 0x18a79a2a01f670e6caa9f058 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x3c23f90f6c1180d5f7c6b95d, - limb1: 0xca2127961d25b2ae2fa3cafc, - limb2: 0xd43f0752a5753a5bee3c2524, - limb3: 0x124f0a69286d55096a2df09f + limb0: 0x89a8d2308fd35d5d72a61aaf, + limb1: 0xed51bec09768897dba90364e, + limb2: 0x687a8a9b753e22f50ada2348, + limb3: 0x3fa0087a9cf512b8829dd17 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x5fcdcc9acdfdec5d5f8d5d25, - limb1: 0x59d20a939cedce499d702ca8, - limb2: 0xd74795e841a1958b0570fbe4, - limb3: 0xf9895e25842046dabd5bedb + limb0: 0x576d632e79aff9be0bd4b1a9, + limb1: 0x3e8195ab4a5337a23531dfbf, + limb2: 0xf084d9a661cb615daa003da5, + limb3: 0xc697b8c21c3ab85b290d9cf }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xca1029d41a0d9a8fb4d2731d, - limb1: 0x79344c3e42a84bd1444bf1f8, - limb2: 0xb30b539e22d5c3782c0886e9, - limb3: 0x48022b95da438e0e90e0e39 + limb0: 0x7e4174fdb815f8d52e81c1a3, + limb1: 0x56ff9623e19f909e81718863, + limb2: 0xe75d89613b443ed475544bc3, + limb3: 0x1190ca9c97c0b28647901ddc }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xf59f4df210de24b7b4b3c7c1, - limb1: 0xf748a9f00f87ba0d1195ee5a, - limb2: 0x6b17de61100886a934839b42, - limb3: 0x176c1b93c899409266ce682c + limb0: 0x8f12195893b55da243f7f489, + limb1: 0x997220b1c5790c1fb5ac8877, + limb2: 0xdbcb70517759783df6ef3967, + limb3: 0x59a9ae69bff9f713e9abc4d }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x2cf27a2b97ceeaf3b5598af, - limb1: 0x8b5135b15a5d3fd7c30cff52, - limb2: 0x33b0e8a40ba23cdee66d53d, - limb3: 0x5ae8ad865ee0dc4daff06da + limb0: 0x2721eea68d792fae7e22229c, + limb1: 0xe7f7205ed05d66fcf6779f, + limb2: 0x39974d948e0e4655a38a44a5, + limb3: 0x87f5cd614b38845d3b7e8d7 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xcb465f1909561319558b8f8c, - limb1: 0x88e46a1d78eca18a537a5525, - limb2: 0x337e8dedb7d3ff6f41af8177, - limb3: 0xf1c50374659c8bdcb17622 + limb0: 0x6fb23acb6a179f67c847ca4c, + limb1: 0x3454297274300dc501dc8771, + limb2: 0xb11ffcd282841594e5e4b81c, + limb3: 0xfdf857dd5f3abd6b84dbed6 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xc09d1fcafbc87773c791494a, - limb1: 0xdd45b567afbda32e7bb2b080, - limb2: 0x105d7cb066a06182bb8302c2, - limb3: 0x36dbc2ce8e9f6ca69a5654b + limb0: 0x9c5980c867a01dd21c2abf7e, + limb1: 0x2a80ea26e4a16eda104da0e8, + limb2: 0x2d14e49ddad6b4d60c94a775, + limb3: 0x16a3d1f34d070023e904be30 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x394e9f5fd024b4e8e493ee2a, - limb1: 0x7fe916266f1c53c96eca707b, - limb2: 0xda45841336e09232e0866e9a, - limb3: 0x45723f420d45ea180e2bbb4 + limb0: 0xc8f993c655d7e4d97263d39c, + limb1: 0x794a33d811c5b3c2970f6b20, + limb2: 0x50889ac948ae84bc3be7c565, + limb3: 0x1626f0d8a64bad91f15b7cea }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xcbec35e3b5ce9bbe05bbab3a, - limb1: 0xfc2d626c9169a3c7ce617d7d, - limb2: 0x76ea0757234eeb139ae15911, - limb3: 0xc3302a6b769b840d709ca83 + limb0: 0xd520aaa785f162aa3f90bc42, + limb1: 0xa2acdbbc45b9f4dd30d63839, + limb2: 0x50ac3649de38f9ce824c36a6, + limb3: 0x53c27131466e03af09e8652 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x22550f06ca93cb4204423b3b, - limb1: 0xc9679f9402af6ad43b03b9aa, - limb2: 0x173eaf397c21e224ef8e6d66, - limb3: 0xeb372fd702994cfaca42829 + limb0: 0xd6f16654ac831921b54c6905, + limb1: 0xba71681dfd6e1a85d294a847, + limb2: 0xb4b5e766b210aa47d1611177, + limb3: 0x70805b4044c591293c8c605 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xca63400d23471a6941fcd670, - limb1: 0x9d7d6563bc2c2126534b4f04, - limb2: 0xfcde150e7257fa8c620ec3f8, - limb3: 0xed4fb2b3bfb5d78c097776b + limb0: 0x2b932eabc8f93d30ebc054be, + limb1: 0x5c3077e7f1c42128f98d80d3, + limb2: 0x6820652d6a55354ba9576972, + limb3: 0xd0a70958a357ebff0699536 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x94735754b920cd2b9a399be8, - limb1: 0xa21abb71a49996b5573b390e, - limb2: 0x908f0e460f9de3ac4b8d4ccd, - limb3: 0x11d885b2327bfb758cf356e5 + limb0: 0x869e8019c01c83fbe6987477, + limb1: 0x5d72570d962d40852e4ec5dc, + limb2: 0x96facf30e4f215f5724282db, + limb3: 0x18feb8fd804d7922152e8923 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x5d539a0f22867cd25e98d311, - limb1: 0x6b8b36c4e8278308379af71e, - limb2: 0x80d8962f8cfffddb063e8090, - limb3: 0xc540ce827d771fd11c45e61 + limb0: 0x107e1491e4f74342fff67a58, + limb1: 0x94a57ccd1c01e36549d3961b, + limb2: 0x9639f0e68436c7d4b0617b0a, + limb3: 0xace01e20d0bfa12c197089a }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x893e6dbbe1691e6cd835ac5a, - limb1: 0xbd1c3980c5edf6451b80007e, - limb2: 0x3c6287ce241dd27a8e5044c4, - limb3: 0x581889bb026fd84d54a2052 + limb0: 0x2677b332c01bb365722fbdd8, + limb1: 0x8cd4c8564f0fe9fd9ee1a32f, + limb2: 0x8f32e41ddeb6662de5244ebc, + limb3: 0x6314dbaec50b16ea0b7dc2e }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xcd79216f2378ece5c7700949, - limb1: 0x17b93a078a9f6b5d136e60e9, - limb2: 0x3b37238e110e516157bef7c8, - limb3: 0x153ccb35f7c8c200c2a9c1f1 + limb0: 0x1552a69a3040e9f521151459, + limb1: 0xb20d9d75fdd4e4df3589c5f6, + limb2: 0x775de32928380ce66e676eb6, + limb3: 0x444c7ba5a4787965c9103b8 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xdd9db82492edf6565c09f6a8, - limb1: 0xcb173c9e88c5b02e12e1da17, - limb2: 0xec9ff3b521447cf3596718cd, - limb3: 0xc6fe3512096cb3d42aec5b1 + limb0: 0xe03c5c42d93ed44b724bc2ba, + limb1: 0xfd074871845a491291a9ee5b, + limb2: 0x1c05acf185928665ec5c422a, + limb3: 0xaba50aee76e8b4c33ebc65a }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x59ef96817eec9bf556cef807, - limb1: 0x9b56c309f2d1f373eee3a5c4, - limb2: 0xb2f9aaddfcec49e71cbbf96f, - limb3: 0x8a3cf29a84930630fa00d62 + limb0: 0x1acdab1197ea468c57a60ce0, + limb1: 0xcd9d91dfea07e35f9fa7eade, + limb2: 0x5151f9ae4cad17ad9d1ae759, + limb3: 0xc8462b131c73c77f24c386 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x865edfda69fcb8a00b4e8f08, - limb1: 0x7666f705669055247b70d633, - limb2: 0xd104b089f2bb7c06eb527758, - limb3: 0x12a104c5ea07b9d88c6e6ddc + limb0: 0x2100b2b8913213e5caff6269, + limb1: 0x1af5240375ca074953474479, + limb2: 0x84ce54b63411ea4c103039, + limb3: 0x1ed027efa8c48ef7082bb93 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x65e4d3675c1592cb1c8ac036, - limb1: 0xff178138af0ba021e66525c7, - limb2: 0xb9a27fdba0d96f29de6b3bd9, - limb3: 0x8d632ddf510e675a346ebb5 + limb0: 0x5e8b3940b44558a3952b1fc6, + limb1: 0x95283dc36890024b524e47e8, + limb2: 0xddfee5c491ff3fdd346b11f2, + limb3: 0x538c1b6d2df56d32fa90324 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x7219e3c80296df4ac84c32e7, - limb1: 0xb0362eadb0203a79361fdef6, - limb2: 0x69d7f3cc8bd3a6fbcaf775da, - limb3: 0x9501e32f67d9070ada6c60a + limb0: 0xdfb07a5aad95c9c77e4ddf84, + limb1: 0xa3ccbb237ec3ec0f6ee454b, + limb2: 0xac06c0840ec6e33dd0cab4a9, + limb3: 0x200a64827ad453b2fd6ec3d }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xe7004f06e4a9f8b1a1a83836, - limb1: 0xd18650c87ed13a83fe6256fa, - limb2: 0x2803862b20734d8f56c68606, - limb3: 0x739d1c014fac5b46b0b4055 + limb0: 0xbfe37e793050b1bbc76da1f2, + limb1: 0x19bcf1bff0b05aa3675c5564, + limb2: 0xe27945cb7c0091eaff620327, + limb3: 0x5ba6b7ef6c4ce44f394f198 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xa6e35942448ea522ac52fdf4, - limb1: 0x13e1b508bdbec833df95d911, - limb2: 0x2a5df95af15a7b4673426eb7, - limb3: 0x62e18f5e4d3175fb34696a5 + limb0: 0xf8c6d07cad448c21695c039e, + limb1: 0x67453db67d77abfba4c98fd7, + limb2: 0x71b7bcf028840a03ad62e30b, + limb3: 0xb69828555319ab95e7acb5d }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x8e8c74cf1469eb53455a3d71, - limb1: 0x759b1e653aff337fb665c2ef, - limb2: 0x362d5c8ef693df13031c7c48, - limb3: 0x14dacc81c5b0abbc2274a3ab + limb0: 0x7805572e153eaa2615d2916f, + limb1: 0xe7deec2d3a99a2ae6cc186b1, + limb2: 0xe2fd56534e858445ee180ee4, + limb3: 0x19d26a50e091bc42779c4440 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x55704b2d09c83c2986d5a791, - limb1: 0xd0a91e0ef30def54d76355ac, - limb2: 0x71cb24a35b8895cbd271d395, - limb3: 0x6e2dabc81ee55f4409ca0ff + limb0: 0xa7449b4c186ba2b727efbef4, + limb1: 0x30e2ba9c7d7f082bb9a8ab8, + limb2: 0xc7e5850882b95d8d6702e269, + limb3: 0x13c7e35d336ec1db7d7ef792 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xe124e30084b3ccf119fd1707, - limb1: 0x76908efc13a0cac731932b0, - limb2: 0x562bde046ad019120bbceab7, - limb3: 0x8aff39f0a4bf38e4f5375e3 + limb0: 0x50431c869753f64940bcc61, + limb1: 0x67eb7f3ac52b4072b628855c, + limb2: 0x29d18eff9286d4909d3aff6f, + limb3: 0x17f0929c862a0f5debd8ce92 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xcec0c212b43219f978768e2b, - limb1: 0x22b69bf483226743acf78fb5, - limb2: 0x1b7698e7f91572a28da5d168, - limb3: 0x169972a63ce041e4b0b297b5 + limb0: 0xdc02f2082167d694f6a83837, + limb1: 0x16a957c0cf6ad245885738c9, + limb2: 0x454f7bf22e340da14f24355a, + limb3: 0xba1022f93796803b8e46d56 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x3e4a2f6053c9839308c1630f, - limb1: 0x10a969a2d1ce84a764648af1, - limb2: 0x7a2d26e9921e5d9e88bb0770, - limb3: 0xc182fc04185a0baacdd538a + limb0: 0x88f033219901702db63cf93c, + limb1: 0x5f8adcad5fdb0a083fa11e90, + limb2: 0x202412c5857dfed13bca23f8, + limb3: 0x87047a0ea53855ca7c0e283 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x20832619e66ee7027bfc295d, - limb1: 0x9fbf444dbbe2dbc6330e7378, - limb2: 0xe36a328a464053549a3d0bc0, - limb3: 0xa6c458dcb93c66c0b09778f + limb0: 0xc36d4f0d7d5405575e2ff795, + limb1: 0x74b01276ebfc3817a48d34e0, + limb2: 0x66a220ae45d8716d85ef6b, + limb3: 0x54120f620bdc68bfa952c4c }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc7e6b63edb37f433f58b4321, - limb1: 0x448292d94c7ad2319dc9cb85, - limb2: 0xcb4a562f0d585cc97e569d5f, - limb3: 0x156f1c3e10df90e4fc02175b + limb0: 0xe1c517269089cec348d06835, + limb1: 0xbe8ca63c3e6873608d9d2917, + limb2: 0x4cc668a266a7a0d9692d658f, + limb3: 0x1011cf4bdb33fe54d9542caf }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xce373473b592f0ee76d0a147, - limb1: 0x46e47ad65f73d8deacefcfcf, - limb2: 0xde3db02a59c8d33b70e30f56, - limb3: 0xce1a4cc642cc63e4123b10c + limb0: 0x5345a45c7da7fccee0a93dfc, + limb1: 0x9a98eebae396db600830f7cb, + limb2: 0x8638f0cb92ba3a7321bb71df, + limb3: 0x464432a16003fc31c1528fc }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xb09b3d53d1abb7dda4c3710, - limb1: 0x6703b1d91f62c6e5806d31a4, - limb2: 0xa06b165a6257723c58f11e28, - limb3: 0x6aaef11bd6426ab10c90db0 + limb0: 0x1e8d48ff4667c6824039d97e, + limb1: 0xe52c1b3e82951ae83143a19a, + limb2: 0x5b90d68b96225988c110d44a, + limb3: 0x100c5c910c3da29058f24996 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x27c6eb9dd2da2380117fce4, - limb1: 0x7360b82a60cd57590db73cd0, - limb2: 0xd71a4bece2b45a0c0f67e8c3, - limb3: 0x191738f7a6ddf3721d70053d + limb0: 0x5a8b81f9a9877a7abac74a65, + limb1: 0x1f7b6e59e1b008a41da205fb, + limb2: 0x8ad5d0aa3a5f483dd0f5cac2, + limb3: 0x19e99988907857809e2f8fc9 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xa386f622648c3a6e65ab16b, - limb1: 0x41cd2fbe6999463466f967a0, - limb2: 0x3768f303d23297fde327a263, - limb3: 0xdb1700e5ed89b0b7a9dd813 + limb0: 0xe5489a49b3658afce8c1bb93, + limb1: 0x204b78cd6541b55626826d2a, + limb2: 0x361db82bf46b4f5d1b280323, + limb3: 0x292669f79baa0cd52a4f561 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xc3c67d0e9008f2405ab40478, - limb1: 0x6b026cbaefce54bcd42ea39b, - limb2: 0x5761dd55913b01697ee88588, - limb3: 0x1348be34ab6af17ca15790f6 + limb0: 0xaafdc5448dc46faaf341f908, + limb1: 0xecac5d36c64608cd5efaad16, + limb2: 0xc5429a7358faec1e8263d5fc, + limb3: 0x13fc811aaa1e7c425bd22213 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa4511dbec88398556623ba24, - limb1: 0xe5321a8945ed9bbdd8d859df, - limb2: 0x4ee38f04865fca8b7bd0db94, - limb3: 0x15c648884615b2e4b2614159 + limb0: 0xc8e45065b5c2ff2131fd88b1, + limb1: 0xd8b2944903cbca60cd14f080, + limb2: 0xdc3ca16ac5e28072a175729e, + limb3: 0x1308f870b6922979ad557855 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x5de064b1a20320242207c3dc, - limb1: 0x53b9589af75aec6001d044b4, - limb2: 0x5374ea62954723fc58ec9da, - limb3: 0xfb47b11ef289b66bd9c99ee + limb0: 0x34ec060276dc80d2ed7b5874, + limb1: 0xe21c391c43b7b35c71ac0ee8, + limb2: 0x6828f1543e9ed4a9d9937ed0, + limb3: 0x199cbec82d5a417f29691022 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x4ff6a5f3c42372862b3143dd, - limb1: 0x1ef50801e2e19e45a649c5de, - limb2: 0x32572a420d6e669b724ccff, - limb3: 0xa101263ac33953542c077ef + limb0: 0xf95dacbe74529db509be372f, + limb1: 0x9631634cf8cfff1d5fd74259, + limb2: 0xdcc242d998b3b117747e1f50, + limb3: 0xf33fef62a4adafecd953f0b }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x2863685244b1789f35210496, - limb1: 0x15cd918daa52bd5944fd3bd6, - limb2: 0xa35d1f1b3ce2b22870d45cd4, - limb3: 0xdf1c68a7a3d6d9bf914ec15 + limb0: 0xfd7a4a51cc55f2f030514618, + limb1: 0x5b254688418cc08e3d39a20e, + limb2: 0x21cb1808b9c159eb5ea17aa, + limb3: 0xcb2cc840e425c97478baed4 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x6002b4e0aa60462b8486e25e, - limb1: 0x3ea5520665d34a6c1bd419d2, - limb2: 0x914515004f04fb5a192590e4, - limb3: 0x406fb6c68a76de168ab9a2d + limb0: 0x39e608d30990d746074f5ca7, + limb1: 0xdd1cc50cf606620f50448430, + limb2: 0x3d2f58628828588470cf8b8f, + limb3: 0xe0444bd2c49fc1ed59053db }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x156ec86c86a77dea87755398, - limb1: 0xb53744be3f55a6fb8a0b8cfc, - limb2: 0x8d1a7111419d1b1f3c5ceced, - limb3: 0x182ce86af6ee60e61b29050f + limb0: 0x93281ef3a091c69a362726f5, + limb1: 0x6d2bbc36f88c8d0b304f23d0, + limb2: 0xb6e64e7224298c18d7706a27, + limb3: 0xeeb75f3ce4f7d6f70164a62 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x9790001be85b6e52c0d2e2bc, - limb1: 0x1b30dbcf8b7603fb8feeb059, - limb2: 0x50aee41104e79b4346918fa7, - limb3: 0x121e3a2638c7880d1a58dc4e + limb0: 0x43667b6531cb45b237a7762a, + limb1: 0x64fcf230c27e3c90055ae77b, + limb2: 0x5326e369129a64540fbec456, + limb3: 0xc2e01f9ce208ed35229442c }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x397112268b80468f2fca037f, - limb1: 0xacf7f1b23b41856b30f1c619, - limb2: 0x278c3b151e94f61f1ce8d770, - limb3: 0xbed4f2260d48455cc83b6c3 + limb0: 0xa0c4bc43519bccfd167d48f1, + limb1: 0xcfeccde2f41e13ac0a943ff0, + limb2: 0x5e4aa994f9c5c8c07284743f, + limb3: 0x16a7ea7e1e8fcec66bb603b9 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x9cb0a68122d2a039a0176b47, - limb1: 0x95d5c3bdc1fe4a1cd42b544c, - limb2: 0x6c0e4cad3361ad9feb928436, - limb3: 0x1b25fe13abb0600cef5bbac + limb0: 0x8e18aa720f65ae10618006f3, + limb1: 0xf48ad3a236358f6fc95f448b, + limb2: 0x6bb0930430a784e26dff78f5, + limb3: 0x831724783efc3d459ce2741 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x703a63a0957779bf5d9ecf3e, - limb1: 0x5ee7bbf2b82eac45656e051c, - limb2: 0xe0b9bd4c1c754e4193ea8892, - limb3: 0x4bd23fff72c61e41839d32 + limb0: 0x9c0626f4d5ac3cf3fa377d44, + limb1: 0x8c22ce645fbb73feff1b5a57, + limb2: 0x5a072a30bf043889f2c72a8f, + limb3: 0xfde30b21e4f1bdc9471dce5 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xd2f526fcfea9b8fa97eaf467, - limb1: 0x977d316248d974fd81ac39e, - limb2: 0x98b6dc6ee583bcee75c7f459, - limb3: 0x13d99e8a37f1c65af5b1c1f0 + limb0: 0x4a1718004c55d2721d8a25e, + limb1: 0xe6be4146323d14bfb088cd5c, + limb2: 0xed07c53d73e0c06b54eae303, + limb3: 0x1393b34faaa214a5cff04df0 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x3ee685787616f932dcec6585, - limb1: 0x6204ac03b98a63009366ea6, - limb2: 0xcbc9b9dbc70a4f4ff2506e4b, - limb3: 0x19eedd5409c0d8387527f2ba + limb0: 0xa7d2073b61ab6eef6fd58d2d, + limb1: 0x8c6e0f693dee0c85bfb40f4b, + limb2: 0x94fb9fb37e0120ec0e1c897b, + limb3: 0x95abf644fd90248c6b62849 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x7d3d923bbb1b4d493fc327b8, - limb1: 0xf28151e75a6677baf51b4f05, - limb2: 0xc13afd8b08dacdd925142c51, - limb3: 0x8187abc78efcd12d6d09da6 + limb0: 0x851c554526b00dc6e8549416, + limb1: 0x4046a31ae20e20f33c750d25, + limb2: 0x48c347ac1d56dc03010d6442, + limb3: 0x784fc6bfbe71f9e742612ab }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xd4bc5ea72b61ed52a8466c5d, - limb1: 0x3e0373575f25bcf47b766968, - limb2: 0x47262dfc041b9d2c30479779, - limb3: 0x3b5f042c0a7243b95cc3b66 + limb0: 0x4f9f0f40dfdae25e4a552537, + limb1: 0x957884e42dcfeb2d2831381c, + limb2: 0x6e4b71861146a514fc2d5f3e, + limb3: 0xdf11f603143b869a45e9c }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xcaf3f9ef6ee1e3a698d0c601, - limb1: 0xb1c30da3abd257fc79db9a05, - limb2: 0xd0acc6d436f3d0e2574753f5, - limb3: 0x14fddddfafef54eb7331775e + limb0: 0xf887779cc7492ea46f79d3db, + limb1: 0x2da3f3e12c78313bfdec5146, + limb2: 0xb306b5c54da3bbede84897c6, + limb3: 0x59d9e675bf17a0bd027cd98 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xaa083da340c9365075625028, - limb1: 0x1c2329b12de0931534bbd509, - limb2: 0x650e96d93fa56e71122a5763, - limb3: 0xc679e62b22d4509ffccebdb + limb0: 0x657425a5cf624f175e89afc8, + limb1: 0x9198bd8c0898dbefa75cdfe4, + limb2: 0x8f3ebe6429ae4d23144d8c04, + limb3: 0x133564fd25ef2530776b3dd2 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x5b48209fbb98851942725cb1, - limb1: 0x8a5a0c3d3ba422f6059c084a, - limb2: 0xd85c66b074020e22c8c2871, - limb3: 0x11f2b5ee686d28dd1d14cb9a + limb0: 0x7adcd54ec65a7f66f762daed, + limb1: 0xff712ed5f7a7fe39240acb38, + limb2: 0xd42c9c734e3b37c3ef50f79d, + limb3: 0xb3a65ac89140aa95a15549c }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x86cdf8112c07190344646c68, - limb1: 0x6c740d68b0ba8f36c4634f84, - limb2: 0x7aa3241e501ee370efdd6a72, - limb3: 0x1348d0455e892001736d526e + limb0: 0x6b1f5c60495c74dd25b350c6, + limb1: 0x6c4aac91e78ace7acb21c031, + limb2: 0x645fb89f89816d920c2e3ab3, + limb3: 0xcd31a6334b9f1e4b35156b1 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xa1e509d1d9675ec4adc189d7, - limb1: 0xce06c6e62df0fd754dfe282b, - limb2: 0x5200184b774145997b657189, - limb3: 0x128328c419a80f0752d2306e + limb0: 0xfa617084cefe231a2a7cc24a, + limb1: 0xc022b59c8438de009bf5dca6, + limb2: 0x2a3f3bcdeff5f51f0f10c6fd, + limb3: 0x88c0583cb8ec8789a80e3a1 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x7683bd2c4de3f885a00f4a7e, - limb1: 0x6793bd2e549b563c36f6c0fa, - limb2: 0x4e4798138ac8f1467fd77f6f, - limb3: 0x83140d1e4236e7a2f543c32 + limb0: 0x3fc2b5be0e86925c58dacddb, + limb1: 0xf81ac2859ed855487cd48226, + limb2: 0x837bc943d54b05c1dcebba0e, + limb3: 0x1745e90c1718525d855ada0c }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x200a7e314d1811b636eb50d6, - limb1: 0x28c9ace6b873840c40bce5fc, - limb2: 0xde14e86128eef5db88cf67a9, - limb3: 0x11d25583d3ed311e8530ac3b + limb0: 0xa4ba24edfc19028d041a495a, + limb1: 0xe3dc4fafba87fd5bbca7bf40, + limb2: 0x9335dc9b4e421facf95142ea, + limb3: 0xd26f97bc50cfbf758d21c33 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xe4afa6a3f078645bea277bfb, - limb1: 0x8a25d7a1c5d8d0494862664c, - limb2: 0x4ff609d5e8eb0388a835446f, - limb3: 0x5311b5ec879bd188f2f2c39 + limb0: 0xf15620e4816ed81df769a20d, + limb1: 0x40944bd4352edeb611c59b4a, + limb2: 0xde3d958298055f76357ed81b, + limb3: 0xb31bbe9cb5d1b5b8f6be16b }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xdded65fe893d09beb7affcf9, - limb1: 0x7940f05b376688f592c212b6, - limb2: 0xefa9d6ed0e8ae898b8d1ad76, - limb3: 0x129d63863f5734454c17156d + limb0: 0xb51c7db9a61b39d0713340d3, + limb1: 0x1a4051c5c0924487cfe4836c, + limb2: 0x577a22ba4c6eb071ed773b27, + limb3: 0x913a9e8bdbd695de9ecd1f1 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb1c346be44e94c0fc28365f2, - limb1: 0x9e2c4324683fcad453837c1e, - limb2: 0x1dade27abb8ba89b70f2fd49, - limb3: 0x21435ce4d243c581ab5ac76 + limb0: 0x99d336d181c6c430d908b04e, + limb1: 0x3d879ef9ae249f9dfb15cfaa, + limb2: 0x29cb97073093bf704f568e90, + limb3: 0xa1b833675bee8ac7b5e8fd7 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3a0ae026d0fd0cfc49800095, - limb1: 0xf84987573b1f8bdff89f74fc, - limb2: 0x2eab1bc2c1e8fa3bbf5d84b0, - limb3: 0x143788e550753548485f659c + limb0: 0x1c3b16ed1404f904c1d9f6cd, + limb1: 0xdebf12a4bed9f1bc3ba8087c, + limb2: 0x8d5f5d03a2637fe990014912, + limb3: 0xcbc972ab4369b23a6b7bd04 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x76f2a77c0def37555e58e49a, - limb1: 0x4af3ed0347a3cea5c3f7063a, - limb2: 0xce908fb55b0fba27bb2299b2, - limb3: 0x4a3ac8e350d84d7fce0bdae + limb0: 0xaf977a0ef3b92752c0346b06, + limb1: 0x29c85a4d1d422534cdc38ca0, + limb2: 0x599a48d6eb47695c2554f52c, + limb3: 0x5696f16d14131a5af4a8f02 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xa331e7decc7029b788c9eab9, - limb1: 0x3d77515e01f4c76700d39638, - limb2: 0x54ff62817f7699503bc25596, - limb3: 0x3a00883280975a0254e7c28 + limb0: 0x81d1892db0c7d2edc5cbd413, + limb1: 0x7e181547c0c63d94c9411c9f, + limb2: 0x7118d73fe18a62f3c96caa98, + limb3: 0xb6bb1bf34fd98976c5c87ba }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x3083161d8697a407ee34dff9, - limb1: 0xd8f97217c49d9c3400d940e3, - limb2: 0x9f0e1f945d41254475e1e83c, - limb3: 0xbfb6cd15d12197c29b5a87a + limb0: 0x73e29451880f497413f200e8, + limb1: 0x23c7313d90d231de6e5de70a, + limb2: 0xeffafce06c64f000091ab2ab, + limb3: 0x1328ccfe2910ea1df21e9067 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x191f2ba7ca5f005738b3586f, - limb1: 0x19eb2db3182b07769c6af65f, - limb2: 0xbe9960da5b16638940c3c04d, - limb3: 0x126baa663e819a4826f221a4 + limb0: 0xf6094aef4a51f62512444900, + limb1: 0x23e6975bc4fc8014f4011b88, + limb2: 0x2e29f97b3280bd09c2e2023e, + limb3: 0xe0e125b0bcac507463c03 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x70305037221c7a6b9416408e, - limb1: 0xb8507a302a43a2f5a69f173e, - limb2: 0x5e94e1ecb75549eb52d603bd, - limb3: 0x1b30b2eacca73f5a642f40 + limb0: 0x8d9b0fa36c23e30391e79428, + limb1: 0xb669c7ec74e101e568ec077c, + limb2: 0x206f00468e78b5459dde59e9, + limb3: 0x15e5ddcd1f9c9e43d5b1642c }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x272c3e9f428f16d93ba14e9, - limb1: 0xf3b526fc07709cc2258421b6, - limb2: 0xbb8c776ff870f4def8eaeba1, - limb3: 0x17b9dcee39d9a760ab86d9a1 + limb0: 0x6cac17cca3ac1c5e399e2fad, + limb1: 0xf1bd61b8833908cc1efc732f, + limb2: 0x28244792e650ea94cbb0b040, + limb3: 0x17c1f8eeb439dee8686e18d1 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x7894129f08769b657c6f8e45, - limb1: 0xf134db7a7423682df5de3f68, - limb2: 0xdf889710591e37038483ee9e, - limb3: 0x19767735713d50b306a69bda + limb0: 0xbb7d701872aba0f7553de172, + limb1: 0xde432e97e2009bed43f210a9, + limb2: 0xdc91a3d9e41074bed8ab43f3, + limb3: 0x5b2d72ee2223cb8d32cf720 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x49cd6e15284174d79b8de8b4, - limb1: 0x40e53e3d8b5661142d447baa, - limb2: 0x8f3656697bbafe363753216b, - limb3: 0x13b1c5be5d06ba0ae1324952 + limb0: 0x421761229ead2074fe31f3f5, + limb1: 0x5044ab0b1e61597745de5e, + limb2: 0x58979c79a06051070ba50cef, + limb3: 0x464706fdb0c77f28fe290a2 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xead1cabae81136c1ed6fce81, - limb1: 0xe1fef6fa832269d49630aa32, - limb2: 0xa4806c8efe5d45dfda66d823, - limb3: 0x19281ac11291c5b76dd4df72 + limb0: 0xaa634e0417fa33a1c2173272, + limb1: 0xd76ba321159cd7db1f4fed62, + limb2: 0x3207e4f37a4b32deaf578682, + limb3: 0x257a591eb9d4e9b9c589e80 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x763503619833a6e1b7a5d82f, - limb1: 0x6265a68a122724ada0a71cbb, - limb2: 0xc17d86f009cb4f6eaf98b2e3, - limb3: 0x5a40e77f7b4da6b19929fa8 + limb0: 0xf43c42be4dcf5c0bdc53ecc6, + limb1: 0x208afdcef0f35a816ad070ad, + limb2: 0x330d68a69b2d6e420a044eb, + limb3: 0x11467881ff7aeb27a0ba7ddb }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x241afc0a68cb352df92590e6, - limb1: 0xd6db608ffc1362d0c04b0d47, - limb2: 0x13d2754645dfcf3013f0d62a, - limb3: 0x10bf86404d1a7dcdb1f0e431 + limb0: 0x23bbbff90de9ca1c735734af, + limb1: 0x1f774f8e726a334fe5fbad8a, + limb2: 0x7bb21099971af08086f15383, + limb3: 0x1489a4bb14d4f2980f288e18 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x1723a92d55110f0487433bad, - limb1: 0x61c2d547f07a31de9d9d04fb, - limb2: 0x78f4c635fab8c42c3d2051ba, - limb3: 0xcc20d732f693468a948a5cd + limb0: 0x948e5d8058c33e42c6df9aa, + limb1: 0xc3d3dd57fd24ab4f410c82c6, + limb2: 0xac63ec2985e0b31249e9c9f1, + limb3: 0x312a990b43f88d73c7a940f }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x47bc61cac2ee86c5e0936719, - limb1: 0xb1ae47018aa18b4925a9bed3, - limb2: 0x52a9a4400925790c7f97666, - limb3: 0x9d53b8060afff4df8c9a29d + limb0: 0xcc1647b9484d069989a90051, + limb1: 0xd6dbfd8b737a5d32f2e4904c, + limb2: 0x85d7ee7ad1176d8700d435fb, + limb3: 0x8a7ad385c0a6f390d1f6ffe }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x38b98722a9d93cf207453d, - limb1: 0x9df6693fda01de9a5ccf2817, - limb2: 0xe8bfd413b879949d65661d34, - limb3: 0xa558947cfda261599427b34 + limb0: 0xaf9a072cb178c9595a4ee06a, + limb1: 0x9265abc84c4b99daffd4a46f, + limb2: 0x14ee8e51ff889b46486665ba, + limb3: 0xd73a1c71a7f331f55c69e79 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x163c10b8b92c54e47c6ad1dc, - limb1: 0x6abeb71938da5e29cf4f37da, - limb2: 0x746b9404f1d77360788b83af, - limb3: 0x1523dff2d1565b16348e178c + limb0: 0x746882e35b5f0b451ac881fa, + limb1: 0xc8184e382f7afbfb72e005c3, + limb2: 0x7bb54cdf081c183d00383db3, + limb3: 0x1622e5e7517c5b00b926274b }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xde04268983a216758cdf0429, - limb1: 0x5b54aac12ddd25aec96f6341, - limb2: 0x52468abe4c4abb9ddcafb5d8, - limb3: 0x1705e672144d617a2f635516 + limb0: 0x4105a4c603388e46f901cb8e, + limb1: 0xc5a3d8508dcdcc3009795f5b, + limb2: 0xb7729b9a940d3153b997c312, + limb3: 0x1598d89934c2115f2c018a59 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb274123a5e440f2a2abc2feb, - limb1: 0x39ee53fab38ee6bbdc884882, - limb2: 0xfbf08dfc1e8ce661b070232, - limb3: 0x90c464cdeb44e57412c3030 + limb0: 0x996835b5a008ba4f3b56b2dc, + limb1: 0x858720bf478c93255e0fdd97, + limb2: 0xeed3afdc8bdf10035f0a3e0b, + limb3: 0x1913aaaa08c5a091560e141e }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xd1e8437d985832c4ca962ad6, - limb1: 0x590f0553fd81526e237d27a5, - limb2: 0xd4b61851bc93f41052a86b27, - limb3: 0x13910053fdcb5f950d1a4751 + limb0: 0x1cc471841c56e977e59c0651, + limb1: 0x116787e20c1825ec187e36e6, + limb2: 0x5189f8ee82dc420246304b3f, + limb3: 0x18ff781fb1b9976ea02eed49 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x73e7908df96d7fe911c7e5a2, - limb1: 0x4a37f9951cacf59a227d2d69, - limb2: 0xc990d497e9215a82dd448c3d, - limb3: 0x37442fd1d1d037fc63cfba2 + limb0: 0x8e05946fda04fe5939b2414b, + limb1: 0x86ab06c618b90390086d2a28, + limb2: 0xba72ded7a2ef71756fa44676, + limb3: 0x140bf82a10cc8a38689da2dc }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xfea57dfc616e4cb56c57c45f, - limb1: 0xd2e1ecc8c7f5e30b2edec417, - limb2: 0x3d7ad75ff91e64a296c1f37, - limb3: 0x143cde6c98c79d7c9cd02502 + limb0: 0x22196b49d3ec8eb739d077a, + limb1: 0x5972357496f58410fe22efa4, + limb2: 0x12f806c80c6e276db9347619, + limb3: 0xcf97a8c4730942aebfd4449 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x66470c2f2b4eae5db687b882, - limb1: 0xacb23253dbd0ad830cb4695a, - limb2: 0x6506decb18c61c5dded1f64f, - limb3: 0x6e5a5b7edf1471c89110b24 + limb0: 0xa30a984c70d30f21ae390d78, + limb1: 0x5df153a35a3a354ba5d15b49, + limb2: 0x813405d557c311c7fcfc587b, + limb3: 0xb2d8a60830625870fe339e2 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x704476bc0f9a232f9e18ba5, - limb1: 0xca80ca75e5a3eafba7e0b672, - limb2: 0x7f6939a8e727cd797bc8a49c, - limb3: 0x2276fb63f881523596ed9b5 + limb0: 0x34ad4b4f61b41ecbfd07c443, + limb1: 0xd139e591424d66bd83769ba2, + limb2: 0x421211676a2134ce607e22d1, + limb3: 0x8a74ce9bf78140277809c27 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x936eccaecd8d66c0352c0ffa, - limb1: 0xd787c174e06fda9b1e52a037, - limb2: 0xb697ce259d3273f2da3b29c7, - limb3: 0x1cc9de6a233de1bcbdd88ee + limb0: 0xbfde825274c6a88dc044823b, + limb1: 0xabde1302c0189597ab8524bf, + limb2: 0xd8ddbea882b9cdd1c77c1ce9, + limb3: 0x5d52ff363ffd54c3e4ee377 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x1391cb8c9370895e4176ee20, - limb1: 0x47a7a3f34652e59acd791bd2, - limb2: 0x865581875b9f6243e57f3bef, - limb3: 0x1023ed8e672748b826a96b2d + limb0: 0xbc3265bff3253ceefaf88e38, + limb1: 0x1ddb18daab6e24b87348b9ec, + limb2: 0xa188820e36202b3072cacf87, + limb3: 0x5981fa6cd3387635152c69 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x644af06e9ee32eefd6d9b2f5, - limb1: 0x58ec6547b0ec17f018c3ca4, - limb2: 0xcf6559928929ef333963412e, - limb3: 0x16aa6f8fd86886610966a8c0 + limb0: 0xab183e7ea65aa9e8d9ef726d, + limb1: 0x224810d01e50e0e98a545f59, + limb2: 0x82ce637ab408367e312e3486, + limb3: 0xfbcd919dba519cdc042a630 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x1c6c4a0c57b8562cc714475f, - limb1: 0x58436008136958b0538ce66a, - limb2: 0xcba193d8d5ab6961db9f62ad, - limb3: 0xa2b723b4f7d3cf99f8de749 + limb0: 0x3174297efcf700b50e95c337, + limb1: 0x6b7660d6e1cd1d0994292d2a, + limb2: 0x65d30566ba23597072b7b809, + limb3: 0x9d2c7202567336f7be24d1a }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x48f0d7493e3359303ad5cde3, - limb1: 0xe95f665e8170fa9bb3d86d72, - limb2: 0xd663cf90a9b4ba55532f8d1a, - limb3: 0xe24e7b32bcf38feffdcaa12 + limb0: 0x66e3e778986758c56de4a52c, + limb1: 0xd6bd6cc1e1b455feb414b33b, + limb2: 0x865451a180ec456498d189e1, + limb3: 0x3a47ea29caef704f0f91d9 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xdd2598182f47f0d1cb00a4fb, - limb1: 0xd0b69583fb7113e3cadcffbf, - limb2: 0xbaccd1f1b6648d01993d53dc, - limb3: 0xae567d1eee781c3c0f203ef + limb0: 0x38f5a4f506825fc9e37ea329, + limb1: 0x7e7c1b09a98493f5e2f0c19d, + limb2: 0x5d42e176dc15d506f4dd5b16, + limb3: 0x6119838912d71260ff0ef8d }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x7903f2ab5cdac44c07b6ca2e, - limb1: 0x2a87b81a11ea992699c1af76, - limb2: 0x9b845bf3bd585ee947f740c9, - limb3: 0x1212b99c5b5d40cfbfd9ca3f + limb0: 0x1baea5c83e52d170f4939106, + limb1: 0xc670f8881c3d397668e29d59, + limb2: 0xddb7950100fe389ed7f978fb, + limb3: 0xda69b32f59dd9292373632f }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc0bf14e5f3e60d885f21e2cd, - limb1: 0x9d5b304e4383d58e0a74c4a5, - limb2: 0xb91655521cde074f3294aea2, - limb3: 0x4ff85ec3b30c08f4512964 + limb0: 0xa89f8c323bb08a5ab46711a4, + limb1: 0x1333bb1310fae2bf86d19b51, + limb2: 0xbdf9887b2fb35059f6b245, + limb3: 0xa64a05f41253ed43aaf57bf }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x359828e1c2b9a46886441ddb, - limb1: 0xf202021de5077524e5bdf105, - limb2: 0xd0c14f0008d92c3a3ec510f1, - limb3: 0xb1219db19ccef2980b87345 + limb0: 0x50a08f04fa0fde22e80a073c, + limb1: 0xe32affda85b10d9078adce31, + limb2: 0xf18d4d83781c9b2cc6be7f88, + limb3: 0x14c23f8298ed92f7b4218b53 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xca892db42d3a3c0dab2d7b88, - limb1: 0xf2cc1640bfa79c6c4126e0ad, - limb2: 0xf5e23f74decf322aa1711e5b, - limb3: 0x14df66e05ac39e7c42dbbbdf + limb0: 0xcb5592a14153efb4f364fb26, + limb1: 0xf6f84cbdceb6cb95e18e748, + limb2: 0x4d9b3baba932b1d0baf13b74, + limb3: 0x536f9a75c9faf57ec2b6edd }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x69ed1fa216575cbf0d498b1b, - limb1: 0x37ac3a0c79be0bed312284e9, - limb2: 0x91f327d5c29c33ac2a82124e, - limb3: 0xaf9fb1ed3d4bc5e9cd91537 + limb0: 0xb19baa2b134bbaa73e28fc7a, + limb1: 0x667603f2203e9cb0bd6609e4, + limb2: 0x5cd6ea478ad243beb8cb15f2, + limb3: 0x17e36d2abdf3a4a004efb7bb }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x896b443573ffb3fe7a42af2e, - limb1: 0xc7bdb7e589ea88a6ee2b0dfb, - limb2: 0xe6431a8d940dad3dbb2ed87e, - limb3: 0x2c1aa4da0fb62af457d99df + limb0: 0x61f647476f52258e6dbee879, + limb1: 0xe84046f99aabe7ea5c58535a, + limb2: 0x5bde127ea9913955765a9453, + limb3: 0x35df867ea2b306915fbd889 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x2be0b97b52527c2d06cd0e5, - limb1: 0xde56a2fcf09efbdf9260c139, - limb2: 0xd2f176793e45c74e072bcf44, - limb3: 0x15df93574c8048345496f2e1 + limb0: 0x7d32d0ecc3f240a3cb4244a9, + limb1: 0x7e12df0c1261fd053abe66c2, + limb2: 0x27db05b7420c925de01e816, + limb3: 0x18650e88c382f60b28f849c0 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x5a354e1420425b07aff6a520, - limb1: 0x14a68e31ab79abc93b40d2be, - limb2: 0x396cf61dda0ca20bd4dafa37, - limb3: 0x131d1eb2ccc6c5ed728519f4 + limb0: 0x825149cd25ca051bd5914d45, + limb1: 0x848d3e567c9624db1dc823bc, + limb2: 0x65cc852e7f90f5de8c9c22ea, + limb3: 0x3330660fb9b679fdb140273 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x901a1a8db5173f0b30885e99, - limb1: 0x65ad6f17149d481fb292600d, - limb2: 0xfef8f85db26ef49d544d0e1, - limb3: 0xb461a51cbfdaf1d97ecad8f + limb0: 0xb5c96fa1ebe5be28a6688db2, + limb1: 0x42f40556de942b3c56d85342, + limb2: 0xc3229d78953f7a05dfc75aa6, + limb3: 0x18afb23c09c235d2ffdfc5ad }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xac3ecd06bea61c3feaacf648, - limb1: 0xb03977bda6fdad4798869d48, - limb2: 0xdbdcacf4185838c07171e93e, - limb3: 0x1555ee440bb082581790e156 + limb0: 0x6d2facfc47d6ccd35421458f, + limb1: 0x1ab5b58b56c1e3eb1c436af6, + limb2: 0x42dfa137bb51fff148551856, + limb3: 0x6087c5bd1de124d6ae028f1 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xe25d20ddfa2b9d10dfbc828, - limb1: 0x4a3cc88a2878017802b74f06, - limb2: 0x3683a51ba7bd5e39ec41b596, - limb3: 0xd7c6965acb27dddf691d49f + limb0: 0x6ced69221348cbc8b5b7c77b, + limb1: 0xc0aa988468fe68af6fced0ca, + limb2: 0x9b349ece3e6b6e5fe13df582, + limb3: 0xdae218951c88285d7f6253a }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xddb86fbf983910eac341f38d, - limb1: 0x98a8db0b97a37300a8f18702, - limb2: 0x4f12cf9aace3a91fbe5e3ad6, - limb3: 0x11d6d8c03a318fd0213bb4c1 + limb0: 0x3bbd3fddd15568ffab6960c, + limb1: 0x102abe5a1d08d463f507b3ff, + limb2: 0x2794f7e7d5b90da7632362d1, + limb3: 0x17656a07ee1ac3bb55b833b7 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x5f5f33f39ae8c10d2e06428c, - limb1: 0x6df082ef8bd516c65c7880f2, - limb2: 0xe3aca9dd8f6ddfe47f0a6493, - limb3: 0xc7aa4eb25c2877c14f48745 + limb0: 0x8cf3443030db366bb86809a1, + limb1: 0x6a72fa0c917e54ebabf94ae2, + limb2: 0x3bdf5f57774f2c7d358cba0e, + limb3: 0x18238ea01205cefc95453547 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xc128ede9f298ecfbe43ec842, - limb1: 0x6749f443471da794bd930b08, - limb2: 0x7ddf41c13724886a7324a75, - limb3: 0x6ddcc492d1182feba991098 + limb0: 0x2423e967137b7536c4d17f07, + limb1: 0x13e82c9152f898f4805d1da8, + limb2: 0xe7ac1ae3719b3ed55bd66a59, + limb3: 0x13ec53647e5cde4f0e523dc }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa7fca61454579c250ef75394, - limb1: 0x115576683ce2087fe23854b0, - limb2: 0x78534cde67bd73ef9af67b42, - limb3: 0x18cbeb6f7b8015009d0b37d3 + limb0: 0x7ab8580c959a57f3e2df22d8, + limb1: 0x427501beb82f8dc698f65f4b, + limb2: 0x608e19e3dc284018e8848b33, + limb3: 0x395418ede4b1612afe26005 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xd7bbba39741d2c3c577fc38d, - limb1: 0x448472c6527fafbac9cddaa0, - limb2: 0x4ae728b53d92a33b0d0e8e81, - limb3: 0x655c3ce60b10003c002c798 + limb0: 0x45d27023f9a693b11e739e56, + limb1: 0xf035f37217cfe043bd10f24e, + limb2: 0x1161d10360dce7237688edc1, + limb3: 0x1311acc656de18bdbbc8dcdd }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x4ed1bd222e211c38d1cc2b8a, - limb1: 0x1072dc018871a1fd35d59d4f, - limb2: 0xc7f806064fd0f5590895b171, - limb3: 0x13c7e454e3eba2f1ae9ff7a0 + limb0: 0xbafff5aacfff9b7d239c0918, + limb1: 0x22f82a9850a6d270217755e0, + limb2: 0x72ce36ec57009ed26f20843d, + limb3: 0x238f6fc96481cd115f7b4b7 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x380121baf1f2157efa25bdfd, - limb1: 0xaad3e7db46f3a2cd07cbc827, - limb2: 0x9518ea0eeea7ee1d673de0c3, - limb3: 0x847289f627762ffa35a09c4 + limb0: 0x1567026770004adeb36e98f7, + limb1: 0x5f8b495d32ec2e86374143c4, + limb2: 0xdb64b4beb78deee6edee965d, + limb3: 0x544aa0b1adf5e0a2d4887cb }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x80ae648fdf46b5044d3e59aa, - limb1: 0xeeedd58ab951be492f8d3af, - limb2: 0x692e58d2a9fef3e82320097b, - limb3: 0x896ec6d9feb13c011651d4e + limb0: 0x47d52d3f1e42f9ef6f02ebcf, + limb1: 0x158d8df966615e221ff93d74, + limb2: 0xab8b611331ebee5e669de2f1, + limb3: 0x162da62d43ab57f4a15cfec }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x3ead24d0c072b0fb0cfc1301, - limb1: 0x4158806f0ce2c348e9778bbe, - limb2: 0xebb73d474e9f45e7bc6a99ec, - limb3: 0xa3bdef571d37be2679ad2fb + limb0: 0xfc969801008e3bc079247803, + limb1: 0xd5ff102701a877e35be879ff, + limb2: 0x7fe7891f2a5317eeb87e237a, + limb3: 0x13214571502c8c2a7c671668 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x75089e8d885b0857a30cabff, - limb1: 0xb2eacd86bffb24d5b82b3f6e, - limb2: 0xe92981d436f1fe9d1016be2, - limb3: 0x6485401419bacd1f618a5ac + limb0: 0xd7421a259efbe435938adc51, + limb1: 0xfd227c7960ff4c8c6fd95a46, + limb2: 0x9a15a18019cc4179e4b47298, + limb3: 0x195b30dbf9aacaf1e41aee3e }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x67b53009019b001bfe37ea68, - limb1: 0x4b6b4f5effbcb84baf188f75, - limb2: 0xc71e61ff83d704bae933ba63, - limb3: 0x405e59b1ffe09fc81c8e49f + limb0: 0xee10c2565cf63e88ec519d1a, + limb1: 0x608f4f4854e59dc15b63baa5, + limb2: 0x28ef009fc5ce5d891314d477, + limb3: 0x1646de9b899a9e096f21cb30 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xd189b97abfb5e73e09bb1f0e, - limb1: 0xfe8918d3b69305e868c58760, - limb2: 0x2ad4d12c1c3046e2526e2b7d, - limb3: 0x35618457e67e8d54ae3f731 + limb0: 0x315f29484a493faabeb9f64e, + limb1: 0xe99954a3867df64f0e84371, + limb2: 0xd08a58a2624cd9faa79cc4fb, + limb3: 0x6f8dd486644fc57a5591991 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x36c30accd44d6945323c05d4, - limb1: 0xb9c9fb57160a642a85734f0a, - limb2: 0xfbba1440de85897e5eff21d0, - limb3: 0xcc4eea3cd30843e7bca7ef6 + limb0: 0x52212bcccdbbe8b6de0ab905, + limb1: 0x5f0a02f27d21286dba5f8721, + limb2: 0x31f89625739306fe2580d1f2, + limb3: 0xdc43dfbe33733b7e2956d2e }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x173c1ef94cee0a60f8b77448, - limb1: 0xc888322b074088b17a815aaf, - limb2: 0xd39d4b8fd747c0fa936e72c0, - limb3: 0x18244945f21aef5d9fd8e8c6 + limb0: 0xf9321b9bfaa2d3e7c9f50e83, + limb1: 0xd2098a8f83a173c4084f8e53, + limb2: 0xfd4f6ec28bbd2ce180e72522, + limb3: 0x177bd6afc540c9de1a7d940 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xd7374d19eacf4bef6bdb804d, - limb1: 0x267c2dd931b9be0899b82288, - limb2: 0x770192925aa96245aa541b56, - limb3: 0x178bf6da9d7efada64a45469 + limb0: 0x23b0d420d9c9eaac5b5091d5, + limb1: 0x2ad30e6b15eb33ac18dc7409, + limb2: 0x3f74ea5c82861edd749ad729, + limb3: 0xdc9b3c81ea5b602c607838e }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0x3b728491fc7a595c26615b28, - limb1: 0x45284849160e769058d8610e, - limb2: 0xa74f705c4bb456adf5923b75, - limb3: 0xa5a05a0967944f03c2438e9 + limb0: 0xb859bcdcfa033e4baa752391, + limb1: 0xa4ad79a939c27629ba010061, + limb2: 0x3fa62ae6a33f3cbd99b0cd2b, + limb3: 0x190acabb02e8c34bf1879496 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xcca3f645273a0e096494f4d2, - limb1: 0xce20f72741c57358d0653136, - limb2: 0x785c83db934e10abf16ea757, - limb3: 0x37dea1a1173f5e1be880fca + limb0: 0x67959e9b4ef37a6129847ef4, + limb1: 0x5f032dc3943dab8d5453f8a0, + limb2: 0xe61591d0aebe37a4c77b3a71, + limb3: 0xc2805f7d8bdfd39ae97c081 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xf1fedd278f45cb474247054, - limb1: 0x88f251a87c173aca07fb4aca, - limb2: 0xd7f991595ad0f2a6e3af4a29, - limb3: 0x17e4c7e3dbb25ac1f6aa98db + limb0: 0x289f842988b4b3a815bb0d7a, + limb1: 0x84e571afdf76c51a130a7b2e, + limb2: 0xd42094f1a600c35f66ffe7c, + limb3: 0x68fc04c762f27f55aa6de07 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x97d819d6624e67f3c5c9e804, - limb1: 0xfa9b1cd9a8d4c426564affe7, - limb2: 0x24190174021cc67e9b0ee0bb, - limb3: 0x12b9a40a1e1993f43e39ff22 + limb0: 0xba2f5fe1530aad7cf4aa3f62, + limb1: 0x415741daf6055523faac7c90, + limb2: 0x85196fe803bcc9f4e256cc93, + limb3: 0xa3d90ada97abccf302e34d5 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xce8aa21a34024c105aca9749, - limb1: 0x117bc3bc12484b59a31a68d2, - limb2: 0x8569f3aad250352cbae0c8fc, - limb3: 0x1391aa0a0555ca24fd4d016d + limb0: 0xa4910be14a3085d74ef62230, + limb1: 0x63cfa3cb97615707772ba716, + limb2: 0x2b7ca0bce12dd53b3d58238c, + limb3: 0x14e6ff93bd4722a9611d7c15 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x9335fa8801d55598ccce7527, - limb1: 0x18114c2c8c1fde2a4ce7860a, - limb2: 0x97dfbf4bf6d02122c879748d, - limb3: 0x16e6a00ae93fe90143b46427 + limb0: 0xdd8dfcf8ec028af7f5bfc435, + limb1: 0x2593ee3f68f94b8ec2566c0d, + limb2: 0xadd0663762911081744e482c, + limb3: 0xd8e605644ab8906638c3982 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa06659e815384e9179050e22, - limb1: 0xc0f47945da1509e10ea8d880, - limb2: 0x51241eb3d0f0014bd85f27f4, - limb3: 0x2c656e527179aac37515e28 + limb0: 0x591744cef2854ba597bd1a25, + limb1: 0x96c7474f0070800c74145cb9, + limb2: 0x236b3654a58d046bae3bc097, + limb3: 0xd45d7f62f903f525af22de2 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xce9ce5b63f0be5f174e31b99, - limb1: 0xe480609c9ff7b5e5e3ac88ba, - limb2: 0x9855c9e39e80da638f15cfc0, - limb3: 0xe96f5d0d90340a984e10029 + limb0: 0xdcda56c1874b99b2fa80d784, + limb1: 0x68794ef49bbd83664f2fcbbe, + limb2: 0x85a1a0a0d8a9e672b04da153, + limb3: 0x5b2eae2ca039959c3c2f566 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x466d85f4bb28321eedf579da, - limb1: 0x79e314beb44ba58a15455158, - limb2: 0x823ab7e02114950f81307923, - limb3: 0xb62f6b7c312fd891a8f078e + limb0: 0x385464edd6c0488febcaa287, + limb1: 0x95ea4adc58bc0649b3998462, + limb2: 0xd87694645a0d174db348a3dd, + limb3: 0x16e1cbdf95b50ff0ab493e19 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x35a829c037c4ef93e890bd51, - limb1: 0xd873defb56b0571b33c6d0c5, - limb2: 0xba03dbc32ec4d7cdc0bd73d1, - limb3: 0xc1a8d93bdbc3e7665ce506 + limb0: 0xfff402840b0a821c43855c77, + limb1: 0xe7b00bff15230fa87f62c0ba, + limb2: 0x4b586d858e030e99c9c4cc81, + limb3: 0x10f05dcb3e0736abb5c9c123 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x402ed2040b2a33f3fb59cbca, - limb1: 0x5ed86c5706600d45ec4e1fc, - limb2: 0xccb6f92bb9726849fd591fbc, - limb3: 0x4c521c63233f583f639dcf4 + limb0: 0x7843e43484514a6757cd7254, + limb1: 0x3e52a1a5480fdada334b7d47, + limb2: 0x91e7e3696e7e2e5b788033e7, + limb3: 0xa6172b9f0e980120bc96c12 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x73f427c3014ce0e5ce8be9d1, - limb1: 0xd19da638ab40494c9952476a, - limb2: 0xb1d8e99de22128de097a0a18, - limb3: 0x16d4825ff4fdc0f88c054028 + limb0: 0xeaf5003bf9fd4a0039713bb4, + limb1: 0xdc22995764d6bcea186a5b16, + limb2: 0x7b270db9cbeb91bc755298ce, + limb3: 0xf25f391274c6c690aafdc7f }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xf9446c181482e902fba23e2f, - limb1: 0x5666e84b8ce6909acb0d669b, - limb2: 0xb0766732bde4825d12af8a7c, - limb3: 0xd2b983c32ff6aeec8b69cd8 + limb0: 0xcb7cae46614384ae82e35b7, + limb1: 0x33b367ef2e4675c488931406, + limb2: 0xfcf6babe49ff9d1be117f532, + limb3: 0xa81f5a0041f373c1fddad92 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xc7a752fddd204d07f5c0c0dc, - limb1: 0xd0291344d2a5842df896934d, - limb2: 0x53b5e8212a299eba692ce65c, - limb3: 0x7d3fdcb2898551d4bbd2683 + limb0: 0xf216e99c6b6cce0f676e14e2, + limb1: 0xa660798fc7de3c7623cb782e, + limb2: 0x4f00460875a7b7328ac8ae9e, + limb3: 0x18cbc1fb83525ef244830dd5 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xe20d6035703ea0a4e6e61b3a, - limb1: 0x506282c83e12b8aa860fd37d, - limb2: 0xb50a651e63c6f4e8cc400153, - limb3: 0xc3c7a512aa1ffb87d8dd2b9 + limb0: 0xa8e39db17ea0d7e289ced5c4, + limb1: 0x777b85ca6a577c4684aa2cce, + limb2: 0x21a265c5600bad9b3fce0ea4, + limb3: 0x9dc87eeb2a28806d081830 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x39b97a197e084754d142ce14, - limb1: 0x15e2f429f78b25371301d6d6, - limb2: 0x223861ca7ed0b5a816d34392, - limb3: 0x889fed4a31ced273e2a4030 + limb0: 0xf8cc0989b193bc313a589185, + limb1: 0x1576bc0de39141404169db32, + limb2: 0xb363721d513ca47807627de3, + limb3: 0x12310cb856fbff08f7cb2af4 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x479db3aa4ccd36f1629647a0, - limb1: 0xa7cb8d939a7e59193f19edf9, - limb2: 0x351b227b835bf0a8f9d3838d, - limb3: 0x181d110f066c4689dab3add2 + limb0: 0x13a84ad4ae0395d4e1b51ebf, + limb1: 0x74d83adeb892c587c0e75990, + limb2: 0x1e936322dc03bd08c7cb52f7, + limb3: 0x285710837396e4a286ea2b9 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x66156fd45e7d36d5ca7dc5f4, - limb1: 0xd760f230081bd1584e22a510, - limb2: 0xe13a1dd827048233b869653, - limb3: 0xc58254868feb29c6d739393 + limb0: 0x7ce35be78bc35ed07f6a294e, + limb1: 0xcc9e0c2ac2fc41521a7fedd1, + limb2: 0x6ab501ed70c720f5ea86321, + limb3: 0x10f11fe22209eceff0e72526 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xe3302a6d3876a4bd623138ca, - limb1: 0xa4dccdb3df0501c23fd72482, - limb2: 0x7312fb1644642ad76d5b2b9a, - limb3: 0xb8c5652a4cda8e60c7b61ef + limb0: 0xd50d4134485d6bf115403567, + limb1: 0xa06fa5c940938af875344d8c, + limb2: 0xdb5a32bd04ef2923b1424105, + limb3: 0x5993bc710900f5b7ad2d838 }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0xf76d48166d82213c8aa75a29, - limb1: 0x96cdf72388ef30e38b342c9f, - limb2: 0xbac9c505255d9b445b426a11, - limb3: 0x2b0497cc8317cd4784bce72 + limb0: 0x134b6a6dce5ccd98a9080634, + limb1: 0xb049282cd61459f3958fa296, + limb2: 0xd26df4c0cae878084baf776e, + limb3: 0x19079907d76759e3766f09d5 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0x2d42886cf8a464682464f79a, - limb1: 0x1ce686a3b3f0039299caedd4, - limb2: 0xbc69961fb35633bd73a2631f, - limb3: 0x967f2ee0d0083a3364c8991 + limb0: 0x80968a26f0ea0a03468f662d, + limb1: 0x7c4ace0f3df1c7c4cbfe5731, + limb2: 0x966a096055885d30c87dc2a3, + limb3: 0x9b022d605e8e6b69cae4bc1 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0x9e505dead659cad512d65a2d, - limb1: 0x4364632b81a506d1e5a5f669, - limb2: 0x59e9e46cb3760d204ec7d03c, - limb3: 0x19ec76aa3ef52e91a7bc0a4 + limb0: 0xbd6517a4153e08d5013f3d57, + limb1: 0xcc72fcf0d5ae2ca34a398ff0, + limb2: 0x559bf5ed801dceedd0d2d2be, + limb3: 0x17eb378527b803a6662def91 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0xb82fc5c155984af7002e07dc, - limb1: 0xd760fed6a85793fc9a31c55d, - limb2: 0x3afada7fea5cdb0ac3f6170c, - limb3: 0x112707b3cb5d5a6f7e70bcc9 + limb0: 0x16d201dda52b073b55aa2b9d, + limb1: 0xd33b94c146f2f20ab33a27ea, + limb2: 0x57c2156e762f74f23e03c295, + limb3: 0xd27d383d049c2a49a71b00 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0xb967b3c8a4b1c7e2cf92740c, - limb1: 0x9a4bcea461d7f88ab2a26a49, - limb2: 0x9139957de1b1b7bb4b1e99fb, - limb3: 0xdae226d78e4f5d0ab3e0885 + limb0: 0x680224246439051193211059, + limb1: 0x91ff0eb4ceb7260926597806, + limb2: 0xe09d253a651f73010e292f87, + limb3: 0x59e6d6de53566193cb79826 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, E12D { w0: u384 { - limb0: 0xa952a8a5722bf6bd1cf770f8, - limb1: 0xf518c254eee89b584f4d3160, - limb2: 0xd48c968ed1b0580b10940232, - limb3: 0xe1253aeb8c8f47a75a92b73 + limb0: 0x57857f4b73a3b0b88b3ea013, + limb1: 0x37017ae0cc032222290de39a, + limb2: 0x2176e8f26554e0989e26f2cd, + limb3: 0x7e37dcbf972e6e4498ae07c }, w1: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w2: u384 { - limb0: 0x9efd10d1ada594be4fe13f5a, - limb1: 0xb4978a3127b7dfafd524d1d5, - limb2: 0x3ff18bf761bf81e2f6dc94ea, - limb3: 0xac44055a88b5699539fee01 + limb0: 0x6e873bcc1d8ba277a047d281, + limb1: 0xcbb9057ce4bf6554bfe40768, + limb2: 0xd381164ec87f16345d932e67, + limb3: 0x5f0ebff1fd81b1268466937 }, w3: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { - limb0: 0xb579cda48c9c47976e4a4f7, - limb1: 0x77972eef46b253bed1533722, - limb2: 0x40113941df7d67b559e39744, - limb3: 0xd2ec316c76b2f4e73a094c7 + limb0: 0x2508308cd5ffa5b9e30f9435, + limb1: 0x58bde2aa594812216e43136f, + limb2: 0xfbb5003277183c8247fce892, + limb3: 0x6d3ba15057b8c30fdb9dae3 }, w5: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { - limb0: 0xa4ea838e02172fd69e676bec, - limb1: 0x512619eab30e3dc24d3d05ce, - limb2: 0x6738cc2ad0de923ac2421a17, - limb3: 0x1389eae697d4dce49d19d7cc + limb0: 0x7d47d147f3d333dd63c42e37, + limb1: 0xef4296d9c6e4ad139e36923b, + limb2: 0x812a1278b1710cf5d783fd7e, + limb3: 0x8417cf42ed3da1c234e582 }, w7: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w8: u384 { - limb0: 0x36e7591c58d50a7eada6a8b8, - limb1: 0x8a1d8a694f95d10d9cc01989, - limb2: 0x59cf0a7f90d26a271552ccfe, - limb3: 0x433d10edf414cb316f3140b + limb0: 0x6d55a0068bf1f30e21485374, + limb1: 0x540e8d653531fbebce50f4a5, + limb2: 0x7c994cb9e959aecd4f2ad1dc, + limb3: 0x224bc69a4b3f0bd00cdd3d8 }, w9: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { - limb0: 0x74ecc85a423a4fcc1164379a, - limb1: 0x58ec19d9eb67b84cec885586, - limb2: 0xcb39bf1b57934dde0ee3b9fa, - limb3: 0x10858ca1b638e5fc7216f502 + limb0: 0x3223edf9efc18eb80998556d, + limb1: 0x43a7ef879bc76f96d774f86, + limb2: 0x367c93f98e678864d39394fc, + limb3: 0x19b84377a3b9951c1774fd92 }, w11: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, @@ -22270,276 +22265,276 @@ mod pairing_tests { .span(), big_Q: array![ u384 { - limb0: 0xa459150808f44e5b6ff9bfce, - limb1: 0x83c10291f5c57442ce646459, - limb2: 0xb4d126eaf2240878a5bc37a0, - limb3: 0x4ff9c82ae89714badf808eb + limb0: 0xe0d769b9d7c800a0b4029195, + limb1: 0x14b5f04639916fb071b5359, + limb2: 0x31d5da85142658797420b8be, + limb3: 0x11022870fd8b156c2d82a7f1 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xa38cbca35c694b12ba6db05e, - limb1: 0x50e666beaf5f0c851596db74, - limb2: 0x84564beadb6deb9b7c7dddd5, - limb3: 0x411b48658d03d7ba589f30 + limb0: 0x6754c60299bf9fe420d9a68a, + limb1: 0x6b66f29868f8236a73099d8e, + limb2: 0x6e1bebd5c1a3d0036ae4a6d7, + limb3: 0x5276c926c0c97a47b61456 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5b02863abe8ff7c5d583365b, - limb1: 0xd3c7e8661115609fb3144763, - limb2: 0xbd39b48bdf694f4659c34a03, - limb3: 0x173ee7515ad68b434d7dd59e + limb0: 0x59aa313838007a6efb797df0, + limb1: 0xbb59f32f5a43244363668e60, + limb2: 0x30bbff2fd3a4d5e65e7b8f4a, + limb3: 0x1700348e84fa5fd77af3739 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x7866356987c5d9d3e55a09a3, - limb1: 0x3806499841d9cc4aa8bb84bf, - limb2: 0x883bda42a2a3f76470a0af65, - limb3: 0x1390dd13890bf5235dab4a53 + limb0: 0xffc18e18e167c2e5d2f7d703, + limb1: 0x2bc637b93f5d6a81420f83fa, + limb2: 0xb3ef3d5cc8fa71c35e753aab, + limb3: 0x14db89e34b68fe18e40091f0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xc433e3084477645d3a74ef59, - limb1: 0xd906938b59fa90b0de777500, - limb2: 0xd35651c81b9cf861a5993932, - limb3: 0x2c2f3d033ac94f5a936a216 + limb0: 0x479692c126ce248036ac6674, + limb1: 0xc7fa578f6a9887efe112fb87, + limb2: 0x4401d374bf146079c796a902, + limb3: 0x16fc6052dc92ca9adf3334ba }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xe62b587034fc54acee853f18, - limb1: 0xac7637f0399ff5402071d0db, - limb2: 0x8d59108eb113e3a1434c1cef, - limb3: 0xe0a589c22fc87eb6b01e29f + limb0: 0x20769d967b1034597e060026, + limb1: 0x8a8241f334d016a4f9c6abd7, + limb2: 0xeaa73047366a82b91fb368f9, + limb3: 0xb9168e323220bb6ba483f26 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x411cdf025f3c1bc9687b000, - limb1: 0x4436311ca3bec769811da138, - limb2: 0x23c0d57a7114ba7222d3d51d, - limb3: 0x1379545d2dc447f35e1fd577 + limb0: 0xe56c014af9c371343baba2a, + limb1: 0xdef2f4171296ca3332aa4aef, + limb2: 0xb4f1539ade76e9c782245e59, + limb3: 0xc1a79ed8475258431d29aee }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xd4de8a51d8a77363efbab40f, - limb1: 0x970d05758f1d968841879f6b, - limb2: 0x31dd183824d91df234a1992e, - limb3: 0x9ee76062d5aef85fa05b4da + limb0: 0xb9a7e7394cc40015632278ce, + limb1: 0x5b65eff948afbc62d5691b0a, + limb2: 0xa16e631834b2e881f7d7f0fb, + limb3: 0x15d1ddce1c9fa1618cc51419 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x6cf07684a72c3b79538b5374, - limb1: 0xde6dd8f5c73a915b0af3d919, - limb2: 0x762e218bc7b63daf31befd12, - limb3: 0x7fca87f98e933becb685bd3 + limb0: 0x13186e9a039b67b15fcbb7a0, + limb1: 0x5126a0bf9dfcadc15c562040, + limb2: 0xf06e43e79da3420e69d16223, + limb3: 0x187753733c7d2a34762b7cc0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xf037e8eda77dcae66fd34e13, - limb1: 0xd28393328009befe08d6ccb1, - limb2: 0x25a0eeff6877b0b6d818733b, - limb3: 0x1333dd9c4910611ffc0bd783 + limb0: 0x872671381a9e22ba1443ffdb, + limb1: 0x9f787242967d5cfdc59c5885, + limb2: 0x5fb41de0cedeb00a69de2de4, + limb3: 0x635cbc93c10cfa2e7cb2bde }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x4b3fa7bd0f00febd6965774a, - limb1: 0x42391b93772e6c71c24de30d, - limb2: 0xf34bad8d8efe49f9e55ce3fb, - limb3: 0x191cc9153d814ece9bec3146 + limb0: 0x99f6a4b98ca1ce6baa7765ff, + limb1: 0x4d0473c45749c86ab7a5d29d, + limb2: 0xd630fb2ebc0d0f120908d6d, + limb3: 0x177ce0c1b47d02254acdd899 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5aa6916478c8cd1d33106074, - limb1: 0x34724d89963a98b90e4c0ffe, - limb2: 0xd982da438123bfed7fd94648, - limb3: 0x91b04f00ab2cf5189fd93a + limb0: 0x475a7925dd4cc4500137af6b, + limb1: 0x3e8b6336dc7ab1c58816370, + limb2: 0x881b8d563ff4526542d572c9, + limb3: 0x15da467747dc4afc1c874180 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x8e47e86544f1b885d5925119, - limb1: 0x79ee220df69d72df5959ff14, - limb2: 0xf72d8be103c8187eacbb8ee3, - limb3: 0x11668940d4f0088f58d82175 + limb0: 0x85bc6036946ebd977480d9bb, + limb1: 0x8ae6974930d35df4ad44fc2a, + limb2: 0x4472b2dae704141ae45fe9c, + limb3: 0x5ddd30502211d608b951d09 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xf2d0d59f12808472913ec3e4, - limb1: 0x835e591b962a93fcadb68f44, - limb2: 0xd48d48f6b7f714e4dd064e31, - limb3: 0x68c3f9860a2a4fdc77763da + limb0: 0xb4cdf77d7568766a8b7e48d2, + limb1: 0xfc1a73446092e9b82e80552b, + limb2: 0x9c09bf9353fbdfbace9e232a, + limb3: 0x931492387219b80c1aac4f8 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xc758d9c60869cb479fe22e0c, - limb1: 0x734fb9c667711daa3d349917, - limb2: 0xb86ad3fd3ba286c663059e44, - limb3: 0xe081e49d81ae6eaea7ea215 + limb0: 0xf6c3b32c40b45c076b1dcfc6, + limb1: 0x91d6fec59a67bf509e1de640, + limb2: 0xc4fd8b375a9659490c5a1f61, + limb3: 0x14d85ec07e2b137816bd7447 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x725a6211bc83c1004ed13fdc, - limb1: 0xe9782462f8cec2a60d9b4431, - limb2: 0xc3fcf90d4e0d70a6a3352294, - limb3: 0x103aee42a16e7b7a9c3138e6 + limb0: 0x60d1bb89bc4cf43df2db4fa1, + limb1: 0x2dbfb5732d5c272dff35bdc, + limb2: 0x580620f007c7ada7360c9a30, + limb3: 0x11ba8065507a7da06323bff0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xcea4e60b6b7dcce6ad4caf3d, - limb1: 0x42c2f00c9550e195b4802a9, - limb2: 0x92e5b6b8b2d5804964c92a63, - limb3: 0x16614e6fd9e1abc1bbd5149b + limb0: 0x7f6a8f6e8dfdce211d7a7697, + limb1: 0xa234457a21695902f9f2cfd, + limb2: 0xfdaaa4cd6546e8cf55b5bcde, + limb3: 0x12e98aecef4ee8f73e8cd33a }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x28556da9f82c47a28f81608, - limb1: 0xb8b6380443c4576d637c5bde, - limb2: 0xf91c4c5ec0b657046feaec31, - limb3: 0xf70cbda545f47afb3803927 + limb0: 0xd26fe941d1d160cfcbe021ed, + limb1: 0x60f70390af786c35c75c320, + limb2: 0xb46202bf111ab145709ff154, + limb3: 0xbff525bba731d1bdaacc635 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5bb6906a15a18e94bcac6c42, - limb1: 0x3b94e4104a37ee41f51da13c, - limb2: 0xf2ba424198b0822a792a6215, - limb3: 0x119301c21e38901d64d2f1dd + limb0: 0x55fb61b1e694937bf5ceabed, + limb1: 0x902e99d041d395506acf7209, + limb2: 0xd50aca3a3ecdbe7f9df02b8b, + limb3: 0xffd88eba6032105fc57e58 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x813d031f5301b4445ffc0a9b, - limb1: 0x3e6c1b50137435b428d772a2, - limb2: 0x5edb41992395bf4b2c9924c1, - limb3: 0x119784ce97fe385a1f114a14 + limb0: 0x19cd8182332f57b8ea35687, + limb1: 0x69fcfe6b01a9e0add332ca5b, + limb2: 0x396f3982433e2624f3a6f880, + limb3: 0x6489f5bd27c7ce23049ed52 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x8abca289e5b368055e7ad28e, - limb1: 0xf39cf7803fdd111d657e9c79, - limb2: 0x4811b46e5d823fb6e9333b7d, - limb3: 0xd74a0beedfad81682009672 + limb0: 0x6a4714f44b267134b7f4bc69, + limb1: 0xa43442bf03345f6c1936f050, + limb2: 0x4802990e967a56aa2fbb9116, + limb3: 0x19ce00d91c5a9e2646e3b96a }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xd308cd161fe4bbbe2326dd5b, - limb1: 0x77184e6cc92ad8ccea96b854, - limb2: 0xe81ea74e47065b6eeb6bf681, - limb3: 0x19b6383e44327dfd66d6dd0c + limb0: 0x587ac8f8651bc7a5033a0d89, + limb1: 0xc3dbd6582fe884d70b17af88, + limb2: 0x6e869cf3872c0e698d04631e, + limb3: 0x12b561437822dd79f22871a8 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x157d7f2caf2fc4debbde07df, - limb1: 0xff9cfd1c4887bf144c45fe24, - limb2: 0x91d5384e9f028bc3d8d9c8bc, - limb3: 0x17e0f248ebb083e5fa833b16 + limb0: 0x7dec68c5c511da1136456be2, + limb1: 0xa3ea5b4de08fe38d4d22698c, + limb2: 0x83e0f7abef59d055a8e2591e, + limb3: 0x16f429c475d91b2302819dd }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x96c85e459f313a6847e20cd6, - limb1: 0x9705e79312f8fffcf97bd8ad, - limb2: 0x6cc5d50fd3e5c27a4a2c2232, - limb3: 0xd0094a20543049acd1d07dd + limb0: 0x578bef0082be255482d5287d, + limb1: 0x1a69f85d4025a134f0872f4f, + limb2: 0xd488c49cff192a5c2c9ed395, + limb3: 0x54878d4bdfe8ba10b417c84 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x5c9741e869360a2c4d7f0fff, - limb1: 0xdc94cfdbbb623b1d2b9428f9, - limb2: 0xe2d972d72b2ae9ada9333b9b, - limb3: 0x150222b4137df488f7c98998 + limb0: 0x7607ba14130e207ae84c90b3, + limb1: 0xcf7db67e0fd1cdbcb67ea293, + limb2: 0xce21f5c827ed0b63683a86a1, + limb3: 0x93d235b4febde02666918a5 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x9a205fc798691ee04432aaf4, - limb1: 0x24340a377ce820c8395309f, - limb2: 0xd3f596431e7b1479befaabd9, - limb3: 0x1591bd7d91252804246a7db3 + limb0: 0xc4c28bc41486b95a0c091540, + limb1: 0x53fad4e71767076e277ae8c7, + limb2: 0x680cbd4864cecdf309ad3ea4, + limb3: 0x166b64fd9fcb1dc882ba8d6e }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xad0c3b52474fc374d5e2be1c, - limb1: 0x65a4cb7256226f53ec1a832c, - limb2: 0x1bc7e55d986013f041a126e1, - limb3: 0x1574fd0fdefcf2f1d9a659d0 + limb0: 0x756d568154f4fbd205367e61, + limb1: 0xa05aeb96541118b2c7d833bb, + limb2: 0x4636c3cb46a90c7e9b7ecdd3, + limb3: 0x7444b1d9ea23844d66de0b0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x2157ad41a9248044339b9e2e, - limb1: 0x2798a9b63b69ea00c1b8128c, - limb2: 0x5db227b813b99e64385da46c, - limb3: 0x1841c63d67a7b4e6b016c2f4 + limb0: 0x7930292c9986feba866df8dd, + limb1: 0x7c7ab0557e6231b4c4e3129, + limb2: 0x5f2179e484a745aa7d49b40c, + limb3: 0x16c60976d0f7a6a8a9053c32 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0xda0bd6468c784d5871d957ba, - limb1: 0x753af903f77a02a320e78746, - limb2: 0xfb0310994dfcc77798091d70, - limb3: 0x195727f8dc7054a16e9b2958 + limb0: 0x48dc15bdf55b39ea0806a9da, + limb1: 0x29483ce67f4e9f28d7908a0b, + limb2: 0x155bd1fd39cf30b93bad1fc, + limb3: 0x1072dfc9eaec6f1a9b2cb87e }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x585138ee004774fde4dc831b, - limb1: 0x9088abce25003999f5770cab, - limb2: 0x5ac214c999d4787e679aee8d, - limb3: 0x17262170a6401a74f4497dd5 + limb0: 0x8b0f92f604215f844db1b155, + limb1: 0xc1b915a24db3abe4457206f1, + limb2: 0xce2f5ad0a3a44e7c49be4e88, + limb3: 0x59b0a02eaaf3a96290afa30 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x19023011bc01dbaf92930ad3, - limb1: 0x16c024a30309b917870edfff, - limb2: 0x3d1d3da8b3d25ed724640df0, - limb3: 0xf20dd4786074f846bde7208 + limb0: 0xe7c364805f7c18f2e9dbea13, + limb1: 0x813d21446e7b170c9fd0c928, + limb2: 0xe669a971edba2c7aa9136cd3, + limb3: 0xd05bbd7877cc36034cd58d0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x6dbd69b4dd4a4d055a92de2d, - limb1: 0x771803b839007a8649ae617e, - limb2: 0x97359cc73298d40b82ca3be, - limb3: 0xa0b72781a549b525eda591a + limb0: 0x39883cdb58ac8bfe7e8c2527, + limb1: 0x9184297925f83a4965a8038d, + limb2: 0x789493f13941dd20a965b838, + limb3: 0xd809125e0884646becd5984 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x98660c6dba88adf28230bb5b, - limb1: 0x2fa67152a4be1c77b23ea55, - limb2: 0xd2d399316c0062fe1b4ed877, - limb3: 0x196c0ac6d467a1b8e21fc7f + limb0: 0x8706fc0c43117df79808a3e5, + limb1: 0x93f6598a60026e25a0189465, + limb2: 0xdcd099a906e7142beb822ed5, + limb3: 0xc054be08eec23f094ba1324 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x876a60bd790cd167e33d181a, - limb1: 0x87947e52e4bebdb3ecffd42a, - limb2: 0xf6b511ebd704e20379de102e, - limb3: 0x173ccd50eb01369d3df16d8c + limb0: 0xa50089977afb97bc24568ed3, + limb1: 0xac0c7b138d4027edc997e147, + limb2: 0x4cb942db0707293074682669, + limb3: 0x12032ae8058be7d16e27c019 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x898d5d1af20d0aeb4f9d3fbc, - limb1: 0x4b611236fc2f32e0e1348693, - limb2: 0x7362d52bc9cb5b2e31de0fcb, - limb3: 0xf755840fb009a75d5194d58 + limb0: 0x7b05b9edd0334fac735c5750, + limb1: 0x71a09c7482a802f418477a1f, + limb2: 0xe351fa0a875ebf77cd64145e, + limb3: 0x740a458ac534013b7a5a72d }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x7704983b1268cf97bbff3e6d, - limb1: 0x679395e0970ee0403a16095, - limb2: 0x54f27f8ac6d6bd7e1040012, - limb3: 0x19a34fbd6e9f83b5934c3bfa + limb0: 0x4f6faf7716dd4d56cdeabdf5, + limb1: 0x5d3bef725b405cf8e88a04ca, + limb2: 0x590314ec4e725e832be8a946, + limb3: 0xa57d233b0dc202c2a14b649 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x91bba02a107313835a0bcf7d, - limb1: 0xeaf4792cf174a3261988005d, - limb2: 0x953ed159e79716f7315ea826, - limb3: 0x520e2ae0c8ac8742b902c93 + limb0: 0xf687f9d64b1cf62a966ccbee, + limb1: 0x638353d32913a355d84112cc, + limb2: 0xd3edcc632978139b403ab9f0, + limb3: 0x10be0de95c88a07cf95ab1ba }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x627a5ce9c3e08178e5725357, - limb1: 0xacd88ff16b02ca24944e1448, - limb2: 0x879a706c04b026f04b1c9b44, - limb3: 0xe98ef19506967521f23bbbb + limb0: 0x6bfa0d62bfe9ee7912d086f5, + limb1: 0x82a1845db3d7ef17d5d66cb7, + limb2: 0xcf94cabf7a4e3bff6a64ad2, + limb3: 0x10f19d1cc739af313dea54b5 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { - limb0: 0x9d743e75c450f48485765b40, - limb1: 0xa8a13deaa4bb90da1711237a, - limb2: 0xc4a9e65a2b025eb866ae2416, - limb3: 0x12fd1ac880ede5643d9f1cf2 + limb0: 0x8b2d55855e730cda4f792e7, + limb1: 0xe560d4f917a5b97d2eac3140, + limb2: 0xd2180093dac0682bea80aa2b, + limb3: 0x3c425ee703ba837622bd016 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, @@ -22557,3738 +22552,3738 @@ mod pairing_tests { let pair0: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0x8eb86e4fc1c18ef0959434a7, - limb1: 0xa449ca0f30864fadcb625b1f, - limb2: 0xe95b4f2b2143c26321f31cb6, - limb3: 0x1913c7a52c05e9c5f601a39 + limb0: 0xd57f5c6faa6b7b91aee3d411, + limb1: 0xa3ca76748b7c9cac10144464, + limb2: 0x46dfa519e66746960ea2d222, + limb3: 0x7d776334825cc7b41610a45 }, y: u384 { - limb0: 0xffc54602ad53b7f4e555c01, - limb1: 0xf22d502650c277c42a3e396e, - limb2: 0x3bd6af057d0abf09f16cb25f, - limb3: 0x10c131c164ee9345d1c0d778 + limb0: 0xbdea2cc87c7d8172962cabc3, + limb1: 0xefdd816d6c27c8582c99e293, + limb2: 0x7f7d62c357a17ef96e518b21, + limb3: 0xea903f281282aee9a39ebba } }, q: G2Point { x0: u384 { - limb0: 0xe51b458ac8965e63f51c2148, - limb1: 0xec629db6f738661fad223712, - limb2: 0xbf9b0f239f0f29a935d7c324, - limb3: 0xba91ecc05f2ee51299e1e9d + limb0: 0xce1c178f17c4edcdc1b8621a, + limb1: 0xf8d9ee912a70cc5eb32bde00, + limb2: 0x3c62799045dbc6079ad752b, + limb3: 0x15ef183119a6c96ffb87a23c }, x1: u384 { - limb0: 0xf0a0d1c218d10e5fb61e30a, - limb1: 0xdd506389cd99db62b1b03c8e, - limb2: 0x4402000a6a980f3009d0404e, - limb3: 0xf2b3e7a259f50ddfb585652 + limb0: 0x30fb4cd9f33ef2f5d524d0a2, + limb1: 0x77c902c9b0d953efe4e470b1, + limb2: 0x1c132e7c2b8b1f3e6be2fb56, + limb3: 0x433fb93711c6e05ee997385 }, y0: u384 { - limb0: 0xbc0be49fa928cf4c6b2d5918, - limb1: 0xbf8adf44955174fb78d31f0d, - limb2: 0xae96a4b13e420f373ee5cf76, - limb3: 0xca7c685a8adbfb3116d1481 + limb0: 0xd7c589d352fa17cae59bfd97, + limb1: 0x56499ec187765b833d40063f, + limb2: 0x755412b531d477a7fe9b453b, + limb3: 0x110df890cda301440e69e58d }, y1: u384 { - limb0: 0xc7fe50493b9a3b528a579482, - limb1: 0x760e5d880d8a95ba37663ea1, - limb2: 0xa0a1a6afe65ad80e552eb8e9, - limb3: 0x11bfecf6bc3629e90fd1224f + limb0: 0xb0328b81930386f66db05ee4, + limb1: 0xe5aab9ef8f982b82a7565c2b, + limb2: 0x916bbdddfd22de41445ba513, + limb3: 0x19b1edac961e1056b535db2f } } }; let pair1: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0x8eb86e4fc1c18ef0959434a7, - limb1: 0xa449ca0f30864fadcb625b1f, - limb2: 0xe95b4f2b2143c26321f31cb6, - limb3: 0x1913c7a52c05e9c5f601a39 + limb0: 0xd57f5c6faa6b7b91aee3d411, + limb1: 0xa3ca76748b7c9cac10144464, + limb2: 0x46dfa519e66746960ea2d222, + limb3: 0x7d776334825cc7b41610a45 }, y: u384 { - limb0: 0xffc54602ad53b7f4e555c01, - limb1: 0xf22d502650c277c42a3e396e, - limb2: 0x3bd6af057d0abf09f16cb25f, - limb3: 0x10c131c164ee9345d1c0d778 + limb0: 0xbdea2cc87c7d8172962cabc3, + limb1: 0xefdd816d6c27c8582c99e293, + limb2: 0x7f7d62c357a17ef96e518b21, + limb3: 0xea903f281282aee9a39ebba } }, q: G2Point { x0: u384 { - limb0: 0xe51b458ac8965e63f51c2148, - limb1: 0xec629db6f738661fad223712, - limb2: 0xbf9b0f239f0f29a935d7c324, - limb3: 0xba91ecc05f2ee51299e1e9d + limb0: 0xce1c178f17c4edcdc1b8621a, + limb1: 0xf8d9ee912a70cc5eb32bde00, + limb2: 0x3c62799045dbc6079ad752b, + limb3: 0x15ef183119a6c96ffb87a23c }, x1: u384 { - limb0: 0xf0a0d1c218d10e5fb61e30a, - limb1: 0xdd506389cd99db62b1b03c8e, - limb2: 0x4402000a6a980f3009d0404e, - limb3: 0xf2b3e7a259f50ddfb585652 + limb0: 0x30fb4cd9f33ef2f5d524d0a2, + limb1: 0x77c902c9b0d953efe4e470b1, + limb2: 0x1c132e7c2b8b1f3e6be2fb56, + limb3: 0x433fb93711c6e05ee997385 }, y0: u384 { - limb0: 0xbc0be49fa928cf4c6b2d5918, - limb1: 0xbf8adf44955174fb78d31f0d, - limb2: 0xae96a4b13e420f373ee5cf76, - limb3: 0xca7c685a8adbfb3116d1481 + limb0: 0xd7c589d352fa17cae59bfd97, + limb1: 0x56499ec187765b833d40063f, + limb2: 0x755412b531d477a7fe9b453b, + limb3: 0x110df890cda301440e69e58d }, y1: u384 { - limb0: 0xc7fe50493b9a3b528a579482, - limb1: 0x760e5d880d8a95ba37663ea1, - limb2: 0xa0a1a6afe65ad80e552eb8e9, - limb3: 0x11bfecf6bc3629e90fd1224f + limb0: 0xb0328b81930386f66db05ee4, + limb1: 0xe5aab9ef8f982b82a7565c2b, + limb2: 0x916bbdddfd22de41445ba513, + limb3: 0x19b1edac961e1056b535db2f } } }; let pair2: G1G2Pair = G1G2Pair { p: G1Point { x: u384 { - limb0: 0x8eb86e4fc1c18ef0959434a7, - limb1: 0xa449ca0f30864fadcb625b1f, - limb2: 0xe95b4f2b2143c26321f31cb6, - limb3: 0x1913c7a52c05e9c5f601a39 + limb0: 0xd57f5c6faa6b7b91aee3d411, + limb1: 0xa3ca76748b7c9cac10144464, + limb2: 0x46dfa519e66746960ea2d222, + limb3: 0x7d776334825cc7b41610a45 }, y: u384 { - limb0: 0xffc54602ad53b7f4e555c01, - limb1: 0xf22d502650c277c42a3e396e, - limb2: 0x3bd6af057d0abf09f16cb25f, - limb3: 0x10c131c164ee9345d1c0d778 + limb0: 0xbdea2cc87c7d8172962cabc3, + limb1: 0xefdd816d6c27c8582c99e293, + limb2: 0x7f7d62c357a17ef96e518b21, + limb3: 0xea903f281282aee9a39ebba } }, q: G2Point { x0: u384 { - limb0: 0xe51b458ac8965e63f51c2148, - limb1: 0xec629db6f738661fad223712, - limb2: 0xbf9b0f239f0f29a935d7c324, - limb3: 0xba91ecc05f2ee51299e1e9d + limb0: 0xce1c178f17c4edcdc1b8621a, + limb1: 0xf8d9ee912a70cc5eb32bde00, + limb2: 0x3c62799045dbc6079ad752b, + limb3: 0x15ef183119a6c96ffb87a23c }, x1: u384 { - limb0: 0xf0a0d1c218d10e5fb61e30a, - limb1: 0xdd506389cd99db62b1b03c8e, - limb2: 0x4402000a6a980f3009d0404e, - limb3: 0xf2b3e7a259f50ddfb585652 + limb0: 0x30fb4cd9f33ef2f5d524d0a2, + limb1: 0x77c902c9b0d953efe4e470b1, + limb2: 0x1c132e7c2b8b1f3e6be2fb56, + limb3: 0x433fb93711c6e05ee997385 }, y0: u384 { - limb0: 0xbc0be49fa928cf4c6b2d5918, - limb1: 0xbf8adf44955174fb78d31f0d, - limb2: 0xae96a4b13e420f373ee5cf76, - limb3: 0xca7c685a8adbfb3116d1481 + limb0: 0xd7c589d352fa17cae59bfd97, + limb1: 0x56499ec187765b833d40063f, + limb2: 0x755412b531d477a7fe9b453b, + limb3: 0x110df890cda301440e69e58d }, y1: u384 { - limb0: 0xc7fe50493b9a3b528a579482, - limb1: 0x760e5d880d8a95ba37663ea1, - limb2: 0xa0a1a6afe65ad80e552eb8e9, - limb3: 0x11bfecf6bc3629e90fd1224f + limb0: 0xb0328b81930386f66db05ee4, + limb1: 0xe5aab9ef8f982b82a7565c2b, + limb2: 0x916bbdddfd22de41445ba513, + limb3: 0x19b1edac961e1056b535db2f } } }; let precomputed_miller_loop_result = E12D { w0: u384 { - limb0: 0x54c8b5748a1a44a237a89745, - limb1: 0x6cfe52d9c0a5b520baf3a2d6, - limb2: 0x525591da81183013d5212ae6, - limb3: 0x933f097bcf06093d0313fa2 + limb0: 0xeba179f6752ae3487c17fe76, + limb1: 0x427aec34941cd762dee8ee2a, + limb2: 0x51d1e6cd2edf652154ab0bbf, + limb3: 0x17ed9eba9a4d94f7f71a6437 }, w1: u384 { - limb0: 0x2773c8e35d9d002856f04c4d, - limb1: 0x560f2dbcf1d19a58d8482b58, - limb2: 0xe71150cfb480d05ffd6b942d, - limb3: 0xa48c53181bfe85120ce69e4 + limb0: 0x21276fe4e9ed01c1bf9def83, + limb1: 0x1c1c21947a6b1861ab29cfb7, + limb2: 0xc09f19e0dcf0a8c4067d7f0a, + limb3: 0x59099d73255b322a9ccc08f }, w2: u384 { - limb0: 0xe300dcb91e68397a7d0eff6c, - limb1: 0x65ee758a97e550c9c3165bb, - limb2: 0xc228c949aa52677863595941, - limb3: 0x18037c3efd31c9abd3006f1e + limb0: 0xdcae6cab9d20983a14070473, + limb1: 0xd2677838cd383457e3c327b2, + limb2: 0xcb60f4d3a8efaa2b13a54f70, + limb3: 0x1aa1ffc5fc03133f1d4468e }, w3: u384 { - limb0: 0x662ead67ba8a3164b869afd6, - limb1: 0xccd0b84c1e0f19cdb64c66dd, - limb2: 0xbb8433b67e191e53bac88472, - limb3: 0x8d84dd99b5d12dc58e20d70 + limb0: 0x342824953c81273eb5efe0cb, + limb1: 0xb8bbf34446e5778af563d217, + limb2: 0x8eafa818fa361b808e0a3749, + limb3: 0x6085fb1d382b7981155a5df }, w4: u384 { - limb0: 0xa044c60c58af79fc268c3eac, - limb1: 0xa564b65f7aa49adc063edce, - limb2: 0x25927e601f4966527ce92138, - limb3: 0x1989141322072a1d4f7d00b5 + limb0: 0x4598d7bf01cf2577d6a17027, + limb1: 0x1836ed0dcd8770b4fc432207, + limb2: 0x9bb255b0f194561312478230, + limb3: 0x409e29b415beaf21190ceb }, w5: u384 { - limb0: 0xee23bc8c7d5e581d88a1a384, - limb1: 0x87111c3c7ea0da5547baae5d, - limb2: 0x6dbfc223853f0109dcec243e, - limb3: 0x12ab7378706c94f03a18844b + limb0: 0x85c822d102f0824243736405, + limb1: 0x6a3cb76f73600ac10e64d3d2, + limb2: 0x9034d3217a6228d940e64c2a, + limb3: 0xe6215bcbe003cd569056526 }, w6: u384 { - limb0: 0xaa8986bfc33351d8a72eda0e, - limb1: 0x8cdf6cd7f649255f075d764e, - limb2: 0x8449bd9961dfd0db822b1829, - limb3: 0x901ecfef3707830da8444da + limb0: 0x3c312210efff02972467048d, + limb1: 0x935c00f1d99971416822e056, + limb2: 0xb6d8972fc98a2ad8d37d7f9e, + limb3: 0x1c6de96a83a169d28a8347a }, w7: u384 { - limb0: 0x1bca446c920b62132401851e, - limb1: 0xc05a7fc64274a4aaebff1f80, - limb2: 0x3c0e5877cbef493ade928852, - limb3: 0x14bf65e774c223f22a29d63b + limb0: 0x951644b420bf60f1dfb2444e, + limb1: 0xdf5ada21ef332fce2b2acbe7, + limb2: 0xfa3265de90109d3e5fc23cb0, + limb3: 0x23d82b793bb667b8f107a38 }, w8: u384 { - limb0: 0x209afa0cf1d87626b2e7ba0a, - limb1: 0x2899fe054ea5d91e2aef9ef0, - limb2: 0xaef792ab8084868026d3fac8, - limb3: 0xbfa324379a021d3e2606155 + limb0: 0x7067345b0210197d147404c1, + limb1: 0x37f0345731cf9f11b206da9, + limb2: 0x11bc44715f487dccb654dd4c, + limb3: 0x4b9ad2616f6468afb6a163c }, w9: u384 { - limb0: 0xc14b125b23a5c6bee24f57d8, - limb1: 0x2cc51f82e234283d9860ab3, - limb2: 0x1032b547ef9d692262693f6d, - limb3: 0x151ae9cf46f24a336665daba + limb0: 0xb461e5bcefe27a7915f41c5f, + limb1: 0xb336212f6d495ef23b207b21, + limb2: 0x478c0292c1e8dbc667ab0a05, + limb3: 0x111b6b81d96f2a123a0bb978 }, w10: u384 { - limb0: 0xfe6062d1c8dacd51575bb2d7, - limb1: 0x6052ac60073b2e85a036082e, - limb2: 0x349c2cf1479f953b02f8ecdb, - limb3: 0x8e7bac45f84b5c1f6795970 + limb0: 0xdff51429d74fe16928334b52, + limb1: 0xecbd39755999046174ca9a41, + limb2: 0x243213049a3d0be5dda52911, + limb3: 0x17459f7bfe5f54bc7458ec42 }, w11: u384 { - limb0: 0x4f5e519175d97410051aa4f1, - limb1: 0xb4c72819ad5f4d14a0ce0266, - limb2: 0x9dd5693928982dcbfb3a9b88, - limb3: 0xc46a6d115d778b6029fd5b4 + limb0: 0xc9bc7c8a895d362344b483ba, + limb1: 0xda77bd46afceb7bf63b08d02, + limb2: 0x9441e0596c0ed5fcc32c5628, + limb3: 0x1043b4482a7b8e8f625e6e8a } }; let lines = array![ G2Line { r0a0: u384 { - limb0: 0x9ef036a15eee44aee1da058a, - limb1: 0x6cad56ccc4283c2d35da7076, - limb2: 0x3ffcf775d7bf05e891f0d76b, - limb3: 0x11e7d8173c94af2ebd73ece1 + limb0: 0x7838d88fb10582ae234dbf82, + limb1: 0x2afe4e1ed10275812604bad0, + limb2: 0x706ec7cfd05644bc0b36e9ed, + limb3: 0x25d2b4a340b1cdd42ca9bdb }, r0a1: u384 { - limb0: 0x3a179f98aee20a16e5c028e, - limb1: 0xc7f438239a59aa624aa73605, - limb2: 0x7fc90d6b833bc309114da77c, - limb3: 0x9c772c3fe4c322e139cf1c3 + limb0: 0x55eb081fd9b9ac6777197ec5, + limb1: 0x362786a12556753f404477ab, + limb2: 0xe2bedaeba74904cc08e2f33a, + limb3: 0x1596b1c5aa61ce00a5f497aa }, r1a0: u384 { - limb0: 0xa45eeac1140e4e953e8def5c, - limb1: 0xc60fdf42a027ec448dc2bc20, - limb2: 0xc2114ff2fdb603c1ca3ef690, - limb3: 0x138795250f7ddfa07d9e605d + limb0: 0xf4501577c9d50d745b7e57ba, + limb1: 0x3123adc07593daff2ccf1113, + limb2: 0x794ea9569cc5b8e18440540f, + limb3: 0x6d3881ec00e712803b5a831 }, r1a1: u384 { - limb0: 0xe55ee50cc05f951997852380, - limb1: 0x744b9043371f800efef96a6a, - limb2: 0x9335444681a81002ec84c2a8, - limb3: 0x178d2593554b010348dc145b + limb0: 0x8d6d8e0b27870d1bd6e79b5c, + limb1: 0x8de9308eadbadd3b4cee8a8d, + limb2: 0x5617ec9fc88e5037e43289a1, + limb3: 0x5d253cd3aadabdcf510e0c9 } }, G2Line { r0a0: u384 { - limb0: 0x5e66e70f0c4e4d667832a4f3, - limb1: 0x96441f53f6fe229680022092, - limb2: 0xa88cb3653925997a2cb57290, - limb3: 0x18c4a4592f62341e26c16048 + limb0: 0x7e9763d47e79d435cd0a23ba, + limb1: 0x96a761a8fdfa6d1c741c04ba, + limb2: 0x3f245e8ebff4d912c0febd69, + limb3: 0x160a2f414fb7c2651868de9f }, r0a1: u384 { - limb0: 0x8a2577faf81374e92dcc559, - limb1: 0x4de83dba8e3baf591fe051d6, - limb2: 0xb4016c403ce628025470eede, - limb3: 0x974c1b3d539501cebdb6e10 + limb0: 0xc38b3ab9f3dfab7faaf80b40, + limb1: 0xad49ed09ed3933f1e51c4349, + limb2: 0xd24b15e4f30096ed0a1459b0, + limb3: 0x16aef89ba35c4cb502e034a1 }, r1a0: u384 { - limb0: 0x29cf99080fba03664e238d7d, - limb1: 0xba3b6fd5b264a1d51ebb1ea3, - limb2: 0x56a416f74f90f493acd5b2eb, - limb3: 0x6cd409e3e316da9de055f7d + limb0: 0x9d609046fb4d3bf09acf9613, + limb1: 0xe3f2b35132bcc4e3c12bb7b3, + limb2: 0x951d270ce6419c40be4cbff8, + limb3: 0x1241c70f365975bd0b057ce9 }, r1a1: u384 { - limb0: 0xf579c6da995c03470886f2cc, - limb1: 0x79282cbe7ed8c943f620b10b, - limb2: 0x33143c3ceb78de1fe2fb2f57, - limb3: 0xa6ee667dd456f3a9a18829 + limb0: 0x358a2dd384946e0ca093a11a, + limb1: 0xce16eeafe5e59e8495f9bcf2, + limb2: 0x47b5514a2edfad2fd965ebd5, + limb3: 0x59d46bccc9fb91ffee76168 } }, G2Line { r0a0: u384 { - limb0: 0x9ef036a15eee44aee1da058a, - limb1: 0x6cad56ccc4283c2d35da7076, - limb2: 0x3ffcf775d7bf05e891f0d76b, - limb3: 0x11e7d8173c94af2ebd73ece1 + limb0: 0x7838d88fb10582ae234dbf82, + limb1: 0x2afe4e1ed10275812604bad0, + limb2: 0x706ec7cfd05644bc0b36e9ed, + limb3: 0x25d2b4a340b1cdd42ca9bdb }, r0a1: u384 { - limb0: 0x3a179f98aee20a16e5c028e, - limb1: 0xc7f438239a59aa624aa73605, - limb2: 0x7fc90d6b833bc309114da77c, - limb3: 0x9c772c3fe4c322e139cf1c3 + limb0: 0x55eb081fd9b9ac6777197ec5, + limb1: 0x362786a12556753f404477ab, + limb2: 0xe2bedaeba74904cc08e2f33a, + limb3: 0x1596b1c5aa61ce00a5f497aa }, r1a0: u384 { - limb0: 0xa45eeac1140e4e953e8def5c, - limb1: 0xc60fdf42a027ec448dc2bc20, - limb2: 0xc2114ff2fdb603c1ca3ef690, - limb3: 0x138795250f7ddfa07d9e605d + limb0: 0xf4501577c9d50d745b7e57ba, + limb1: 0x3123adc07593daff2ccf1113, + limb2: 0x794ea9569cc5b8e18440540f, + limb3: 0x6d3881ec00e712803b5a831 }, r1a1: u384 { - limb0: 0xe55ee50cc05f951997852380, - limb1: 0x744b9043371f800efef96a6a, - limb2: 0x9335444681a81002ec84c2a8, - limb3: 0x178d2593554b010348dc145b + limb0: 0x8d6d8e0b27870d1bd6e79b5c, + limb1: 0x8de9308eadbadd3b4cee8a8d, + limb2: 0x5617ec9fc88e5037e43289a1, + limb3: 0x5d253cd3aadabdcf510e0c9 } }, G2Line { r0a0: u384 { - limb0: 0x5e66e70f0c4e4d667832a4f3, - limb1: 0x96441f53f6fe229680022092, - limb2: 0xa88cb3653925997a2cb57290, - limb3: 0x18c4a4592f62341e26c16048 + limb0: 0x7e9763d47e79d435cd0a23ba, + limb1: 0x96a761a8fdfa6d1c741c04ba, + limb2: 0x3f245e8ebff4d912c0febd69, + limb3: 0x160a2f414fb7c2651868de9f }, r0a1: u384 { - limb0: 0x8a2577faf81374e92dcc559, - limb1: 0x4de83dba8e3baf591fe051d6, - limb2: 0xb4016c403ce628025470eede, - limb3: 0x974c1b3d539501cebdb6e10 + limb0: 0xc38b3ab9f3dfab7faaf80b40, + limb1: 0xad49ed09ed3933f1e51c4349, + limb2: 0xd24b15e4f30096ed0a1459b0, + limb3: 0x16aef89ba35c4cb502e034a1 }, r1a0: u384 { - limb0: 0x29cf99080fba03664e238d7d, - limb1: 0xba3b6fd5b264a1d51ebb1ea3, - limb2: 0x56a416f74f90f493acd5b2eb, - limb3: 0x6cd409e3e316da9de055f7d + limb0: 0x9d609046fb4d3bf09acf9613, + limb1: 0xe3f2b35132bcc4e3c12bb7b3, + limb2: 0x951d270ce6419c40be4cbff8, + limb3: 0x1241c70f365975bd0b057ce9 }, r1a1: u384 { - limb0: 0xf579c6da995c03470886f2cc, - limb1: 0x79282cbe7ed8c943f620b10b, - limb2: 0x33143c3ceb78de1fe2fb2f57, - limb3: 0xa6ee667dd456f3a9a18829 + limb0: 0x358a2dd384946e0ca093a11a, + limb1: 0xce16eeafe5e59e8495f9bcf2, + limb2: 0x47b5514a2edfad2fd965ebd5, + limb3: 0x59d46bccc9fb91ffee76168 } }, G2Line { r0a0: u384 { - limb0: 0xbb14322e24c6d24daace8107, - limb1: 0x4e1ed9df9ae593dfbb85161b, - limb2: 0x81b554ea43c71b58a13bc1b8, - limb3: 0x1305967c90c0c5fa75f91f80 + limb0: 0x71c338bbe6749f3a0c794e3b, + limb1: 0xd60036ee7e00e1bc1daaa28c, + limb2: 0x80c9c29a1c9cd39071a76a73, + limb3: 0x1691a74f3c611d47565bab81 }, r0a1: u384 { - limb0: 0xa81d2bc2a40ae2aae3022f49, - limb1: 0xe0177573d7c202cb9cfd0e68, - limb2: 0x117cd9436be1ebbe04a80fd9, - limb3: 0x629b6e0172d6d5cfeadbaa7 + limb0: 0x3739ddaa1c4ac1cd71676f44, + limb1: 0x6cdae549a2e3b9e74bed6617, + limb2: 0x6d82ae923a587e458bf9e071, + limb3: 0x5bd8b1ae5478de8f7960475 }, r1a0: u384 { - limb0: 0xcd34116f1c1b89b4a0a65d1e, - limb1: 0x243fd6a81db05f14fe4322a3, - limb2: 0x7cc13ef4a0d4ca85442d25ce, - limb3: 0x10f7f539127809eda12b87f7 + limb0: 0xe7b8e10907491c1b869cc6e6, + limb1: 0x8cfdeb806efb1538850097ce, + limb2: 0xe136cf799d4ca7d8af88b264, + limb3: 0xe94a1681636bf224e4b0691 }, r1a1: u384 { - limb0: 0xdac2a44324177e4a44ae5815, - limb1: 0x3dcbd8c568d224e35eaa45e7, - limb2: 0xec4a3e47189ec970da5168f6, - limb3: 0x77f740a8a5a4efa9f625ed7 + limb0: 0x94edd8ecaa284e2f201cb0bc, + limb1: 0xbb7214e0be5dffb26b5f4617, + limb2: 0x7b7c3d57928d6320156e0c9b, + limb3: 0xf0d3839b029f06faa43502f } }, G2Line { r0a0: u384 { - limb0: 0xbb14322e24c6d24daace8107, - limb1: 0x4e1ed9df9ae593dfbb85161b, - limb2: 0x81b554ea43c71b58a13bc1b8, - limb3: 0x1305967c90c0c5fa75f91f80 + limb0: 0x71c338bbe6749f3a0c794e3b, + limb1: 0xd60036ee7e00e1bc1daaa28c, + limb2: 0x80c9c29a1c9cd39071a76a73, + limb3: 0x1691a74f3c611d47565bab81 }, r0a1: u384 { - limb0: 0xa81d2bc2a40ae2aae3022f49, - limb1: 0xe0177573d7c202cb9cfd0e68, - limb2: 0x117cd9436be1ebbe04a80fd9, - limb3: 0x629b6e0172d6d5cfeadbaa7 + limb0: 0x3739ddaa1c4ac1cd71676f44, + limb1: 0x6cdae549a2e3b9e74bed6617, + limb2: 0x6d82ae923a587e458bf9e071, + limb3: 0x5bd8b1ae5478de8f7960475 }, r1a0: u384 { - limb0: 0xcd34116f1c1b89b4a0a65d1e, - limb1: 0x243fd6a81db05f14fe4322a3, - limb2: 0x7cc13ef4a0d4ca85442d25ce, - limb3: 0x10f7f539127809eda12b87f7 + limb0: 0xe7b8e10907491c1b869cc6e6, + limb1: 0x8cfdeb806efb1538850097ce, + limb2: 0xe136cf799d4ca7d8af88b264, + limb3: 0xe94a1681636bf224e4b0691 }, r1a1: u384 { - limb0: 0xdac2a44324177e4a44ae5815, - limb1: 0x3dcbd8c568d224e35eaa45e7, - limb2: 0xec4a3e47189ec970da5168f6, - limb3: 0x77f740a8a5a4efa9f625ed7 + limb0: 0x94edd8ecaa284e2f201cb0bc, + limb1: 0xbb7214e0be5dffb26b5f4617, + limb2: 0x7b7c3d57928d6320156e0c9b, + limb3: 0xf0d3839b029f06faa43502f } }, G2Line { r0a0: u384 { - limb0: 0xb5a359c0c9e22d5952d1f2e2, - limb1: 0x7247e0d0b39b981b09ddda24, - limb2: 0x9f820bdbbf9f585fc8c96d67, - limb3: 0x105caf6e13afd576b8bb66ab + limb0: 0x6d43e7332bbfcfbee5c5376b, + limb1: 0x27ece7bba37027f5999add07, + limb2: 0x637dbf333584164a23c17169, + limb3: 0x12d4b80150a8a22e6952e448 }, r0a1: u384 { - limb0: 0x3a3f67fae0f5ba5a4b1b835d, - limb1: 0x4544f47b132b06467ae724f1, - limb2: 0x97df62eea0bdeab836fcea7e, - limb3: 0x12d33489112b360b36f8bced + limb0: 0x8e441a0dbb6a62694a2a3c4a, + limb1: 0xa74e3e1a07fd41d9e61bab3a, + limb2: 0x93f13250db97416e49b7a2b8, + limb3: 0xae73a13b05f49355e20cbfc }, r1a0: u384 { - limb0: 0x90ff578ec2e91eb00e05583c, - limb1: 0x91514b63c5b0978a16ea4bbf, - limb2: 0x69f213077ad76fc3228cb9fa, - limb3: 0xee5e93323a3d2e1c6c41ee7 + limb0: 0xaab4ddae0158677b87dcf85f, + limb1: 0x862ff02ea5df2c83154f9bf4, + limb2: 0xbd8d14a20d5450f579b18a5d, + limb3: 0x19d88287fa3718efba69753c }, r1a1: u384 { - limb0: 0xa9a2b47f120cd91f705b51ec, - limb1: 0x3defa23703c283a21528ccf0, - limb2: 0x1dc1f3aa902d2a636d1885c6, - limb3: 0x94415427ccc949d1823f7b4 + limb0: 0x6228ef66253437223d061818, + limb1: 0x149a7b06d4f6e82c5f61bea6, + limb2: 0x26a9e0795c834bc8a7692d62, + limb3: 0x6c65186880284d32688774b } }, G2Line { r0a0: u384 { - limb0: 0xb72acea41b642642c4791dd5, - limb1: 0x42f2b3cde09196d3130a5dba, - limb2: 0xc079fb19b4899c282135c9ee, - limb3: 0x5db693b9687c2d95bc49643 + limb0: 0x9ac2c4e82f76005ac86b6a68, + limb1: 0x825b11a2fb75fa3393d592d2, + limb2: 0x8a51f027e8af5ddcc56634ca, + limb3: 0x455fd4d8092e90871498047 }, r0a1: u384 { - limb0: 0x99b7113db243f5a038c89853, - limb1: 0x904316f3c91030e1ff0bd169, - limb2: 0x65c9328e763a502f69b03a6f, - limb3: 0x8e834f5f5d5e8e4444e41f9 + limb0: 0x74a9d748f6e18dbd47946fd3, + limb1: 0x589f7136b41d11506b1f4b16, + limb2: 0x637f5fc297c98105f3250b10, + limb3: 0xc00b94290db7d57cf174d26 }, r1a0: u384 { - limb0: 0x295ef14ec0fae8f9376db32e, - limb1: 0xf6cb4b3cd18d8d38d2afdcdf, - limb2: 0xa614b2cffc20c264235b5ccf, - limb3: 0x183a8f6cfec9488aaded3c19 + limb0: 0x539e910889e8369e1adab904, + limb1: 0x8ae0cb6a75d0421b50aca3b6, + limb2: 0x692425462875faf0b951065c, + limb3: 0xb07166a05f0c152c3d18c17 }, r1a1: u384 { - limb0: 0xa6cde3d07695db1381ce0aab, - limb1: 0x8a1582505e63cea6edf80b58, - limb2: 0x6948d09839f3e20d7811785d, - limb3: 0x7e499640d30a546400e848 + limb0: 0x4f5e1191e124da74ea971656, + limb1: 0x9ce7cd48b4ac295efb2a8f7f, + limb2: 0x93bee1ccd612f2928289c907, + limb3: 0x181bf3fba2f28016281ab009 } }, G2Line { r0a0: u384 { - limb0: 0xb5a359c0c9e22d5952d1f2e2, - limb1: 0x7247e0d0b39b981b09ddda24, - limb2: 0x9f820bdbbf9f585fc8c96d67, - limb3: 0x105caf6e13afd576b8bb66ab + limb0: 0x6d43e7332bbfcfbee5c5376b, + limb1: 0x27ece7bba37027f5999add07, + limb2: 0x637dbf333584164a23c17169, + limb3: 0x12d4b80150a8a22e6952e448 }, r0a1: u384 { - limb0: 0x3a3f67fae0f5ba5a4b1b835d, - limb1: 0x4544f47b132b06467ae724f1, - limb2: 0x97df62eea0bdeab836fcea7e, - limb3: 0x12d33489112b360b36f8bced + limb0: 0x8e441a0dbb6a62694a2a3c4a, + limb1: 0xa74e3e1a07fd41d9e61bab3a, + limb2: 0x93f13250db97416e49b7a2b8, + limb3: 0xae73a13b05f49355e20cbfc }, r1a0: u384 { - limb0: 0x90ff578ec2e91eb00e05583c, - limb1: 0x91514b63c5b0978a16ea4bbf, - limb2: 0x69f213077ad76fc3228cb9fa, - limb3: 0xee5e93323a3d2e1c6c41ee7 + limb0: 0xaab4ddae0158677b87dcf85f, + limb1: 0x862ff02ea5df2c83154f9bf4, + limb2: 0xbd8d14a20d5450f579b18a5d, + limb3: 0x19d88287fa3718efba69753c }, r1a1: u384 { - limb0: 0xa9a2b47f120cd91f705b51ec, - limb1: 0x3defa23703c283a21528ccf0, - limb2: 0x1dc1f3aa902d2a636d1885c6, - limb3: 0x94415427ccc949d1823f7b4 + limb0: 0x6228ef66253437223d061818, + limb1: 0x149a7b06d4f6e82c5f61bea6, + limb2: 0x26a9e0795c834bc8a7692d62, + limb3: 0x6c65186880284d32688774b } }, G2Line { r0a0: u384 { - limb0: 0xb72acea41b642642c4791dd5, - limb1: 0x42f2b3cde09196d3130a5dba, - limb2: 0xc079fb19b4899c282135c9ee, - limb3: 0x5db693b9687c2d95bc49643 + limb0: 0x9ac2c4e82f76005ac86b6a68, + limb1: 0x825b11a2fb75fa3393d592d2, + limb2: 0x8a51f027e8af5ddcc56634ca, + limb3: 0x455fd4d8092e90871498047 }, r0a1: u384 { - limb0: 0x99b7113db243f5a038c89853, - limb1: 0x904316f3c91030e1ff0bd169, - limb2: 0x65c9328e763a502f69b03a6f, - limb3: 0x8e834f5f5d5e8e4444e41f9 + limb0: 0x74a9d748f6e18dbd47946fd3, + limb1: 0x589f7136b41d11506b1f4b16, + limb2: 0x637f5fc297c98105f3250b10, + limb3: 0xc00b94290db7d57cf174d26 }, r1a0: u384 { - limb0: 0x295ef14ec0fae8f9376db32e, - limb1: 0xf6cb4b3cd18d8d38d2afdcdf, - limb2: 0xa614b2cffc20c264235b5ccf, - limb3: 0x183a8f6cfec9488aaded3c19 + limb0: 0x539e910889e8369e1adab904, + limb1: 0x8ae0cb6a75d0421b50aca3b6, + limb2: 0x692425462875faf0b951065c, + limb3: 0xb07166a05f0c152c3d18c17 }, r1a1: u384 { - limb0: 0xa6cde3d07695db1381ce0aab, - limb1: 0x8a1582505e63cea6edf80b58, - limb2: 0x6948d09839f3e20d7811785d, - limb3: 0x7e499640d30a546400e848 + limb0: 0x4f5e1191e124da74ea971656, + limb1: 0x9ce7cd48b4ac295efb2a8f7f, + limb2: 0x93bee1ccd612f2928289c907, + limb3: 0x181bf3fba2f28016281ab009 } }, G2Line { r0a0: u384 { - limb0: 0xa4cf1ab022eaa8e6c873bef5, - limb1: 0x3b2d64950846540cc0e208d, - limb2: 0xa2e41b18fad60f0c50f32e3f, - limb3: 0x18550bf7d44b08285abcf8c0 + limb0: 0xa3b7f1aeca1eb8e5228cfe24, + limb1: 0xb1d4870d2df3e7f8c0303e0, + limb2: 0x7d2d13fd39dfa6b49cf34444, + limb3: 0x18dda000c5ebc56872662b94 }, r0a1: u384 { - limb0: 0xcc3af07c81cb394f1998b38e, - limb1: 0xa5f7c0a3e17dcd5cdd7c44f7, - limb2: 0x447617e31d66010f5fa15e70, - limb3: 0x13da4487506f8eeb59f5e9bc + limb0: 0x88fa6eead0de120bd40926d, + limb1: 0xd52110c4f01d3301401bbcdd, + limb2: 0xc6fd2d571c66836ac2991d93, + limb3: 0x16a57592a40c4539c5942b30 }, r1a0: u384 { - limb0: 0x76338fddfe3b8862d4a55e07, - limb1: 0x22bb5255c49011fc0ce173f, - limb2: 0xb84bb2d1667ae686837234c7, - limb3: 0x33cd129e4ec98ce231a6ba3 + limb0: 0xfac7483d9aeb80ccaedfb58a, + limb1: 0xa65ec1711b36c95437152f5a, + limb2: 0x5a07debf96bee8e47e1faec5, + limb3: 0x14268c14cf7097633798f51f }, r1a1: u384 { - limb0: 0x3f8d3952af4a24cc6ac1fb2d, - limb1: 0x3e23eb95e8359435176b0ebe, - limb2: 0xda06739897bb44e56ba4db60, - limb3: 0x719de7df494ac8cfe06dd74 + limb0: 0x3755f3f5cfe715f9099ef4e1, + limb1: 0x95a84557becbe80f27b9c186, + limb2: 0xd9b09f3fb00efd37867d67f7, + limb3: 0x8245d6085830e3afa2755ad } }, G2Line { r0a0: u384 { - limb0: 0xa4cf1ab022eaa8e6c873bef5, - limb1: 0x3b2d64950846540cc0e208d, - limb2: 0xa2e41b18fad60f0c50f32e3f, - limb3: 0x18550bf7d44b08285abcf8c0 + limb0: 0xa3b7f1aeca1eb8e5228cfe24, + limb1: 0xb1d4870d2df3e7f8c0303e0, + limb2: 0x7d2d13fd39dfa6b49cf34444, + limb3: 0x18dda000c5ebc56872662b94 }, r0a1: u384 { - limb0: 0xcc3af07c81cb394f1998b38e, - limb1: 0xa5f7c0a3e17dcd5cdd7c44f7, - limb2: 0x447617e31d66010f5fa15e70, - limb3: 0x13da4487506f8eeb59f5e9bc + limb0: 0x88fa6eead0de120bd40926d, + limb1: 0xd52110c4f01d3301401bbcdd, + limb2: 0xc6fd2d571c66836ac2991d93, + limb3: 0x16a57592a40c4539c5942b30 }, r1a0: u384 { - limb0: 0x76338fddfe3b8862d4a55e07, - limb1: 0x22bb5255c49011fc0ce173f, - limb2: 0xb84bb2d1667ae686837234c7, - limb3: 0x33cd129e4ec98ce231a6ba3 + limb0: 0xfac7483d9aeb80ccaedfb58a, + limb1: 0xa65ec1711b36c95437152f5a, + limb2: 0x5a07debf96bee8e47e1faec5, + limb3: 0x14268c14cf7097633798f51f }, r1a1: u384 { - limb0: 0x3f8d3952af4a24cc6ac1fb2d, - limb1: 0x3e23eb95e8359435176b0ebe, - limb2: 0xda06739897bb44e56ba4db60, - limb3: 0x719de7df494ac8cfe06dd74 + limb0: 0x3755f3f5cfe715f9099ef4e1, + limb1: 0x95a84557becbe80f27b9c186, + limb2: 0xd9b09f3fb00efd37867d67f7, + limb3: 0x8245d6085830e3afa2755ad } }, G2Line { r0a0: u384 { - limb0: 0x3b24a4fa4a36c467de3539bc, - limb1: 0xb1c413d4b85d17bb72c4955e, - limb2: 0x41b987e415f1b3db6d44ee90, - limb3: 0x10f37302ad834a14876793a5 + limb0: 0x8d00e16d9be63918c1397e81, + limb1: 0x81930ed4b260df3d51c15b5f, + limb2: 0xc235a3a7ababa1cec1b44cdb, + limb3: 0x15142167355366c0554c8cf7 }, r0a1: u384 { - limb0: 0xee2e1275c36d7329c163b28b, - limb1: 0x603bedcd93c1dd4038d44d63, - limb2: 0x48d57e29259d4fa80fe80aab, - limb3: 0x14dffaf8e2649bf9fee1c77d + limb0: 0x834eef21abff8fe5037b5263, + limb1: 0xb8222b6ba8925f62798307b3, + limb2: 0x1936ba42cf07ce260ba0a1d9, + limb3: 0x13f7a4840980f7a08d2a7f3a }, r1a0: u384 { - limb0: 0xea5553d20a7c4b02f5626baa, - limb1: 0x62c76df463e7fea489185161, - limb2: 0xe34e2123cffb07c09d777fe6, - limb3: 0x861323e4e6fe0e242251e2f + limb0: 0xd543f562663b71bee0995f4d, + limb1: 0x3cd18e9c3fec928aea1d2d36, + limb2: 0x6fc20bec1d1011db93edcc23, + limb3: 0x15a907e20aa728dc6947dff4 }, r1a1: u384 { - limb0: 0x48f1b926f60cdd7dd1b3793f, - limb1: 0x5a3b7a5e6d6d9172a7431c42, - limb2: 0xc9d9d268fdefcb12cc2b6a93, - limb3: 0x15202af2a9ba2fe6ca8988b0 + limb0: 0xbe1e8374e98f2267ca36c49e, + limb1: 0xdebc0cb3b1ad1c03950d61ad, + limb2: 0xfb0533728087596ad45c6500, + limb3: 0x2c45dad6f7a7e061c0a2692 } }, G2Line { r0a0: u384 { - limb0: 0x3b24a4fa4a36c467de3539bc, - limb1: 0xb1c413d4b85d17bb72c4955e, - limb2: 0x41b987e415f1b3db6d44ee90, - limb3: 0x10f37302ad834a14876793a5 + limb0: 0x8d00e16d9be63918c1397e81, + limb1: 0x81930ed4b260df3d51c15b5f, + limb2: 0xc235a3a7ababa1cec1b44cdb, + limb3: 0x15142167355366c0554c8cf7 }, r0a1: u384 { - limb0: 0xee2e1275c36d7329c163b28b, - limb1: 0x603bedcd93c1dd4038d44d63, - limb2: 0x48d57e29259d4fa80fe80aab, - limb3: 0x14dffaf8e2649bf9fee1c77d + limb0: 0x834eef21abff8fe5037b5263, + limb1: 0xb8222b6ba8925f62798307b3, + limb2: 0x1936ba42cf07ce260ba0a1d9, + limb3: 0x13f7a4840980f7a08d2a7f3a }, r1a0: u384 { - limb0: 0xea5553d20a7c4b02f5626baa, - limb1: 0x62c76df463e7fea489185161, - limb2: 0xe34e2123cffb07c09d777fe6, - limb3: 0x861323e4e6fe0e242251e2f + limb0: 0xd543f562663b71bee0995f4d, + limb1: 0x3cd18e9c3fec928aea1d2d36, + limb2: 0x6fc20bec1d1011db93edcc23, + limb3: 0x15a907e20aa728dc6947dff4 }, r1a1: u384 { - limb0: 0x48f1b926f60cdd7dd1b3793f, - limb1: 0x5a3b7a5e6d6d9172a7431c42, - limb2: 0xc9d9d268fdefcb12cc2b6a93, - limb3: 0x15202af2a9ba2fe6ca8988b0 + limb0: 0xbe1e8374e98f2267ca36c49e, + limb1: 0xdebc0cb3b1ad1c03950d61ad, + limb2: 0xfb0533728087596ad45c6500, + limb3: 0x2c45dad6f7a7e061c0a2692 } }, G2Line { r0a0: u384 { - limb0: 0xd66fb8d98417463ff4bd2f23, - limb1: 0x1e5937fdd088d575101b3343, - limb2: 0x3a1b29f9e3ae07132759ae77, - limb3: 0xfccc0682d89338c53ca404f + limb0: 0xa0c014a08ac1d2a306211d8b, + limb1: 0xa33fa10d6f5ba13228ba7304, + limb2: 0x749d962ecb642d3f58639a49, + limb3: 0x174a313218725a0cc75ee281 }, r0a1: u384 { - limb0: 0x3cc86e57b7374dcab48e05b3, - limb1: 0xce6609114cc0bf1d3f0629a4, - limb2: 0x976b29bef533ec5a3bc06a57, - limb3: 0x18480e3386d600e731c045de + limb0: 0x6bc80233768f9e8ebdc0686, + limb1: 0xca18f802757f90d4eacce988, + limb2: 0x9224a07c14269b98055ee478, + limb3: 0x16eaa4fc6c991cd485e078ea }, r1a0: u384 { - limb0: 0xf1583eb0e337ea67e16cdc1e, - limb1: 0x549827a0c8cacd0cd31a8a4f, - limb2: 0xe80d292852ecae7fe793e155, - limb3: 0x184beb7bf5183ac004a29d30 + limb0: 0xf69ec877d896ca7704fbed49, + limb1: 0xf340e7b5e58946b82f5682a2, + limb2: 0x3923d14a3994f5dc5bd94570, + limb3: 0x15e555c716f95e605a7febe6 }, r1a1: u384 { - limb0: 0x39a4e04e2b499f407f5c17a2, - limb1: 0xe15ebb77ad21f75a96dab0dd, - limb2: 0x49f5eaad9809cad97c22b05d, - limb3: 0xd98e7cc1ccfe57b4b489c3a + limb0: 0xcdfa8542620253c16455772, + limb1: 0x7d98932fff862d2c2a295dcc, + limb2: 0xfce18ccaa051eee0521d1bd2, + limb3: 0xb407ab9ff872d66432c3b5b } }, G2Line { r0a0: u384 { - limb0: 0xc09985bf6d24c0d0285d6984, - limb1: 0x2510abf4c58f2f0f3598402a, - limb2: 0xd4d70a438126f8c8524bbafc, - limb3: 0x63617ddd06adcb69bbc61b1 + limb0: 0x584ae3d80ee825e67b6fd8f9, + limb1: 0x72e42a443795e04ce800bea, + limb2: 0xa208fe6299541f4504c15e1d, + limb3: 0x10f4319457ac58835a0050cc }, r0a1: u384 { - limb0: 0x147280dfaabc99b4f62e88d9, - limb1: 0x7b598680a9c7664544ae76fd, - limb2: 0xdf10009babd7f98a51a1a3ba, - limb3: 0x83fd690644ef35415a7410a + limb0: 0xcea34f037c032c4542c6a991, + limb1: 0xcb1d1c58c236e0836ff98341, + limb2: 0xb0cac49f1a324a414f139b26, + limb3: 0xecf90a882783268e3235139 }, r1a0: u384 { - limb0: 0xf2a72916da35af8d9153794f, - limb1: 0x2d0f21520b727de95a8e4919, - limb2: 0x80976cfb5e33d363848b6d16, - limb3: 0x4166b7e43e9c58e80434fdf + limb0: 0xca8b141e24ba66e9685558c9, + limb1: 0xf841b355795132e39dd17e84, + limb2: 0xf2353600d1ecd5adf17c0d54, + limb3: 0x8821343bc8d2180ace57d82 }, r1a1: u384 { - limb0: 0x6d7e1ede7f4f208e54e566aa, - limb1: 0xde04e07dd01b00df48e73bf7, - limb2: 0xc97daed9007320199b3d1df2, - limb3: 0x116952432ef206989524b04d + limb0: 0x14aa77c6ae913de8263e425f, + limb1: 0x273d83c0f020843fae955eec, + limb2: 0x26553593e08e36dd5f6a75bb, + limb3: 0x102af6f4cdf7db4c677043fc } }, G2Line { r0a0: u384 { - limb0: 0xd66fb8d98417463ff4bd2f23, - limb1: 0x1e5937fdd088d575101b3343, - limb2: 0x3a1b29f9e3ae07132759ae77, - limb3: 0xfccc0682d89338c53ca404f + limb0: 0xa0c014a08ac1d2a306211d8b, + limb1: 0xa33fa10d6f5ba13228ba7304, + limb2: 0x749d962ecb642d3f58639a49, + limb3: 0x174a313218725a0cc75ee281 }, r0a1: u384 { - limb0: 0x3cc86e57b7374dcab48e05b3, - limb1: 0xce6609114cc0bf1d3f0629a4, - limb2: 0x976b29bef533ec5a3bc06a57, - limb3: 0x18480e3386d600e731c045de + limb0: 0x6bc80233768f9e8ebdc0686, + limb1: 0xca18f802757f90d4eacce988, + limb2: 0x9224a07c14269b98055ee478, + limb3: 0x16eaa4fc6c991cd485e078ea }, r1a0: u384 { - limb0: 0xf1583eb0e337ea67e16cdc1e, - limb1: 0x549827a0c8cacd0cd31a8a4f, - limb2: 0xe80d292852ecae7fe793e155, - limb3: 0x184beb7bf5183ac004a29d30 + limb0: 0xf69ec877d896ca7704fbed49, + limb1: 0xf340e7b5e58946b82f5682a2, + limb2: 0x3923d14a3994f5dc5bd94570, + limb3: 0x15e555c716f95e605a7febe6 }, r1a1: u384 { - limb0: 0x39a4e04e2b499f407f5c17a2, - limb1: 0xe15ebb77ad21f75a96dab0dd, - limb2: 0x49f5eaad9809cad97c22b05d, - limb3: 0xd98e7cc1ccfe57b4b489c3a + limb0: 0xcdfa8542620253c16455772, + limb1: 0x7d98932fff862d2c2a295dcc, + limb2: 0xfce18ccaa051eee0521d1bd2, + limb3: 0xb407ab9ff872d66432c3b5b } }, G2Line { r0a0: u384 { - limb0: 0xc09985bf6d24c0d0285d6984, - limb1: 0x2510abf4c58f2f0f3598402a, - limb2: 0xd4d70a438126f8c8524bbafc, - limb3: 0x63617ddd06adcb69bbc61b1 + limb0: 0x584ae3d80ee825e67b6fd8f9, + limb1: 0x72e42a443795e04ce800bea, + limb2: 0xa208fe6299541f4504c15e1d, + limb3: 0x10f4319457ac58835a0050cc }, r0a1: u384 { - limb0: 0x147280dfaabc99b4f62e88d9, - limb1: 0x7b598680a9c7664544ae76fd, - limb2: 0xdf10009babd7f98a51a1a3ba, - limb3: 0x83fd690644ef35415a7410a + limb0: 0xcea34f037c032c4542c6a991, + limb1: 0xcb1d1c58c236e0836ff98341, + limb2: 0xb0cac49f1a324a414f139b26, + limb3: 0xecf90a882783268e3235139 }, r1a0: u384 { - limb0: 0xf2a72916da35af8d9153794f, - limb1: 0x2d0f21520b727de95a8e4919, - limb2: 0x80976cfb5e33d363848b6d16, - limb3: 0x4166b7e43e9c58e80434fdf + limb0: 0xca8b141e24ba66e9685558c9, + limb1: 0xf841b355795132e39dd17e84, + limb2: 0xf2353600d1ecd5adf17c0d54, + limb3: 0x8821343bc8d2180ace57d82 }, r1a1: u384 { - limb0: 0x6d7e1ede7f4f208e54e566aa, - limb1: 0xde04e07dd01b00df48e73bf7, - limb2: 0xc97daed9007320199b3d1df2, - limb3: 0x116952432ef206989524b04d + limb0: 0x14aa77c6ae913de8263e425f, + limb1: 0x273d83c0f020843fae955eec, + limb2: 0x26553593e08e36dd5f6a75bb, + limb3: 0x102af6f4cdf7db4c677043fc } }, G2Line { r0a0: u384 { - limb0: 0x8c489b1731f68ac3054f0b9f, - limb1: 0xcafa7e5ddb3d93f1930a0680, - limb2: 0xda4501f812905f2904f622da, - limb3: 0x10849f485dd1e1e1bd8f1b7e + limb0: 0xfdbeae987574005d3bbeba79, + limb1: 0xcf371d870e47f4622149a11a, + limb2: 0x11bf363e6a204b8703727c56, + limb3: 0x5403038afe4d371b52896ca }, r0a1: u384 { - limb0: 0x9dcac905ecaafb210398e7d7, - limb1: 0xa1cc921b064fe1c86f153b11, - limb2: 0x33db0e1c23eb2d6799556838, - limb3: 0x16f088c4cac468f4ddb023f8 + limb0: 0x54d5a4c14c73e0ef0275ac35, + limb1: 0x26f6c41df22d3e1063c0edf5, + limb2: 0xfe12df7705ded311286f136b, + limb3: 0x80fcee07336b1d4fd054632 }, r1a0: u384 { - limb0: 0xa121f177e64927d6427593ca, - limb1: 0x336649ba9bce530e610eefaf, - limb2: 0xd7de67dd77930712afce0917, - limb3: 0x1abe511b39059c30d95b9ca + limb0: 0xf0939c1416fe851d53e3646c, + limb1: 0xc9a12afc9f8db790c7ca2c01, + limb2: 0x9dd95e0b6b120cf4d75a8773, + limb3: 0x80f311daa3d03414a9e6da7 }, r1a1: u384 { - limb0: 0x6d4c95f1c089e5881e389fcf, - limb1: 0xd2f7fe55994335e22709e9d0, - limb2: 0x7f16086d46dd5578922da9ca, - limb3: 0x1086adde3cf1ecd04ff28cc4 + limb0: 0x818478702af93d8a49dd855f, + limb1: 0x71d852e84d0234f63a203244, + limb2: 0xbc97ff363643af58cc34499e, + limb3: 0xc20ef3f50ea59d51f8df639 } }, G2Line { r0a0: u384 { - limb0: 0x8c489b1731f68ac3054f0b9f, - limb1: 0xcafa7e5ddb3d93f1930a0680, - limb2: 0xda4501f812905f2904f622da, - limb3: 0x10849f485dd1e1e1bd8f1b7e + limb0: 0xfdbeae987574005d3bbeba79, + limb1: 0xcf371d870e47f4622149a11a, + limb2: 0x11bf363e6a204b8703727c56, + limb3: 0x5403038afe4d371b52896ca }, r0a1: u384 { - limb0: 0x9dcac905ecaafb210398e7d7, - limb1: 0xa1cc921b064fe1c86f153b11, - limb2: 0x33db0e1c23eb2d6799556838, - limb3: 0x16f088c4cac468f4ddb023f8 + limb0: 0x54d5a4c14c73e0ef0275ac35, + limb1: 0x26f6c41df22d3e1063c0edf5, + limb2: 0xfe12df7705ded311286f136b, + limb3: 0x80fcee07336b1d4fd054632 }, r1a0: u384 { - limb0: 0xa121f177e64927d6427593ca, - limb1: 0x336649ba9bce530e610eefaf, - limb2: 0xd7de67dd77930712afce0917, - limb3: 0x1abe511b39059c30d95b9ca + limb0: 0xf0939c1416fe851d53e3646c, + limb1: 0xc9a12afc9f8db790c7ca2c01, + limb2: 0x9dd95e0b6b120cf4d75a8773, + limb3: 0x80f311daa3d03414a9e6da7 }, r1a1: u384 { - limb0: 0x6d4c95f1c089e5881e389fcf, - limb1: 0xd2f7fe55994335e22709e9d0, - limb2: 0x7f16086d46dd5578922da9ca, - limb3: 0x1086adde3cf1ecd04ff28cc4 + limb0: 0x818478702af93d8a49dd855f, + limb1: 0x71d852e84d0234f63a203244, + limb2: 0xbc97ff363643af58cc34499e, + limb3: 0xc20ef3f50ea59d51f8df639 } }, G2Line { r0a0: u384 { - limb0: 0x7089cb42733873ddee29327f, - limb1: 0xab7ba16288fe66e41cea7d84, - limb2: 0x68538a3947b084d3e2dba3a, - limb3: 0xcb8bd6ee285975052458439 + limb0: 0xfa4eceb20a352380ce1c70ea, + limb1: 0x36cf7b4358eb186bc9113fd5, + limb2: 0xc31dc270d0521f599b13ec66, + limb3: 0xc9d60e53be93821889ac981 }, r0a1: u384 { - limb0: 0x80b43a84cd3fe7ad1baafed2, - limb1: 0x29c10dac1fc4355d2a173b94, - limb2: 0x2bfd99431f1122c9f060da16, - limb3: 0x8c13c27029ef3c3fd194184 + limb0: 0x90488e7391faf90f411cd2a, + limb1: 0x5bcaad9fc4245315f1f20516, + limb2: 0x3d7de55eb608678e2ec5e6bc, + limb3: 0x906fb623299db0166997836 }, r1a0: u384 { - limb0: 0x4178356a7d849fd6e7841682, - limb1: 0x1f061a2f3d464d6c869c9ee2, - limb2: 0x908bf91a1c718c7762019350, - limb3: 0x1301115d30524c8f023764e8 + limb0: 0x4420ed14435d7bb810ab52c3, + limb1: 0xd8125e826a5912dbfb1b634e, + limb2: 0x5e7b24f141de49177da4593b, + limb3: 0x19933fb82b9d9cbe0ced909d }, r1a1: u384 { - limb0: 0x11d59aba7a670d33a3edd9e9, - limb1: 0x52186b84d11415c9393f7f0a, - limb2: 0xfb62c7b0b5961d585a47622, - limb3: 0xd86529fea93cd443356ce75 + limb0: 0x5b474fad8e1b18b5523ec77, + limb1: 0xbe5d4fef6b99cb12d4179692, + limb2: 0x57f22f2d142a6f9ac1ec50d6, + limb3: 0xf8acd8933f9dc504f5ad959 } }, G2Line { r0a0: u384 { - limb0: 0x7089cb42733873ddee29327f, - limb1: 0xab7ba16288fe66e41cea7d84, - limb2: 0x68538a3947b084d3e2dba3a, - limb3: 0xcb8bd6ee285975052458439 + limb0: 0xfa4eceb20a352380ce1c70ea, + limb1: 0x36cf7b4358eb186bc9113fd5, + limb2: 0xc31dc270d0521f599b13ec66, + limb3: 0xc9d60e53be93821889ac981 }, r0a1: u384 { - limb0: 0x80b43a84cd3fe7ad1baafed2, - limb1: 0x29c10dac1fc4355d2a173b94, - limb2: 0x2bfd99431f1122c9f060da16, - limb3: 0x8c13c27029ef3c3fd194184 + limb0: 0x90488e7391faf90f411cd2a, + limb1: 0x5bcaad9fc4245315f1f20516, + limb2: 0x3d7de55eb608678e2ec5e6bc, + limb3: 0x906fb623299db0166997836 }, r1a0: u384 { - limb0: 0x4178356a7d849fd6e7841682, - limb1: 0x1f061a2f3d464d6c869c9ee2, - limb2: 0x908bf91a1c718c7762019350, - limb3: 0x1301115d30524c8f023764e8 + limb0: 0x4420ed14435d7bb810ab52c3, + limb1: 0xd8125e826a5912dbfb1b634e, + limb2: 0x5e7b24f141de49177da4593b, + limb3: 0x19933fb82b9d9cbe0ced909d }, r1a1: u384 { - limb0: 0x11d59aba7a670d33a3edd9e9, - limb1: 0x52186b84d11415c9393f7f0a, - limb2: 0xfb62c7b0b5961d585a47622, - limb3: 0xd86529fea93cd443356ce75 + limb0: 0x5b474fad8e1b18b5523ec77, + limb1: 0xbe5d4fef6b99cb12d4179692, + limb2: 0x57f22f2d142a6f9ac1ec50d6, + limb3: 0xf8acd8933f9dc504f5ad959 } }, G2Line { r0a0: u384 { - limb0: 0x484dc0710dc4acaa3b87822b, - limb1: 0x722a7013fd86a96d1ad0e1de, - limb2: 0x39dd2011781a5f399c84e277, - limb3: 0xd94d96ca22bd3ec255907da + limb0: 0x5e06a1aae94775fc6b1d06e5, + limb1: 0xe4ebd01ac38105e060015075, + limb2: 0xf2aeaa34cceecef19b7fbe3, + limb3: 0x9a067e939e6d2436e24b1e3 }, r0a1: u384 { - limb0: 0xe83b18027d2a6af7446b7b46, - limb1: 0x881c183e7c04ad569ce2fb84, - limb2: 0x5afffa86a628ebc0ca4e9da, - limb3: 0x10a1388bbcd9010f60258c14 + limb0: 0x450581df6ab539251c6ad226, + limb1: 0xc984ee21bde3676cfbd99747, + limb2: 0xf8705bd1e20b73c14c3788d8, + limb3: 0x10aff0a145300f180835a438 }, r1a0: u384 { - limb0: 0x8363f805b818b60ff93b3e76, - limb1: 0xe43dc4f7311f49cd3b7f9cc9, - limb2: 0x10c523787c573c6b28208373, - limb3: 0xdae0db66d355aa7565b5a0a + limb0: 0xed4d2394401ce1cf4b5c36f4, + limb1: 0x5e08068a2363059c48b2ab6a, + limb2: 0xf8713c971feaa5c81b1b132f, + limb3: 0x13526bd0f791307f89c43ed1 }, r1a1: u384 { - limb0: 0xec6f660230e89fa74cb868b1, - limb1: 0x3ed0e3286772bae49ecca60f, - limb2: 0xd7d082a427dacea16929e90, - limb3: 0xa43f7a842c2994814bd75a2 + limb0: 0xa48064dcc778929c687c639b, + limb1: 0xfe5684230d4b419fad7268cb, + limb2: 0x2a70b77608eca8deeac8cbc6, + limb3: 0xa1da6e373baba0c4f39ca79 } }, G2Line { r0a0: u384 { - limb0: 0x484dc0710dc4acaa3b87822b, - limb1: 0x722a7013fd86a96d1ad0e1de, - limb2: 0x39dd2011781a5f399c84e277, - limb3: 0xd94d96ca22bd3ec255907da + limb0: 0x5e06a1aae94775fc6b1d06e5, + limb1: 0xe4ebd01ac38105e060015075, + limb2: 0xf2aeaa34cceecef19b7fbe3, + limb3: 0x9a067e939e6d2436e24b1e3 }, r0a1: u384 { - limb0: 0xe83b18027d2a6af7446b7b46, - limb1: 0x881c183e7c04ad569ce2fb84, - limb2: 0x5afffa86a628ebc0ca4e9da, - limb3: 0x10a1388bbcd9010f60258c14 + limb0: 0x450581df6ab539251c6ad226, + limb1: 0xc984ee21bde3676cfbd99747, + limb2: 0xf8705bd1e20b73c14c3788d8, + limb3: 0x10aff0a145300f180835a438 }, r1a0: u384 { - limb0: 0x8363f805b818b60ff93b3e76, - limb1: 0xe43dc4f7311f49cd3b7f9cc9, - limb2: 0x10c523787c573c6b28208373, - limb3: 0xdae0db66d355aa7565b5a0a + limb0: 0xed4d2394401ce1cf4b5c36f4, + limb1: 0x5e08068a2363059c48b2ab6a, + limb2: 0xf8713c971feaa5c81b1b132f, + limb3: 0x13526bd0f791307f89c43ed1 }, r1a1: u384 { - limb0: 0xec6f660230e89fa74cb868b1, - limb1: 0x3ed0e3286772bae49ecca60f, - limb2: 0xd7d082a427dacea16929e90, - limb3: 0xa43f7a842c2994814bd75a2 + limb0: 0xa48064dcc778929c687c639b, + limb1: 0xfe5684230d4b419fad7268cb, + limb2: 0x2a70b77608eca8deeac8cbc6, + limb3: 0xa1da6e373baba0c4f39ca79 } }, G2Line { r0a0: u384 { - limb0: 0x4e73ac735ce3b68e3b3a5107, - limb1: 0x58bfbc29a59d5318fef389a9, - limb2: 0x27f2755721fa1e092c2b0437, - limb3: 0x58b6afea5564f55aa181088 + limb0: 0x5bb0b2b0e21f10e47482c7c3, + limb1: 0xafb95e4a8189bb7e60f1cf0b, + limb2: 0xcd9c09d7451cd3f9e216bc58, + limb3: 0xd7df03fab3684b14c712203 }, r0a1: u384 { - limb0: 0x8dcf82b9694de0ffb058bf1b, - limb1: 0x5ae6066e85c62262b03db05b, - limb2: 0x6910a7cdd61eccf013d7ddbc, - limb3: 0xec716b27199c10a7ef74c42 + limb0: 0x5f92638801105477afd49e07, + limb1: 0x4a2f991467ddd4e77bb5fdba, + limb2: 0x4f678fd8621d032de63fd2da, + limb3: 0x29963e086a1872143753c25 }, r1a0: u384 { - limb0: 0x5e99b592bce11070c50b7b13, - limb1: 0x9065c3a6dcebfddbfae8bc2e, - limb2: 0xa889395a6fe26259a6b0a5a0, - limb3: 0x7c59ed8a732fc226bcf679e + limb0: 0x276f0d328faf1a29e64e43d, + limb1: 0xeb64e9ecaab0944b5dcc5e54, + limb2: 0xaa1cef79fbeed1facb12f0dd, + limb3: 0xf47a6828d885a743e860037 }, r1a1: u384 { - limb0: 0x49c61d499d1d912d6be3a711, - limb1: 0xc5a4b2b2ace42c1b08f7dd51, - limb2: 0x17353e9cacb0bf0a79b531fe, - limb3: 0xf22c30a5f7e77cf7a09d6b0 + limb0: 0x2872098d61f53ecedca0f507, + limb1: 0xe56215c4dca782b850e6c878, + limb2: 0x9aac187813aff2bc0b0eb740, + limb3: 0x62854a741d93a9cda1cdeae } }, G2Line { r0a0: u384 { - limb0: 0x4e73ac735ce3b68e3b3a5107, - limb1: 0x58bfbc29a59d5318fef389a9, - limb2: 0x27f2755721fa1e092c2b0437, - limb3: 0x58b6afea5564f55aa181088 + limb0: 0x5bb0b2b0e21f10e47482c7c3, + limb1: 0xafb95e4a8189bb7e60f1cf0b, + limb2: 0xcd9c09d7451cd3f9e216bc58, + limb3: 0xd7df03fab3684b14c712203 }, r0a1: u384 { - limb0: 0x8dcf82b9694de0ffb058bf1b, - limb1: 0x5ae6066e85c62262b03db05b, - limb2: 0x6910a7cdd61eccf013d7ddbc, - limb3: 0xec716b27199c10a7ef74c42 + limb0: 0x5f92638801105477afd49e07, + limb1: 0x4a2f991467ddd4e77bb5fdba, + limb2: 0x4f678fd8621d032de63fd2da, + limb3: 0x29963e086a1872143753c25 }, r1a0: u384 { - limb0: 0x5e99b592bce11070c50b7b13, - limb1: 0x9065c3a6dcebfddbfae8bc2e, - limb2: 0xa889395a6fe26259a6b0a5a0, - limb3: 0x7c59ed8a732fc226bcf679e + limb0: 0x276f0d328faf1a29e64e43d, + limb1: 0xeb64e9ecaab0944b5dcc5e54, + limb2: 0xaa1cef79fbeed1facb12f0dd, + limb3: 0xf47a6828d885a743e860037 }, r1a1: u384 { - limb0: 0x49c61d499d1d912d6be3a711, - limb1: 0xc5a4b2b2ace42c1b08f7dd51, - limb2: 0x17353e9cacb0bf0a79b531fe, - limb3: 0xf22c30a5f7e77cf7a09d6b0 + limb0: 0x2872098d61f53ecedca0f507, + limb1: 0xe56215c4dca782b850e6c878, + limb2: 0x9aac187813aff2bc0b0eb740, + limb3: 0x62854a741d93a9cda1cdeae } }, G2Line { r0a0: u384 { - limb0: 0xa81f81895640ea71f397e939, - limb1: 0x8ca4b4363d05a148940e965, - limb2: 0x8ba432e685e3e1108f25f052, - limb3: 0xafb6e9d2294042f3de73ec3 + limb0: 0x33d2bc721226b7a2ab7fb5d7, + limb1: 0xe5ead653011f7e542a0c7d25, + limb2: 0x1410d098aa8104b7d1e452e0, + limb3: 0x127f391154f0af79380abc68 }, r0a1: u384 { - limb0: 0xeaf2b37f021b8da06aae4d36, - limb1: 0x2d7fbd1dbae6a0e4847f1c2a, - limb2: 0xfd2be0f3e52a553359c67a55, - limb3: 0x17f8807d9582bc2e79c50ed5 + limb0: 0xb983dada86d653a3b6dba8df, + limb1: 0xdae3f0ab61b2919bb85a8100, + limb2: 0xb4b8d9ede169bae06c6196c, + limb3: 0x9bfb91f584e61a6064dcd48 }, r1a0: u384 { - limb0: 0xf3b1facf44bffcff288b9917, - limb1: 0x214847557c678be1f4cc2a69, - limb2: 0x15bfffa59c4b5665d4ae9d60, - limb3: 0x205e424805cdf31866ed5ea + limb0: 0x2dd3a6ef83d110ccfc1bdeaa, + limb1: 0x46d76e759974eb2d55f171ee, + limb2: 0x4dcf4fa43920c3eb6ae41bbe, + limb3: 0x9792ae88c5988af9e21422 }, r1a1: u384 { - limb0: 0xfed2d7b358272f415285fe42, - limb1: 0x697f2928150c295a25b9ad8c, - limb2: 0x94fb9f4af1fdf698dc4f4b53, - limb3: 0xffba2219b84f3c4dcd5a5c1 + limb0: 0xda4a4e5d8da986bf970d9caa, + limb1: 0x1202776f70242ad93fd5949a, + limb2: 0x5475dfc633357390bfd0a589, + limb3: 0x179df6d6e304f868e3c4a78b } }, G2Line { r0a0: u384 { - limb0: 0xa81f81895640ea71f397e939, - limb1: 0x8ca4b4363d05a148940e965, - limb2: 0x8ba432e685e3e1108f25f052, - limb3: 0xafb6e9d2294042f3de73ec3 + limb0: 0x33d2bc721226b7a2ab7fb5d7, + limb1: 0xe5ead653011f7e542a0c7d25, + limb2: 0x1410d098aa8104b7d1e452e0, + limb3: 0x127f391154f0af79380abc68 }, r0a1: u384 { - limb0: 0xeaf2b37f021b8da06aae4d36, - limb1: 0x2d7fbd1dbae6a0e4847f1c2a, - limb2: 0xfd2be0f3e52a553359c67a55, - limb3: 0x17f8807d9582bc2e79c50ed5 + limb0: 0xb983dada86d653a3b6dba8df, + limb1: 0xdae3f0ab61b2919bb85a8100, + limb2: 0xb4b8d9ede169bae06c6196c, + limb3: 0x9bfb91f584e61a6064dcd48 }, r1a0: u384 { - limb0: 0xf3b1facf44bffcff288b9917, - limb1: 0x214847557c678be1f4cc2a69, - limb2: 0x15bfffa59c4b5665d4ae9d60, - limb3: 0x205e424805cdf31866ed5ea + limb0: 0x2dd3a6ef83d110ccfc1bdeaa, + limb1: 0x46d76e759974eb2d55f171ee, + limb2: 0x4dcf4fa43920c3eb6ae41bbe, + limb3: 0x9792ae88c5988af9e21422 }, r1a1: u384 { - limb0: 0xfed2d7b358272f415285fe42, - limb1: 0x697f2928150c295a25b9ad8c, - limb2: 0x94fb9f4af1fdf698dc4f4b53, - limb3: 0xffba2219b84f3c4dcd5a5c1 + limb0: 0xda4a4e5d8da986bf970d9caa, + limb1: 0x1202776f70242ad93fd5949a, + limb2: 0x5475dfc633357390bfd0a589, + limb3: 0x179df6d6e304f868e3c4a78b } }, G2Line { r0a0: u384 { - limb0: 0x7a93272a63077eb21ed55f6b, - limb1: 0xcf92cbf14efdae3625dc429b, - limb2: 0x4afab22565876863c80cef58, - limb3: 0x173b7dc276d58c0ab592f738 + limb0: 0x671aaf8408f43f2755d809cf, + limb1: 0x9fa1f6e9f4939b878a561d9d, + limb2: 0xd65188aa9abeb5a3a54f45d7, + limb3: 0x1714715c3aaafabd80a66739 }, r0a1: u384 { - limb0: 0x8658321bd39e0200730b9acd, - limb1: 0x84715d0461152d16a5ca8426, - limb2: 0x32ab9d91a50fe699eef65d44, - limb3: 0xd4b47ab3e40663fe23bd2c5 + limb0: 0x6ba870262236e8b3a454b63d, + limb1: 0xec468fb87efb19c6d8e17c1e, + limb2: 0x34d6950dd4e82fce5b3f2579, + limb3: 0x12a07f5a39b3e75aecec93ec }, r1a0: u384 { - limb0: 0x6de56bf75e0dfb89ed5d0b3c, - limb1: 0xf57da99da1f0a761f83b7988, - limb2: 0x913940cbcc6e9d54d273207b, - limb3: 0x1474ea02d0cf649869e6b5ab + limb0: 0x92c7c213f994b07880db95ff, + limb1: 0x697f44b51adc2c8a9c0d9e93, + limb2: 0x73d426aadf2d31f894152c62, + limb3: 0xd5d0ccf152fbae435bed896 }, r1a1: u384 { - limb0: 0xc8a9bc910b624d2fe7af0b1, - limb1: 0x4d4a369570edb669c8f13be0, - limb2: 0x969318814d344fa87251ad7b, - limb3: 0xa7a635d03e21cf3c1ed46fa + limb0: 0x6d5b97ec988dcefdbdc05e85, + limb1: 0xb2b443ed5a8e2b371ba4bc91, + limb2: 0x7a780a5d7851d6d2ef3f4b2d, + limb3: 0xf5ebb5235418b73960bdfbf } }, G2Line { r0a0: u384 { - limb0: 0x7a93272a63077eb21ed55f6b, - limb1: 0xcf92cbf14efdae3625dc429b, - limb2: 0x4afab22565876863c80cef58, - limb3: 0x173b7dc276d58c0ab592f738 + limb0: 0x671aaf8408f43f2755d809cf, + limb1: 0x9fa1f6e9f4939b878a561d9d, + limb2: 0xd65188aa9abeb5a3a54f45d7, + limb3: 0x1714715c3aaafabd80a66739 }, r0a1: u384 { - limb0: 0x8658321bd39e0200730b9acd, - limb1: 0x84715d0461152d16a5ca8426, - limb2: 0x32ab9d91a50fe699eef65d44, - limb3: 0xd4b47ab3e40663fe23bd2c5 + limb0: 0x6ba870262236e8b3a454b63d, + limb1: 0xec468fb87efb19c6d8e17c1e, + limb2: 0x34d6950dd4e82fce5b3f2579, + limb3: 0x12a07f5a39b3e75aecec93ec }, r1a0: u384 { - limb0: 0x6de56bf75e0dfb89ed5d0b3c, - limb1: 0xf57da99da1f0a761f83b7988, - limb2: 0x913940cbcc6e9d54d273207b, - limb3: 0x1474ea02d0cf649869e6b5ab + limb0: 0x92c7c213f994b07880db95ff, + limb1: 0x697f44b51adc2c8a9c0d9e93, + limb2: 0x73d426aadf2d31f894152c62, + limb3: 0xd5d0ccf152fbae435bed896 }, r1a1: u384 { - limb0: 0xc8a9bc910b624d2fe7af0b1, - limb1: 0x4d4a369570edb669c8f13be0, - limb2: 0x969318814d344fa87251ad7b, - limb3: 0xa7a635d03e21cf3c1ed46fa + limb0: 0x6d5b97ec988dcefdbdc05e85, + limb1: 0xb2b443ed5a8e2b371ba4bc91, + limb2: 0x7a780a5d7851d6d2ef3f4b2d, + limb3: 0xf5ebb5235418b73960bdfbf } }, G2Line { r0a0: u384 { - limb0: 0x24af5b23f37bde5ba918e5ae, - limb1: 0xaed784736e40e5e6dd9e883, - limb2: 0xaff158dfbafb6790521b5a9, - limb3: 0x40dbe85a4105aa5de12e58c + limb0: 0x40026ad615b158d2e9990c29, + limb1: 0x9e2242a306633dbe623493dd, + limb2: 0xddd7549928702d938d2668fc, + limb3: 0xf8ea69fcd9b21a34ab19fd5 }, r0a1: u384 { - limb0: 0x7eec990c3222673d29efab1, - limb1: 0xe980344f39f13e26d9e5f42b, - limb2: 0x2e7c1170899281a5378edaa8, - limb3: 0xfc8429892fa57c50e1821d4 + limb0: 0xb4fc35121bc88778cab2917a, + limb1: 0x330581078bddaf4081868abc, + limb2: 0xd36d12d7fbd411304b17cd1a, + limb3: 0x116d1e42d92dac0455850296 }, r1a0: u384 { - limb0: 0xc913a3a612301ee43562fedd, - limb1: 0x9227ecb681f65f9f5f18674c, - limb2: 0xae6d0653b4abec4bd30c5c8b, - limb3: 0x129a7400d6533d426afba820 + limb0: 0xed700c3d759aa1cd06f5aaad, + limb1: 0xfb3e206ae908a6a288122c56, + limb2: 0xb259599bd6c5853b5d3b6558, + limb3: 0xadcfbfb31152c7a6b0ffbfc }, r1a1: u384 { - limb0: 0x670439099314b40d015962d2, - limb1: 0xce24a28850f29272a1bb9f4e, - limb2: 0x7556bfb51a87a86d49f17761, - limb3: 0x8fa29ae62c5e7a6236be7ee + limb0: 0x2904015a6f8b20fcac1e9a24, + limb1: 0x443a3f98ed4a7bc16efe7090, + limb2: 0xdf8339aedeb9565002c6d2d, + limb3: 0xee949068cce39e16110f33e } }, G2Line { r0a0: u384 { - limb0: 0x24af5b23f37bde5ba918e5ae, - limb1: 0xaed784736e40e5e6dd9e883, - limb2: 0xaff158dfbafb6790521b5a9, - limb3: 0x40dbe85a4105aa5de12e58c + limb0: 0x40026ad615b158d2e9990c29, + limb1: 0x9e2242a306633dbe623493dd, + limb2: 0xddd7549928702d938d2668fc, + limb3: 0xf8ea69fcd9b21a34ab19fd5 }, r0a1: u384 { - limb0: 0x7eec990c3222673d29efab1, - limb1: 0xe980344f39f13e26d9e5f42b, - limb2: 0x2e7c1170899281a5378edaa8, - limb3: 0xfc8429892fa57c50e1821d4 + limb0: 0xb4fc35121bc88778cab2917a, + limb1: 0x330581078bddaf4081868abc, + limb2: 0xd36d12d7fbd411304b17cd1a, + limb3: 0x116d1e42d92dac0455850296 }, r1a0: u384 { - limb0: 0xc913a3a612301ee43562fedd, - limb1: 0x9227ecb681f65f9f5f18674c, - limb2: 0xae6d0653b4abec4bd30c5c8b, - limb3: 0x129a7400d6533d426afba820 + limb0: 0xed700c3d759aa1cd06f5aaad, + limb1: 0xfb3e206ae908a6a288122c56, + limb2: 0xb259599bd6c5853b5d3b6558, + limb3: 0xadcfbfb31152c7a6b0ffbfc }, r1a1: u384 { - limb0: 0x670439099314b40d015962d2, - limb1: 0xce24a28850f29272a1bb9f4e, - limb2: 0x7556bfb51a87a86d49f17761, - limb3: 0x8fa29ae62c5e7a6236be7ee + limb0: 0x2904015a6f8b20fcac1e9a24, + limb1: 0x443a3f98ed4a7bc16efe7090, + limb2: 0xdf8339aedeb9565002c6d2d, + limb3: 0xee949068cce39e16110f33e } }, G2Line { r0a0: u384 { - limb0: 0x4063f23a04e149a7ad540e75, - limb1: 0xffd0bf13273aac622d7fab47, - limb2: 0x7402b9f979f42e585a3e20fb, - limb3: 0x421ca900e36d38e5a86c16 + limb0: 0xefa89f5a680a4da7299482d4, + limb1: 0xf5f8d6bf96a54ce1b68322b4, + limb2: 0xf79a179425be6040f3cc42cd, + limb3: 0x15d8cd58f8a23e99088623a5 }, r0a1: u384 { - limb0: 0xdc652f5030f0ca1f3a4e154f, - limb1: 0x150e96b7bb53ff33d66374fe, - limb2: 0xaed959bc86db5e0a29ee83d9, - limb3: 0xcb5b4c4a07db5c3b43ad7de + limb0: 0xb76521e7dcf6259e936f360, + limb1: 0xc8d95e25b11f53db53661bad, + limb2: 0x46d06de39edc96f10454e18d, + limb3: 0x17ca7261de6fe238eb9ec712 }, r1a0: u384 { - limb0: 0x70ddc32c640b432c0e2c5b18, - limb1: 0x1281b6326ba2158c320b5de7, - limb2: 0x56537f33ef4dca3be2286939, - limb3: 0xe9a85212fa4e7ca638388fe + limb0: 0x13a2280eec6ec2d0bf942aa6, + limb1: 0x408ceff88e9c95aa800dd39f, + limb2: 0x388e1b459c897afa1a579634, + limb3: 0xc43294048ca8f4e35bd6862 }, r1a1: u384 { - limb0: 0x97be0d5bdd3806891cbde945, - limb1: 0x71e115b2e9b1ef9e6e1a9fa7, - limb2: 0xd0679fd3a5b865305689452d, - limb3: 0xdd7b7f6d7426f52858ed415 + limb0: 0xb95e7b878e80dfcf7aeb2b8a, + limb1: 0xe97781f572f8ce4928b1d7f6, + limb2: 0xa2bb709078b8ecf559775cf6, + limb3: 0x1331f80f38cafa8566c7c4 } }, G2Line { r0a0: u384 { - limb0: 0x4063f23a04e149a7ad540e75, - limb1: 0xffd0bf13273aac622d7fab47, - limb2: 0x7402b9f979f42e585a3e20fb, - limb3: 0x421ca900e36d38e5a86c16 + limb0: 0xefa89f5a680a4da7299482d4, + limb1: 0xf5f8d6bf96a54ce1b68322b4, + limb2: 0xf79a179425be6040f3cc42cd, + limb3: 0x15d8cd58f8a23e99088623a5 }, r0a1: u384 { - limb0: 0xdc652f5030f0ca1f3a4e154f, - limb1: 0x150e96b7bb53ff33d66374fe, - limb2: 0xaed959bc86db5e0a29ee83d9, - limb3: 0xcb5b4c4a07db5c3b43ad7de + limb0: 0xb76521e7dcf6259e936f360, + limb1: 0xc8d95e25b11f53db53661bad, + limb2: 0x46d06de39edc96f10454e18d, + limb3: 0x17ca7261de6fe238eb9ec712 }, r1a0: u384 { - limb0: 0x70ddc32c640b432c0e2c5b18, - limb1: 0x1281b6326ba2158c320b5de7, - limb2: 0x56537f33ef4dca3be2286939, - limb3: 0xe9a85212fa4e7ca638388fe + limb0: 0x13a2280eec6ec2d0bf942aa6, + limb1: 0x408ceff88e9c95aa800dd39f, + limb2: 0x388e1b459c897afa1a579634, + limb3: 0xc43294048ca8f4e35bd6862 }, r1a1: u384 { - limb0: 0x97be0d5bdd3806891cbde945, - limb1: 0x71e115b2e9b1ef9e6e1a9fa7, - limb2: 0xd0679fd3a5b865305689452d, - limb3: 0xdd7b7f6d7426f52858ed415 + limb0: 0xb95e7b878e80dfcf7aeb2b8a, + limb1: 0xe97781f572f8ce4928b1d7f6, + limb2: 0xa2bb709078b8ecf559775cf6, + limb3: 0x1331f80f38cafa8566c7c4 } }, G2Line { r0a0: u384 { - limb0: 0xeaa63f093a4bfa89bc9b0930, - limb1: 0x8a1075184ae7b32a4e40f65b, - limb2: 0x63a97a9d8aa25dc84076df4d, - limb3: 0x1633f5351a1c46436b73f455 + limb0: 0x570e2bb46ed8df40fd9a5b31, + limb1: 0xee208deb6696f9384975cbe0, + limb2: 0x825a933b6b2362568c4e8b1a, + limb3: 0x12e321da6ee9dc0cb683603a }, r0a1: u384 { - limb0: 0x65dd8af32882f512f8a0185e, - limb1: 0x6c1069fa9eaeff1f8559fe6a, - limb2: 0x4920c801ef4fdf845608b4ec, - limb3: 0x89d8ebbbfe5918a1b68df57 + limb0: 0xc71652b3aecb78ab9b1e1b62, + limb1: 0x405dcabe10d57df6b4dfe82d, + limb2: 0x7b9852ccd8f74874cf847fd8, + limb3: 0x7aeb486f31847c7fccf8346 }, r1a0: u384 { - limb0: 0x7b2cc2fbbff44e384397590, - limb1: 0xd6319889b016c74026ead04e, - limb2: 0xacef138c65b1e9e5e5849c7a, - limb3: 0x1610de719c8a5f4f0314f36b + limb0: 0x10161849878b146fb770b2be, + limb1: 0x2cea02623e5de7907568b083, + limb2: 0xf3bcc7f61e58c082848dad9d, + limb3: 0x11708a50b5f621ce6879a491 }, r1a1: u384 { - limb0: 0x61428475501c6b67721ba7c0, - limb1: 0x4e14c2aa0b241ccb5f81228b, - limb2: 0x754f0898eeb0fda72c79abb7, - limb3: 0x164278ae574f704106b3a07f + limb0: 0x9cf2c035fc50c5562f775620, + limb1: 0xfccce4d63d0053334f6f1457, + limb2: 0xa022e367acdda812b0f2dc06, + limb3: 0x622182af16687312ea03f25 } }, G2Line { r0a0: u384 { - limb0: 0x24c7c7a4dfc28378738a429, - limb1: 0x60facf5aefea77365f5ce109, - limb2: 0x61eec1e72af9c3c63dd0afa1, - limb3: 0x15cd1cdd828d9ba68965b2e3 + limb0: 0x493f3dd74555bc639d4252da, + limb1: 0x588962fa2f1ec6130e26cc35, + limb2: 0x7bff95ed2e72ff3557ede522, + limb3: 0x185ecbf54853f83a1b27b32e }, r0a1: u384 { - limb0: 0x9565bfdc0a669e9e7c7e5d90, - limb1: 0xe9153d1f8e6c26d317c95dc0, - limb2: 0x3b1701dbcfe2078437e8bb71, - limb3: 0xe38b51afd5cfee9cfeac198 + limb0: 0x6e52f357da806e447be2b3f, + limb1: 0xcbe61d7f7db8bc770eea05af, + limb2: 0xe8475ead73a06a551b652526, + limb3: 0xd6ad3fbb07f6d1d5e3ca1ea }, r1a0: u384 { - limb0: 0x8fdbc8d50205a9508bed23e4, - limb1: 0x886c99dec197e0433a6c5abf, - limb2: 0xaad77d81fc43f1ab7d43b5a9, - limb3: 0xfd08c8772bbe4473330e71a + limb0: 0x501d2a8ab5eff582fbbbf51d, + limb1: 0x20813dc890fb0bb9cb44bded, + limb2: 0x5e56521cb379226e6fb5bd50, + limb3: 0x756b3505cf5ac65ba1aeb2c }, r1a1: u384 { - limb0: 0xd4b25a0ec4e738e2a27bcdfe, - limb1: 0xe4ad9e25376541a0177d81ce, - limb2: 0x71fdb7b0bc6def2d7efa370c, - limb3: 0x19393a4a424db74774ec2daa + limb0: 0xaf8723908022bf6c469ff1fd, + limb1: 0xd046aa176624f0f718fc8f1e, + limb2: 0xa60422b2f3b2f26978331f86, + limb3: 0x422c14867032ee453cdce35 } }, G2Line { r0a0: u384 { - limb0: 0xeaa63f093a4bfa89bc9b0930, - limb1: 0x8a1075184ae7b32a4e40f65b, - limb2: 0x63a97a9d8aa25dc84076df4d, - limb3: 0x1633f5351a1c46436b73f455 + limb0: 0x570e2bb46ed8df40fd9a5b31, + limb1: 0xee208deb6696f9384975cbe0, + limb2: 0x825a933b6b2362568c4e8b1a, + limb3: 0x12e321da6ee9dc0cb683603a }, r0a1: u384 { - limb0: 0x65dd8af32882f512f8a0185e, - limb1: 0x6c1069fa9eaeff1f8559fe6a, - limb2: 0x4920c801ef4fdf845608b4ec, - limb3: 0x89d8ebbbfe5918a1b68df57 + limb0: 0xc71652b3aecb78ab9b1e1b62, + limb1: 0x405dcabe10d57df6b4dfe82d, + limb2: 0x7b9852ccd8f74874cf847fd8, + limb3: 0x7aeb486f31847c7fccf8346 }, r1a0: u384 { - limb0: 0x7b2cc2fbbff44e384397590, - limb1: 0xd6319889b016c74026ead04e, - limb2: 0xacef138c65b1e9e5e5849c7a, - limb3: 0x1610de719c8a5f4f0314f36b + limb0: 0x10161849878b146fb770b2be, + limb1: 0x2cea02623e5de7907568b083, + limb2: 0xf3bcc7f61e58c082848dad9d, + limb3: 0x11708a50b5f621ce6879a491 }, r1a1: u384 { - limb0: 0x61428475501c6b67721ba7c0, - limb1: 0x4e14c2aa0b241ccb5f81228b, - limb2: 0x754f0898eeb0fda72c79abb7, - limb3: 0x164278ae574f704106b3a07f + limb0: 0x9cf2c035fc50c5562f775620, + limb1: 0xfccce4d63d0053334f6f1457, + limb2: 0xa022e367acdda812b0f2dc06, + limb3: 0x622182af16687312ea03f25 } }, G2Line { r0a0: u384 { - limb0: 0x24c7c7a4dfc28378738a429, - limb1: 0x60facf5aefea77365f5ce109, - limb2: 0x61eec1e72af9c3c63dd0afa1, - limb3: 0x15cd1cdd828d9ba68965b2e3 + limb0: 0x493f3dd74555bc639d4252da, + limb1: 0x588962fa2f1ec6130e26cc35, + limb2: 0x7bff95ed2e72ff3557ede522, + limb3: 0x185ecbf54853f83a1b27b32e }, r0a1: u384 { - limb0: 0x9565bfdc0a669e9e7c7e5d90, - limb1: 0xe9153d1f8e6c26d317c95dc0, - limb2: 0x3b1701dbcfe2078437e8bb71, - limb3: 0xe38b51afd5cfee9cfeac198 + limb0: 0x6e52f357da806e447be2b3f, + limb1: 0xcbe61d7f7db8bc770eea05af, + limb2: 0xe8475ead73a06a551b652526, + limb3: 0xd6ad3fbb07f6d1d5e3ca1ea }, r1a0: u384 { - limb0: 0x8fdbc8d50205a9508bed23e4, - limb1: 0x886c99dec197e0433a6c5abf, - limb2: 0xaad77d81fc43f1ab7d43b5a9, - limb3: 0xfd08c8772bbe4473330e71a + limb0: 0x501d2a8ab5eff582fbbbf51d, + limb1: 0x20813dc890fb0bb9cb44bded, + limb2: 0x5e56521cb379226e6fb5bd50, + limb3: 0x756b3505cf5ac65ba1aeb2c }, r1a1: u384 { - limb0: 0xd4b25a0ec4e738e2a27bcdfe, - limb1: 0xe4ad9e25376541a0177d81ce, - limb2: 0x71fdb7b0bc6def2d7efa370c, - limb3: 0x19393a4a424db74774ec2daa + limb0: 0xaf8723908022bf6c469ff1fd, + limb1: 0xd046aa176624f0f718fc8f1e, + limb2: 0xa60422b2f3b2f26978331f86, + limb3: 0x422c14867032ee453cdce35 } }, G2Line { r0a0: u384 { - limb0: 0xb606578722ce6dc7aa575ecd, - limb1: 0xa798f0becd6af59b001d8ab3, - limb2: 0x63a6ea7fa7d8e93cbe4bacd0, - limb3: 0xa511579f6cccee84ade8fc0 + limb0: 0xc0611436dd90e63d1ca50003, + limb1: 0x3f177b653ffe14d44f6b5268, + limb2: 0x8a2d07cb1f87e18fef8bb5c, + limb3: 0x14c15a686ed0fadefc245cd8 }, r0a1: u384 { - limb0: 0x4c8b2831749153355a13e2d8, - limb1: 0x360c17a0250b8ce9286a4f00, - limb2: 0xb6ded22fc16cefdd99ecd80c, - limb3: 0x159231057a7f369a29a7f90b + limb0: 0x47da3bfa6d39ddff944d7186, + limb1: 0xbc1b8433ed1ed18ce5bca840, + limb2: 0x10b030a93712ca194d5c0496, + limb3: 0xa042c723ab40639b3828387 }, r1a0: u384 { - limb0: 0xe4e79684b578954cef072e12, - limb1: 0x466d7b9976c787b2bd508076, - limb2: 0xa20abd9e3151735644417f2d, - limb3: 0x83e82c18be3ef5839ac08f1 + limb0: 0x9a7a5a27d8d96388f36b52be, + limb1: 0xbc449f0d1ecc204067cf31b0, + limb2: 0x95b427bf6177b8ccdbd9bf4b, + limb3: 0x10d1a684f2fed22850ad84c9 }, r1a1: u384 { - limb0: 0xeb97d45b51553146fdec31c3, - limb1: 0x4f14a6e54232ab04d9bd9308, - limb2: 0x97f1468def315f89bb6a2c54, - limb3: 0xaec538e0b4bc36ad5b73767 + limb0: 0xa9c12d8f163e2c7706c5d01d, + limb1: 0xd86388e029ee3a3e2a4c235b, + limb2: 0xe875331eb8c750a2663463d4, + limb3: 0xa67113fa0c53e2863664669 } }, G2Line { r0a0: u384 { - limb0: 0xb606578722ce6dc7aa575ecd, - limb1: 0xa798f0becd6af59b001d8ab3, - limb2: 0x63a6ea7fa7d8e93cbe4bacd0, - limb3: 0xa511579f6cccee84ade8fc0 + limb0: 0xc0611436dd90e63d1ca50003, + limb1: 0x3f177b653ffe14d44f6b5268, + limb2: 0x8a2d07cb1f87e18fef8bb5c, + limb3: 0x14c15a686ed0fadefc245cd8 }, r0a1: u384 { - limb0: 0x4c8b2831749153355a13e2d8, - limb1: 0x360c17a0250b8ce9286a4f00, - limb2: 0xb6ded22fc16cefdd99ecd80c, - limb3: 0x159231057a7f369a29a7f90b + limb0: 0x47da3bfa6d39ddff944d7186, + limb1: 0xbc1b8433ed1ed18ce5bca840, + limb2: 0x10b030a93712ca194d5c0496, + limb3: 0xa042c723ab40639b3828387 }, r1a0: u384 { - limb0: 0xe4e79684b578954cef072e12, - limb1: 0x466d7b9976c787b2bd508076, - limb2: 0xa20abd9e3151735644417f2d, - limb3: 0x83e82c18be3ef5839ac08f1 + limb0: 0x9a7a5a27d8d96388f36b52be, + limb1: 0xbc449f0d1ecc204067cf31b0, + limb2: 0x95b427bf6177b8ccdbd9bf4b, + limb3: 0x10d1a684f2fed22850ad84c9 }, r1a1: u384 { - limb0: 0xeb97d45b51553146fdec31c3, - limb1: 0x4f14a6e54232ab04d9bd9308, - limb2: 0x97f1468def315f89bb6a2c54, - limb3: 0xaec538e0b4bc36ad5b73767 + limb0: 0xa9c12d8f163e2c7706c5d01d, + limb1: 0xd86388e029ee3a3e2a4c235b, + limb2: 0xe875331eb8c750a2663463d4, + limb3: 0xa67113fa0c53e2863664669 } }, G2Line { r0a0: u384 { - limb0: 0xda6036832b33250d347c3b5, - limb1: 0xb905554d3fdc9208baa32ad3, - limb2: 0x6004f6a0ea009ad2295a60eb, - limb3: 0x16c944065cc669a4a2a15be6 + limb0: 0x36646f97fe1188e02d6cf838, + limb1: 0xeac5e64075a7abc81043c68f, + limb2: 0x96728e6d9358afc3ed74ba4c, + limb3: 0xdc42cdbd7b2b92570931504 }, r0a1: u384 { - limb0: 0x48fc0f57bb674892e53a4829, - limb1: 0x387933c783b832cdd4911e61, - limb2: 0x21bb3e255fdf740534438afe, - limb3: 0xc967c76da4b5ca5fc991372 + limb0: 0x82f9bdde42f2f8a9665bc768, + limb1: 0x23c8404fc61bf9acdfa14df9, + limb2: 0x55732e6cb7bd2a804c16550a, + limb3: 0x2b4eb8db1be11375bddf5e3 }, r1a0: u384 { - limb0: 0xaaf69514a86dfe3988706b64, - limb1: 0x3e45f9ff5aad19601d65255, - limb2: 0xf64063953551b88a0b6c89ef, - limb3: 0xfbb3c98c45e7268ce7d6bf + limb0: 0x9982e10d15e300cfd8d68776, + limb1: 0x70b58432321aec231832c50d, + limb2: 0x2668317449e2202668fcd561, + limb3: 0x14882bfddd95ce2d288b6ecd }, r1a1: u384 { - limb0: 0x4941567a5baed5d39f05cffe, - limb1: 0xf2720e68cce20318a3e7cea7, - limb2: 0x2a0367214f830a7cd1d2bd9e, - limb3: 0x52442804a2eef17e18af027 + limb0: 0x3f5b1a3085c44dcb84b9c0c8, + limb1: 0xeb5b9be908981cec3f54d648, + limb2: 0x7a193ea1a65c38f53d486a50, + limb3: 0x19b822dd548e13c098c72f8a } }, G2Line { r0a0: u384 { - limb0: 0xda6036832b33250d347c3b5, - limb1: 0xb905554d3fdc9208baa32ad3, - limb2: 0x6004f6a0ea009ad2295a60eb, - limb3: 0x16c944065cc669a4a2a15be6 + limb0: 0x36646f97fe1188e02d6cf838, + limb1: 0xeac5e64075a7abc81043c68f, + limb2: 0x96728e6d9358afc3ed74ba4c, + limb3: 0xdc42cdbd7b2b92570931504 }, r0a1: u384 { - limb0: 0x48fc0f57bb674892e53a4829, - limb1: 0x387933c783b832cdd4911e61, - limb2: 0x21bb3e255fdf740534438afe, - limb3: 0xc967c76da4b5ca5fc991372 + limb0: 0x82f9bdde42f2f8a9665bc768, + limb1: 0x23c8404fc61bf9acdfa14df9, + limb2: 0x55732e6cb7bd2a804c16550a, + limb3: 0x2b4eb8db1be11375bddf5e3 }, r1a0: u384 { - limb0: 0xaaf69514a86dfe3988706b64, - limb1: 0x3e45f9ff5aad19601d65255, - limb2: 0xf64063953551b88a0b6c89ef, - limb3: 0xfbb3c98c45e7268ce7d6bf + limb0: 0x9982e10d15e300cfd8d68776, + limb1: 0x70b58432321aec231832c50d, + limb2: 0x2668317449e2202668fcd561, + limb3: 0x14882bfddd95ce2d288b6ecd }, r1a1: u384 { - limb0: 0x4941567a5baed5d39f05cffe, - limb1: 0xf2720e68cce20318a3e7cea7, - limb2: 0x2a0367214f830a7cd1d2bd9e, - limb3: 0x52442804a2eef17e18af027 + limb0: 0x3f5b1a3085c44dcb84b9c0c8, + limb1: 0xeb5b9be908981cec3f54d648, + limb2: 0x7a193ea1a65c38f53d486a50, + limb3: 0x19b822dd548e13c098c72f8a } }, G2Line { r0a0: u384 { - limb0: 0x96d333f348ab469d52b327f1, - limb1: 0xda660803b96efc7454bb8b3, - limb2: 0x4b6a73c0b683bcf0288508e2, - limb3: 0xf69f70001c8711d2cfef86c + limb0: 0x7fdf0e56a1c1d3110ba4260d, + limb1: 0xd7b8c4a9fe5a6e9b44210924, + limb2: 0x2bfba36b4954158eb4c73b22, + limb3: 0xacb07907bdcee849367f937 }, r0a1: u384 { - limb0: 0xabcc1420dc245945867da7ed, - limb1: 0xcda1fe99dd93e3fba4ed3da2, - limb2: 0xa9f6c3598e5ff501fecaae16, - limb3: 0x92c05b8dbb1ff409b7a6a6f + limb0: 0x768c8e90c36b2890abca51dd, + limb1: 0xcd07d9d3bccf2a4f5027d33c, + limb2: 0x7cbb12139e4b5bf8ba947f0, + limb3: 0x5c2617a8208cdb2b642beeb }, r1a0: u384 { - limb0: 0x1c10a332ae8c4121c8073803, - limb1: 0xfaaaebf366999894125809ae, - limb2: 0x790a4edd3548b69f66104c10, - limb3: 0xa5e8a0a3b8325e978f2746b + limb0: 0x9e8c9253e3c8023a2f2aa66f, + limb1: 0x3194df8addbcbab5ecfa8b5c, + limb2: 0xa436bd1a206b054f497d66e4, + limb3: 0x4f188382916484a5bf6a96c }, r1a1: u384 { - limb0: 0x91a432070de0e551b54f8a81, - limb1: 0x2224f7f73cd377ea538893e6, - limb2: 0x8fc3c6ebaa4fa8c9c04216e6, - limb3: 0x7b460c6f48dc31d3afe3af1 + limb0: 0x7609e06b959844df28542750, + limb1: 0x8ca7a27304fe438fd5153ca0, + limb2: 0xad919b625bb21d78bab24e69, + limb3: 0x121fd65b618e8f232fa5d543 } }, G2Line { r0a0: u384 { - limb0: 0x96d333f348ab469d52b327f1, - limb1: 0xda660803b96efc7454bb8b3, - limb2: 0x4b6a73c0b683bcf0288508e2, - limb3: 0xf69f70001c8711d2cfef86c + limb0: 0x7fdf0e56a1c1d3110ba4260d, + limb1: 0xd7b8c4a9fe5a6e9b44210924, + limb2: 0x2bfba36b4954158eb4c73b22, + limb3: 0xacb07907bdcee849367f937 }, r0a1: u384 { - limb0: 0xabcc1420dc245945867da7ed, - limb1: 0xcda1fe99dd93e3fba4ed3da2, - limb2: 0xa9f6c3598e5ff501fecaae16, - limb3: 0x92c05b8dbb1ff409b7a6a6f + limb0: 0x768c8e90c36b2890abca51dd, + limb1: 0xcd07d9d3bccf2a4f5027d33c, + limb2: 0x7cbb12139e4b5bf8ba947f0, + limb3: 0x5c2617a8208cdb2b642beeb }, r1a0: u384 { - limb0: 0x1c10a332ae8c4121c8073803, - limb1: 0xfaaaebf366999894125809ae, - limb2: 0x790a4edd3548b69f66104c10, - limb3: 0xa5e8a0a3b8325e978f2746b + limb0: 0x9e8c9253e3c8023a2f2aa66f, + limb1: 0x3194df8addbcbab5ecfa8b5c, + limb2: 0xa436bd1a206b054f497d66e4, + limb3: 0x4f188382916484a5bf6a96c }, r1a1: u384 { - limb0: 0x91a432070de0e551b54f8a81, - limb1: 0x2224f7f73cd377ea538893e6, - limb2: 0x8fc3c6ebaa4fa8c9c04216e6, - limb3: 0x7b460c6f48dc31d3afe3af1 + limb0: 0x7609e06b959844df28542750, + limb1: 0x8ca7a27304fe438fd5153ca0, + limb2: 0xad919b625bb21d78bab24e69, + limb3: 0x121fd65b618e8f232fa5d543 } }, G2Line { r0a0: u384 { - limb0: 0x124e68199b5888a5b171dfff, - limb1: 0xa9455bda0c2516bb69d1459c, - limb2: 0x34bb64990f7f29fac1f70ac3, - limb3: 0xd10767d9856205835ab0a70 + limb0: 0x7777d2394e4f18a5d99b51db, + limb1: 0xd9e8abb0173ed5208964c127, + limb2: 0x82cac7aee8e30278ef5cbc09, + limb3: 0xbbde0839a75a4cf4a4c1fef }, r0a1: u384 { - limb0: 0xf00dc9b1417377a5b07da88d, - limb1: 0x3920aa37b471f0c412b2861d, - limb2: 0xf9913c9bc1231af122aefa3, - limb3: 0x519f855fb87fc2160444f10 + limb0: 0x2f85513ab5b05d6113edbb43, + limb1: 0xbf1efed0c6a578f2bb24a7b, + limb2: 0x5a5eda3726099aa87965325b, + limb3: 0xe1e3124312b82cfc6b217f1 }, r1a0: u384 { - limb0: 0x48aefaa1c9ce58dd0ada131d, - limb1: 0x20427834c82579bd2dbb488, - limb2: 0xe82a16b040bc2dd1c3192a59, - limb3: 0x59fa1dbe04e865468907dae + limb0: 0x4f4d38c4873e2cf2bd2633e7, + limb1: 0xe4511a2f3d747298bac26e42, + limb2: 0x8715a0465400e72db2a63977, + limb3: 0x2f8071d7247b5f7bea65ea0 }, r1a1: u384 { - limb0: 0x2f859bf80fdc910b5f7ba094, - limb1: 0x97107fa171ac8a13856e51e8, - limb2: 0x4c359c4f7b688a194024fa30, - limb3: 0x16f6e652fa53b3e403b60770 + limb0: 0x6bf4e0d2bf19e5cafbedd17b, + limb1: 0xedf09ebbe9440879ea5f1215, + limb2: 0xf986f14e06b41134d52c81d6, + limb3: 0x223887ca9c0245f4140cffa } }, G2Line { r0a0: u384 { - limb0: 0x124e68199b5888a5b171dfff, - limb1: 0xa9455bda0c2516bb69d1459c, - limb2: 0x34bb64990f7f29fac1f70ac3, - limb3: 0xd10767d9856205835ab0a70 + limb0: 0x7777d2394e4f18a5d99b51db, + limb1: 0xd9e8abb0173ed5208964c127, + limb2: 0x82cac7aee8e30278ef5cbc09, + limb3: 0xbbde0839a75a4cf4a4c1fef }, r0a1: u384 { - limb0: 0xf00dc9b1417377a5b07da88d, - limb1: 0x3920aa37b471f0c412b2861d, - limb2: 0xf9913c9bc1231af122aefa3, - limb3: 0x519f855fb87fc2160444f10 + limb0: 0x2f85513ab5b05d6113edbb43, + limb1: 0xbf1efed0c6a578f2bb24a7b, + limb2: 0x5a5eda3726099aa87965325b, + limb3: 0xe1e3124312b82cfc6b217f1 }, r1a0: u384 { - limb0: 0x48aefaa1c9ce58dd0ada131d, - limb1: 0x20427834c82579bd2dbb488, - limb2: 0xe82a16b040bc2dd1c3192a59, - limb3: 0x59fa1dbe04e865468907dae + limb0: 0x4f4d38c4873e2cf2bd2633e7, + limb1: 0xe4511a2f3d747298bac26e42, + limb2: 0x8715a0465400e72db2a63977, + limb3: 0x2f8071d7247b5f7bea65ea0 }, r1a1: u384 { - limb0: 0x2f859bf80fdc910b5f7ba094, - limb1: 0x97107fa171ac8a13856e51e8, - limb2: 0x4c359c4f7b688a194024fa30, - limb3: 0x16f6e652fa53b3e403b60770 + limb0: 0x6bf4e0d2bf19e5cafbedd17b, + limb1: 0xedf09ebbe9440879ea5f1215, + limb2: 0xf986f14e06b41134d52c81d6, + limb3: 0x223887ca9c0245f4140cffa } }, G2Line { r0a0: u384 { - limb0: 0x1ad978a58a9e3e01148c7517, - limb1: 0xe88146c23a876f2f1950da07, - limb2: 0x107dad4164bd85a4ea4e72, - limb3: 0x1832e7c5f018a36fee63a040 + limb0: 0x556f9d2a0ab73fe551363214, + limb1: 0x8a3b1c85360a55a0ffafc1c3, + limb2: 0x317646051a03e24fc653cdab, + limb3: 0x13d28c06cb2f2bb1e7883dc2 }, r0a1: u384 { - limb0: 0xb2f2036be54f581016f75c0e, - limb1: 0x6a249cff0f29d2f7fdb83508, - limb2: 0x5baa8d930eb8c94bd1229daf, - limb3: 0x1c2617823b384ec90dc8838 + limb0: 0x5f0b08a7365340a3c8b75dc2, + limb1: 0x57b4399817c86f17d7577624, + limb2: 0x48096e1c30fbf91be427a218, + limb3: 0x180ac39e5bee59bf9aa2a4f0 }, r1a0: u384 { - limb0: 0xa338e113bb1549e92bf03011, - limb1: 0x557f252ce2bc4a8e3bc1671, - limb2: 0x204f04ba1376d9c0b724977f, - limb3: 0x9d174f1c2de86b510e30022 + limb0: 0x9be051426e477304016d1e55, + limb1: 0xfa2f361d5b04827827c02fbd, + limb2: 0x1d438d1a2ad19fa30a7e38b4, + limb3: 0xa1888fa2112627d9831c11f }, r1a1: u384 { - limb0: 0x5f2f25dbb9493dc311f0fc87, - limb1: 0x36f90273fc629b63b6b4b139, - limb2: 0xc664cf636fcfbb64d9c4547c, - limb3: 0x143f4a543a989923ebd728b2 + limb0: 0xd941e4486a728f0dedefc716, + limb1: 0x1c109b8f53ecba35b52c4693, + limb2: 0x8f0972e58c139cb8f54cfc55, + limb3: 0x923913cd439c6a8613fd04f } }, G2Line { r0a0: u384 { - limb0: 0x1ad978a58a9e3e01148c7517, - limb1: 0xe88146c23a876f2f1950da07, - limb2: 0x107dad4164bd85a4ea4e72, - limb3: 0x1832e7c5f018a36fee63a040 + limb0: 0x556f9d2a0ab73fe551363214, + limb1: 0x8a3b1c85360a55a0ffafc1c3, + limb2: 0x317646051a03e24fc653cdab, + limb3: 0x13d28c06cb2f2bb1e7883dc2 }, r0a1: u384 { - limb0: 0xb2f2036be54f581016f75c0e, - limb1: 0x6a249cff0f29d2f7fdb83508, - limb2: 0x5baa8d930eb8c94bd1229daf, - limb3: 0x1c2617823b384ec90dc8838 + limb0: 0x5f0b08a7365340a3c8b75dc2, + limb1: 0x57b4399817c86f17d7577624, + limb2: 0x48096e1c30fbf91be427a218, + limb3: 0x180ac39e5bee59bf9aa2a4f0 }, r1a0: u384 { - limb0: 0xa338e113bb1549e92bf03011, - limb1: 0x557f252ce2bc4a8e3bc1671, - limb2: 0x204f04ba1376d9c0b724977f, - limb3: 0x9d174f1c2de86b510e30022 + limb0: 0x9be051426e477304016d1e55, + limb1: 0xfa2f361d5b04827827c02fbd, + limb2: 0x1d438d1a2ad19fa30a7e38b4, + limb3: 0xa1888fa2112627d9831c11f }, r1a1: u384 { - limb0: 0x5f2f25dbb9493dc311f0fc87, - limb1: 0x36f90273fc629b63b6b4b139, - limb2: 0xc664cf636fcfbb64d9c4547c, - limb3: 0x143f4a543a989923ebd728b2 + limb0: 0xd941e4486a728f0dedefc716, + limb1: 0x1c109b8f53ecba35b52c4693, + limb2: 0x8f0972e58c139cb8f54cfc55, + limb3: 0x923913cd439c6a8613fd04f } }, G2Line { r0a0: u384 { - limb0: 0xe4d664f988ac630c0bfc05e1, - limb1: 0xc80e8cf0a4bb340f3fe705c, - limb2: 0x13af4de805f2cfd0990d2a19, - limb3: 0xdc2ad0787f017453e1d378 + limb0: 0xe18e5aab6316a2e6fff04479, + limb1: 0x5bc82a7660d3e0d96a08348, + limb2: 0xe311fe7fd20ffc8bac75767, + limb3: 0x121a9dd300bf31d06152f338 }, r0a1: u384 { - limb0: 0x61b0af3e6ddd56b8b73c9ce2, - limb1: 0xc57ede19f178404072b1b52f, - limb2: 0xdb944f07cee6c6de9c70c368, - limb3: 0xfaf46b4ccced5d4689e59e8 + limb0: 0x590212f6eb73ae83c8421d59, + limb1: 0xf7163fdef0dcc7eb8c52c09, + limb2: 0x7f351d3e3a7cd3ca02268f06, + limb3: 0x90fe23552205d334f424a0d }, r1a0: u384 { - limb0: 0xe81326fce7ede44e42c898c0, - limb1: 0x1c31410cba31a7259cb9148, - limb2: 0xb7546503c19a13032ed99220, - limb3: 0x1d1774c272e0e65b78aebcc + limb0: 0x336421284716d869c81cf464, + limb1: 0x837739bdd48a0d6e0a1f8887, + limb2: 0x7d8469e30a5c94abf87150d8, + limb3: 0x364b9ead996ca9b0f588ca3 }, r1a1: u384 { - limb0: 0xff75f0c3680743999dcdce04, - limb1: 0xeb1980401b0d6d0eacd5009b, - limb2: 0x429ca2124874db281c280398, - limb3: 0xcdf8de70d3cc8694df6cd92 + limb0: 0xe1a1b9378ec2f8a72e13ee71, + limb1: 0x28b53f2fba9a46f6808b4a52, + limb2: 0x9bf7a1255a66a2b7c9d9aaab, + limb3: 0x4155ae0717f1a22e6003658 } }, G2Line { r0a0: u384 { - limb0: 0xe4d664f988ac630c0bfc05e1, - limb1: 0xc80e8cf0a4bb340f3fe705c, - limb2: 0x13af4de805f2cfd0990d2a19, - limb3: 0xdc2ad0787f017453e1d378 + limb0: 0xe18e5aab6316a2e6fff04479, + limb1: 0x5bc82a7660d3e0d96a08348, + limb2: 0xe311fe7fd20ffc8bac75767, + limb3: 0x121a9dd300bf31d06152f338 }, r0a1: u384 { - limb0: 0x61b0af3e6ddd56b8b73c9ce2, - limb1: 0xc57ede19f178404072b1b52f, - limb2: 0xdb944f07cee6c6de9c70c368, - limb3: 0xfaf46b4ccced5d4689e59e8 + limb0: 0x590212f6eb73ae83c8421d59, + limb1: 0xf7163fdef0dcc7eb8c52c09, + limb2: 0x7f351d3e3a7cd3ca02268f06, + limb3: 0x90fe23552205d334f424a0d }, r1a0: u384 { - limb0: 0xe81326fce7ede44e42c898c0, - limb1: 0x1c31410cba31a7259cb9148, - limb2: 0xb7546503c19a13032ed99220, - limb3: 0x1d1774c272e0e65b78aebcc + limb0: 0x336421284716d869c81cf464, + limb1: 0x837739bdd48a0d6e0a1f8887, + limb2: 0x7d8469e30a5c94abf87150d8, + limb3: 0x364b9ead996ca9b0f588ca3 }, r1a1: u384 { - limb0: 0xff75f0c3680743999dcdce04, - limb1: 0xeb1980401b0d6d0eacd5009b, - limb2: 0x429ca2124874db281c280398, - limb3: 0xcdf8de70d3cc8694df6cd92 + limb0: 0xe1a1b9378ec2f8a72e13ee71, + limb1: 0x28b53f2fba9a46f6808b4a52, + limb2: 0x9bf7a1255a66a2b7c9d9aaab, + limb3: 0x4155ae0717f1a22e6003658 } }, G2Line { r0a0: u384 { - limb0: 0xfc238f0dba3f48d1c34bf23e, - limb1: 0xe8d0a1947f68f4d9d913e875, - limb2: 0x88ee0bbe58a7537715a6d2dd, - limb3: 0x53c22d060f376a84e84bfc0 + limb0: 0x171f9cb304514c6721303900, + limb1: 0x97bf3f7115e6050dc111679c, + limb2: 0xc7c222e7a0aea39d56b8845c, + limb3: 0x2280a70f31e3773648a36e6 }, r0a1: u384 { - limb0: 0xc80b3af2b47cfb96d54606ac, - limb1: 0xe6baa0f8647bf7506500cafe, - limb2: 0x1d827c8b5b57ea131d9ca98d, - limb3: 0x125ac4f95d6a5c708c4b27ed + limb0: 0x20063ecf0ce1b895db1208a2, + limb1: 0x18c15cfea29e44959811a05, + limb2: 0x41932028d8b8df5687382c97, + limb3: 0x1938329909bc6e8d978e5fa9 }, r1a0: u384 { - limb0: 0x65329a2dfa8309ff89516b35, - limb1: 0x58e717bb89af2f7471502fab, - limb2: 0x96d30507ca2078b9926b8821, - limb3: 0x7236c4069408b5c628af9a1 + limb0: 0x6f3b64608aa63d3e10fec8b6, + limb1: 0x8f53f52eeca6646136030bef, + limb2: 0x1b4a0dc4501f77ea626edbe4, + limb3: 0xe0d0a0a8b6cff33e91a55ba }, r1a1: u384 { - limb0: 0x49fd64d1f564f38683972f23, - limb1: 0x8e219c1371873bc81b03bdf4, - limb2: 0xdf87bd8190e14959f420f3b4, - limb3: 0x12ac7310ca0a48be8ee96bb1 + limb0: 0xc7c01f87f16016db8c8983ec, + limb1: 0x90c846f48f09a05ea9d488eb, + limb2: 0x94aa5f50050f824f841150f8, + limb3: 0x161bdd9e9e44c7bc790b7d9f } }, G2Line { r0a0: u384 { - limb0: 0xfc238f0dba3f48d1c34bf23e, - limb1: 0xe8d0a1947f68f4d9d913e875, - limb2: 0x88ee0bbe58a7537715a6d2dd, - limb3: 0x53c22d060f376a84e84bfc0 + limb0: 0x171f9cb304514c6721303900, + limb1: 0x97bf3f7115e6050dc111679c, + limb2: 0xc7c222e7a0aea39d56b8845c, + limb3: 0x2280a70f31e3773648a36e6 }, r0a1: u384 { - limb0: 0xc80b3af2b47cfb96d54606ac, - limb1: 0xe6baa0f8647bf7506500cafe, - limb2: 0x1d827c8b5b57ea131d9ca98d, - limb3: 0x125ac4f95d6a5c708c4b27ed + limb0: 0x20063ecf0ce1b895db1208a2, + limb1: 0x18c15cfea29e44959811a05, + limb2: 0x41932028d8b8df5687382c97, + limb3: 0x1938329909bc6e8d978e5fa9 }, r1a0: u384 { - limb0: 0x65329a2dfa8309ff89516b35, - limb1: 0x58e717bb89af2f7471502fab, - limb2: 0x96d30507ca2078b9926b8821, - limb3: 0x7236c4069408b5c628af9a1 + limb0: 0x6f3b64608aa63d3e10fec8b6, + limb1: 0x8f53f52eeca6646136030bef, + limb2: 0x1b4a0dc4501f77ea626edbe4, + limb3: 0xe0d0a0a8b6cff33e91a55ba }, r1a1: u384 { - limb0: 0x49fd64d1f564f38683972f23, - limb1: 0x8e219c1371873bc81b03bdf4, - limb2: 0xdf87bd8190e14959f420f3b4, - limb3: 0x12ac7310ca0a48be8ee96bb1 + limb0: 0xc7c01f87f16016db8c8983ec, + limb1: 0x90c846f48f09a05ea9d488eb, + limb2: 0x94aa5f50050f824f841150f8, + limb3: 0x161bdd9e9e44c7bc790b7d9f } }, G2Line { r0a0: u384 { - limb0: 0xa3d3b2ff4f4a15f4b8021fc7, - limb1: 0x50f6986233acdf28aff2ca0c, - limb2: 0x5c97e41891c6c0dc56ae15de, - limb3: 0x5a6de73f3f95b808d6b9515 + limb0: 0x81601eb23cd40850588b9fc9, + limb1: 0x77fa411493cbdde689043915, + limb2: 0x66f3b03c202a23b0d0ea4370, + limb3: 0x2bc1652696fc5b1a9a912db }, r0a1: u384 { - limb0: 0xb4a64161f7326459ae11234b, - limb1: 0x560290c2943f18b3e7163833, - limb2: 0x5bbc482eb72b52e51806f4b6, - limb3: 0x721a17abc95ccc2f64376e9 + limb0: 0x4f23b14f7305313300851b87, + limb1: 0x9c6e6dde8910bfebca6cd4a3, + limb2: 0xd06d66dfb8948490c172080f, + limb3: 0x1793e66f9606aaa2fff627ea }, r1a0: u384 { - limb0: 0xaefa5fde6d29ff4fe128672d, - limb1: 0xa8d9e9c91619a3a3c671c8b9, - limb2: 0x144e4ffdbce6d5a42a22f5a1, - limb3: 0x17e2d565fcf90edb2d6b3c99 + limb0: 0xad4c61e92b709cc3d2f0307, + limb1: 0xac728b0e867a1b0fc0e62861, + limb2: 0x6d39493fdaf9fc8dc16803c2, + limb3: 0xc7281bcae3b9a09a2ad8bdd }, r1a1: u384 { - limb0: 0x7c566b24a1933b550f1e4496, - limb1: 0x9eec560ac0ea3cc601f2b382, - limb2: 0x390e7f7fabde86aa850fd4c6, - limb3: 0x121fd3ee96399831b6f4a2dc + limb0: 0x55970e7cdff864bbf31a0105, + limb1: 0xcef779022a78d8a1b396cf98, + limb2: 0x555b1475fefd61eaab373aa6, + limb3: 0x2b6958cd42505b8543b6340 } }, G2Line { r0a0: u384 { - limb0: 0xa3d3b2ff4f4a15f4b8021fc7, - limb1: 0x50f6986233acdf28aff2ca0c, - limb2: 0x5c97e41891c6c0dc56ae15de, - limb3: 0x5a6de73f3f95b808d6b9515 + limb0: 0x81601eb23cd40850588b9fc9, + limb1: 0x77fa411493cbdde689043915, + limb2: 0x66f3b03c202a23b0d0ea4370, + limb3: 0x2bc1652696fc5b1a9a912db }, r0a1: u384 { - limb0: 0xb4a64161f7326459ae11234b, - limb1: 0x560290c2943f18b3e7163833, - limb2: 0x5bbc482eb72b52e51806f4b6, - limb3: 0x721a17abc95ccc2f64376e9 + limb0: 0x4f23b14f7305313300851b87, + limb1: 0x9c6e6dde8910bfebca6cd4a3, + limb2: 0xd06d66dfb8948490c172080f, + limb3: 0x1793e66f9606aaa2fff627ea }, r1a0: u384 { - limb0: 0xaefa5fde6d29ff4fe128672d, - limb1: 0xa8d9e9c91619a3a3c671c8b9, - limb2: 0x144e4ffdbce6d5a42a22f5a1, - limb3: 0x17e2d565fcf90edb2d6b3c99 + limb0: 0xad4c61e92b709cc3d2f0307, + limb1: 0xac728b0e867a1b0fc0e62861, + limb2: 0x6d39493fdaf9fc8dc16803c2, + limb3: 0xc7281bcae3b9a09a2ad8bdd }, r1a1: u384 { - limb0: 0x7c566b24a1933b550f1e4496, - limb1: 0x9eec560ac0ea3cc601f2b382, - limb2: 0x390e7f7fabde86aa850fd4c6, - limb3: 0x121fd3ee96399831b6f4a2dc + limb0: 0x55970e7cdff864bbf31a0105, + limb1: 0xcef779022a78d8a1b396cf98, + limb2: 0x555b1475fefd61eaab373aa6, + limb3: 0x2b6958cd42505b8543b6340 } }, G2Line { r0a0: u384 { - limb0: 0x1ea38f511f4742017e05188b, - limb1: 0x189ac32d4ae45cab24c17a2a, - limb2: 0x43a671f0d80170ac8c24807, - limb3: 0x6b876cd4d8b562e89c2759c + limb0: 0x67068eee99d3ecc49bb56857, + limb1: 0xdb7677c4aa22569099f2be9c, + limb2: 0x9fd7de4747c30f16c1f85c71, + limb3: 0xc70d26c56b98ababe9a2a5 }, r0a1: u384 { - limb0: 0x84d94b16accaf115aa71be5b, - limb1: 0xd6538fff02f416e554f761c8, - limb2: 0xd26e8ecd39889bbc60eed903, - limb3: 0x3f94ecb51a1b547f5981a0c + limb0: 0x29a9894b17dcb46fe3415343, + limb1: 0xf61b45e97e240a20caf0fd11, + limb2: 0x9ee0767db6b47fe85a2cfd38, + limb3: 0x5d6a93e292110fcdcff1ac7 }, r1a0: u384 { - limb0: 0xd4af61fe9a5a66d3b92ae682, - limb1: 0x91e638d8419507555de0c12c, - limb2: 0x4e84833a0fec1022c3fed8f4, - limb3: 0x65d34a535e87755b6c9cea3 + limb0: 0x8ff88a300f1bf3e071f1dc84, + limb1: 0xc6511034401c5fabc0030fab, + limb2: 0x573001457d3e217db60cb64, + limb3: 0x247999b38e7adcfa43d5ed1 }, r1a1: u384 { - limb0: 0xb65b37011b2670efb73a7a26, - limb1: 0x3ae1f6c65a82ed6e08f3dbff, - limb2: 0x3ffba6cf825aa486dbeb82d8, - limb3: 0x16365185028308c6546154e5 + limb0: 0x40ba9bb59ae7699a5ab1e5a0, + limb1: 0xcab3e88958351eae1a47a51f, + limb2: 0x255c2105e645950f7578acc, + limb3: 0x13b8761c49cd7a07712bec62 } }, G2Line { r0a0: u384 { - limb0: 0x1ea38f511f4742017e05188b, - limb1: 0x189ac32d4ae45cab24c17a2a, - limb2: 0x43a671f0d80170ac8c24807, - limb3: 0x6b876cd4d8b562e89c2759c + limb0: 0x67068eee99d3ecc49bb56857, + limb1: 0xdb7677c4aa22569099f2be9c, + limb2: 0x9fd7de4747c30f16c1f85c71, + limb3: 0xc70d26c56b98ababe9a2a5 }, r0a1: u384 { - limb0: 0x84d94b16accaf115aa71be5b, - limb1: 0xd6538fff02f416e554f761c8, - limb2: 0xd26e8ecd39889bbc60eed903, - limb3: 0x3f94ecb51a1b547f5981a0c + limb0: 0x29a9894b17dcb46fe3415343, + limb1: 0xf61b45e97e240a20caf0fd11, + limb2: 0x9ee0767db6b47fe85a2cfd38, + limb3: 0x5d6a93e292110fcdcff1ac7 }, r1a0: u384 { - limb0: 0xd4af61fe9a5a66d3b92ae682, - limb1: 0x91e638d8419507555de0c12c, - limb2: 0x4e84833a0fec1022c3fed8f4, - limb3: 0x65d34a535e87755b6c9cea3 + limb0: 0x8ff88a300f1bf3e071f1dc84, + limb1: 0xc6511034401c5fabc0030fab, + limb2: 0x573001457d3e217db60cb64, + limb3: 0x247999b38e7adcfa43d5ed1 }, r1a1: u384 { - limb0: 0xb65b37011b2670efb73a7a26, - limb1: 0x3ae1f6c65a82ed6e08f3dbff, - limb2: 0x3ffba6cf825aa486dbeb82d8, - limb3: 0x16365185028308c6546154e5 + limb0: 0x40ba9bb59ae7699a5ab1e5a0, + limb1: 0xcab3e88958351eae1a47a51f, + limb2: 0x255c2105e645950f7578acc, + limb3: 0x13b8761c49cd7a07712bec62 } }, G2Line { r0a0: u384 { - limb0: 0x65876119baa3d36cbafa730d, - limb1: 0x915a0181a43911c131ff691f, - limb2: 0x9a0e0b3b5a083811088ec139, - limb3: 0x103ab909ffbc8cb4020adfe1 + limb0: 0x880d3bd4ccf9a0fe968e8789, + limb1: 0xa0711d2ba345e231aaa713a0, + limb2: 0x7aa1f1aac9417674a581278b, + limb3: 0xdcc73a29237984356e9fb8a }, r0a1: u384 { - limb0: 0x9739d40cd39cbab3c1c7d49c, - limb1: 0x42c2ceabd2daf999bb88654c, - limb2: 0x4d20fd52fe7aaadd6437984e, - limb3: 0x19b5bf3525c44a61c5ba91c8 + limb0: 0xf6a6d3c56a77192fb2c758b4, + limb1: 0x45dd2f0e70c486a3fe65156, + limb2: 0xd09059fcb6597094a52474c, + limb3: 0xbddfc89a6ea77681408e2a4 }, r1a0: u384 { - limb0: 0x586b3fcfc0b89691b942b690, - limb1: 0xb4e46c36a79fa80c94256970, - limb2: 0xaf9771a5fe48cb657e15fa25, - limb3: 0x172da1cea09920e01aa639cb + limb0: 0x2c86f978acc27b031356a741, + limb1: 0x44cca98efe5f36f4bacf262c, + limb2: 0x609261dcca85611963c6e1eb, + limb3: 0x171898b7c8de046ec04fe57c }, r1a1: u384 { - limb0: 0xc577e8408d74bf9ab943dd79, - limb1: 0xede8b5ce1bc11882b417e785, - limb2: 0x8c7576d9f6aaa36ca5e8de68, - limb3: 0x1910d7dc9c750d874aa1ca42 + limb0: 0xc685220f17669cc13e570e2e, + limb1: 0xff3f939748e717e405ca648e, + limb2: 0xde8f8801350a0975673698fc, + limb3: 0x86cd8199be5cf10b013e537 } }, G2Line { r0a0: u384 { - limb0: 0x65876119baa3d36cbafa730d, - limb1: 0x915a0181a43911c131ff691f, - limb2: 0x9a0e0b3b5a083811088ec139, - limb3: 0x103ab909ffbc8cb4020adfe1 + limb0: 0x880d3bd4ccf9a0fe968e8789, + limb1: 0xa0711d2ba345e231aaa713a0, + limb2: 0x7aa1f1aac9417674a581278b, + limb3: 0xdcc73a29237984356e9fb8a }, r0a1: u384 { - limb0: 0x9739d40cd39cbab3c1c7d49c, - limb1: 0x42c2ceabd2daf999bb88654c, - limb2: 0x4d20fd52fe7aaadd6437984e, - limb3: 0x19b5bf3525c44a61c5ba91c8 + limb0: 0xf6a6d3c56a77192fb2c758b4, + limb1: 0x45dd2f0e70c486a3fe65156, + limb2: 0xd09059fcb6597094a52474c, + limb3: 0xbddfc89a6ea77681408e2a4 }, r1a0: u384 { - limb0: 0x586b3fcfc0b89691b942b690, - limb1: 0xb4e46c36a79fa80c94256970, - limb2: 0xaf9771a5fe48cb657e15fa25, - limb3: 0x172da1cea09920e01aa639cb + limb0: 0x2c86f978acc27b031356a741, + limb1: 0x44cca98efe5f36f4bacf262c, + limb2: 0x609261dcca85611963c6e1eb, + limb3: 0x171898b7c8de046ec04fe57c }, r1a1: u384 { - limb0: 0xc577e8408d74bf9ab943dd79, - limb1: 0xede8b5ce1bc11882b417e785, - limb2: 0x8c7576d9f6aaa36ca5e8de68, - limb3: 0x1910d7dc9c750d874aa1ca42 + limb0: 0xc685220f17669cc13e570e2e, + limb1: 0xff3f939748e717e405ca648e, + limb2: 0xde8f8801350a0975673698fc, + limb3: 0x86cd8199be5cf10b013e537 } }, G2Line { r0a0: u384 { - limb0: 0x5a08ea9028bf2cf6dfe8319d, - limb1: 0xc103188ac7d286f9365dc809, - limb2: 0x86f86f73db9cc71cd5c278db, - limb3: 0x100d987b189d56d37ab9a04d + limb0: 0x2b6428454548c0190366213a, + limb1: 0x3e3544fc8419633d652850e2, + limb2: 0x88eb1dfe0139085d74d1d2c, + limb3: 0x181954091b061016af7561f7 }, r0a1: u384 { - limb0: 0x13cd69d45b89a071a9a916a4, - limb1: 0x7775978b4b7b49aa2f68f13b, - limb2: 0x2e68d26d7b3ecbc94b886f9d, - limb3: 0x12d7cc41746617fdc397f0ce + limb0: 0xa57485995c10c639ef0d2920, + limb1: 0x568a647012dec6277296aaf1, + limb2: 0xcbf03ae9f55b5ab12ca787f7, + limb3: 0xdeaf7d0b57b07347a51d1c5 }, r1a0: u384 { - limb0: 0xf68b98dc949aac04f1b6585b, - limb1: 0x24a28a399e7c5a0ace6d0a35, - limb2: 0xcd8b22581446aafa761ff070, - limb3: 0x17eec25922aa619745648fba + limb0: 0xc242889b9f1dd238037b4882, + limb1: 0xed9bc19af6c6415499772fc3, + limb2: 0x90b9fdc6818d6b1c7ea49cb0, + limb3: 0x5e40de9e6122f0a5de2d09e }, r1a1: u384 { - limb0: 0x713ff32de85cd04c28aabf24, - limb1: 0xbecde634189fa1c9bb4f6dd1, - limb2: 0x7620e24203f4cb8f10e3f44c, - limb3: 0x3787937b2867bb27557c67c + limb0: 0x9bd94b666295b8f2a3f2176b, + limb1: 0xa59876c08e22a3e1c7a824d7, + limb2: 0x14575edbbc267b0ec0e6d689, + limb3: 0x1123a0734a97e69f73c5347c } }, G2Line { r0a0: u384 { - limb0: 0x5a08ea9028bf2cf6dfe8319d, - limb1: 0xc103188ac7d286f9365dc809, - limb2: 0x86f86f73db9cc71cd5c278db, - limb3: 0x100d987b189d56d37ab9a04d + limb0: 0x2b6428454548c0190366213a, + limb1: 0x3e3544fc8419633d652850e2, + limb2: 0x88eb1dfe0139085d74d1d2c, + limb3: 0x181954091b061016af7561f7 }, r0a1: u384 { - limb0: 0x13cd69d45b89a071a9a916a4, - limb1: 0x7775978b4b7b49aa2f68f13b, - limb2: 0x2e68d26d7b3ecbc94b886f9d, - limb3: 0x12d7cc41746617fdc397f0ce + limb0: 0xa57485995c10c639ef0d2920, + limb1: 0x568a647012dec6277296aaf1, + limb2: 0xcbf03ae9f55b5ab12ca787f7, + limb3: 0xdeaf7d0b57b07347a51d1c5 }, r1a0: u384 { - limb0: 0xf68b98dc949aac04f1b6585b, - limb1: 0x24a28a399e7c5a0ace6d0a35, - limb2: 0xcd8b22581446aafa761ff070, - limb3: 0x17eec25922aa619745648fba + limb0: 0xc242889b9f1dd238037b4882, + limb1: 0xed9bc19af6c6415499772fc3, + limb2: 0x90b9fdc6818d6b1c7ea49cb0, + limb3: 0x5e40de9e6122f0a5de2d09e }, r1a1: u384 { - limb0: 0x713ff32de85cd04c28aabf24, - limb1: 0xbecde634189fa1c9bb4f6dd1, - limb2: 0x7620e24203f4cb8f10e3f44c, - limb3: 0x3787937b2867bb27557c67c + limb0: 0x9bd94b666295b8f2a3f2176b, + limb1: 0xa59876c08e22a3e1c7a824d7, + limb2: 0x14575edbbc267b0ec0e6d689, + limb3: 0x1123a0734a97e69f73c5347c } }, G2Line { r0a0: u384 { - limb0: 0x12796787356b3e5dafda6b2d, - limb1: 0x1f33fab56a214e53c04f5d93, - limb2: 0x2177049b6983b7dba2f220fd, - limb3: 0x112d7d50401d8a9e8304eea0 + limb0: 0x34e8cb198eace82121bc7c27, + limb1: 0x736cd48794b372be307b50ce, + limb2: 0x35343b387964ae3a3a000b07, + limb3: 0x1e4f8f3259be5e7ea6e5c1c }, r0a1: u384 { - limb0: 0x2f7f8cc4a572d7815e5a56ac, - limb1: 0x2ef935261c9ef28354184555, - limb2: 0x614529e053a209292acc699c, - limb3: 0x10ddf8152390ff41524d0e02 + limb0: 0xeb720db4b70393977b0590f5, + limb1: 0x281ea010a33bbcc0f60b1010, + limb2: 0x850fdb0c6c5985e350b0594b, + limb3: 0xdccb3239aef9fb3ea99925c }, r1a0: u384 { - limb0: 0x8f6b15e1ca028994063d14, - limb1: 0xd0b1d35f1e3c4c4190f5cb1c, - limb2: 0x85c5f4e27dd1982277605d34, - limb3: 0x16c3483ebba2b25df9e9c6 + limb0: 0x11ad841cbc930345696d571, + limb1: 0xc07c51bf9f61e486567931c3, + limb2: 0x8393343949c8d5beec6566df, + limb3: 0x10940a12b57177b3ac1a153b }, r1a1: u384 { - limb0: 0x570340546efa866989c11280, - limb1: 0x8af4c66b6ec404601d57ec4f, - limb2: 0x9ae4df79e9da0f62bfca6ea7, - limb3: 0xde52bd297427300a357e41b + limb0: 0x4653b6e99e52101cd422766d, + limb1: 0x427722f626a1dfc2d8c986ad, + limb2: 0xc804620e50af95d375861be0, + limb3: 0x87ab7b6d29766eda6303b59 } }, G2Line { r0a0: u384 { - limb0: 0x12796787356b3e5dafda6b2d, - limb1: 0x1f33fab56a214e53c04f5d93, - limb2: 0x2177049b6983b7dba2f220fd, - limb3: 0x112d7d50401d8a9e8304eea0 + limb0: 0x34e8cb198eace82121bc7c27, + limb1: 0x736cd48794b372be307b50ce, + limb2: 0x35343b387964ae3a3a000b07, + limb3: 0x1e4f8f3259be5e7ea6e5c1c }, r0a1: u384 { - limb0: 0x2f7f8cc4a572d7815e5a56ac, - limb1: 0x2ef935261c9ef28354184555, - limb2: 0x614529e053a209292acc699c, - limb3: 0x10ddf8152390ff41524d0e02 + limb0: 0xeb720db4b70393977b0590f5, + limb1: 0x281ea010a33bbcc0f60b1010, + limb2: 0x850fdb0c6c5985e350b0594b, + limb3: 0xdccb3239aef9fb3ea99925c }, r1a0: u384 { - limb0: 0x8f6b15e1ca028994063d14, - limb1: 0xd0b1d35f1e3c4c4190f5cb1c, - limb2: 0x85c5f4e27dd1982277605d34, - limb3: 0x16c3483ebba2b25df9e9c6 + limb0: 0x11ad841cbc930345696d571, + limb1: 0xc07c51bf9f61e486567931c3, + limb2: 0x8393343949c8d5beec6566df, + limb3: 0x10940a12b57177b3ac1a153b }, r1a1: u384 { - limb0: 0x570340546efa866989c11280, - limb1: 0x8af4c66b6ec404601d57ec4f, - limb2: 0x9ae4df79e9da0f62bfca6ea7, - limb3: 0xde52bd297427300a357e41b + limb0: 0x4653b6e99e52101cd422766d, + limb1: 0x427722f626a1dfc2d8c986ad, + limb2: 0xc804620e50af95d375861be0, + limb3: 0x87ab7b6d29766eda6303b59 } }, G2Line { r0a0: u384 { - limb0: 0xbafab428f76b0fca7c6dc1f5, - limb1: 0xafd52f4ec99bff6cffda8f85, - limb2: 0xad0f69e528e877369e1256ff, - limb3: 0xfb2b20d3ab04d15f0ceda51 + limb0: 0x9c8b6e9a08eeeac9bd0192ac, + limb1: 0x900ddadd276dd8918c715b06, + limb2: 0x5fee3630aa0f5a1b6349f662, + limb3: 0x571366d8d4a8a29802bafcc }, r0a1: u384 { - limb0: 0x9f6fd12f53459e9fe2505a8, - limb1: 0x6bc668eb04cb035d5f904edb, - limb2: 0xad35e9f01d77e416ab09f56a, - limb3: 0x151cb369f89e3defba021d40 + limb0: 0xc55d0c8cd8e5b844ed0e9597, + limb1: 0xd903e49834da0723f7dc71ae, + limb2: 0x9a1929c2c5482c0ccbd3c1e4, + limb3: 0x15a86f4427e03193ee05977b }, r1a0: u384 { - limb0: 0xd169dbfddf539fde63823f2b, - limb1: 0x34b1b7ab606bf4af53abf25, - limb2: 0xd9a54eb6e2e7ca132813cf1f, - limb3: 0x2e8bd3e3bd9d101ce5d1b82 + limb0: 0xc218d6ff8e758eaa9701096e, + limb1: 0x4d3dad3ea10d6b7158021305, + limb2: 0x6baa4fb24382d5558044a8f3, + limb3: 0xc1acad482bd36419a1789a }, r1a1: u384 { - limb0: 0xbd336d3614b39a022a2fbe56, - limb1: 0x511b2c873bc9dd19d74d3593, - limb2: 0x66749446f63d2c08ad49aee2, - limb3: 0xa66af4ba2a8009113ff585d + limb0: 0x1511c691e271f96e5dda69d7, + limb1: 0xa8516f29b76b3e9df6da2694, + limb2: 0x68a8aa8a39b5d2e3f25f419b, + limb3: 0x7fc4bbf6a85913856d20ab6 } }, G2Line { r0a0: u384 { - limb0: 0xbafab428f76b0fca7c6dc1f5, - limb1: 0xafd52f4ec99bff6cffda8f85, - limb2: 0xad0f69e528e877369e1256ff, - limb3: 0xfb2b20d3ab04d15f0ceda51 + limb0: 0x9c8b6e9a08eeeac9bd0192ac, + limb1: 0x900ddadd276dd8918c715b06, + limb2: 0x5fee3630aa0f5a1b6349f662, + limb3: 0x571366d8d4a8a29802bafcc }, r0a1: u384 { - limb0: 0x9f6fd12f53459e9fe2505a8, - limb1: 0x6bc668eb04cb035d5f904edb, - limb2: 0xad35e9f01d77e416ab09f56a, - limb3: 0x151cb369f89e3defba021d40 + limb0: 0xc55d0c8cd8e5b844ed0e9597, + limb1: 0xd903e49834da0723f7dc71ae, + limb2: 0x9a1929c2c5482c0ccbd3c1e4, + limb3: 0x15a86f4427e03193ee05977b }, r1a0: u384 { - limb0: 0xd169dbfddf539fde63823f2b, - limb1: 0x34b1b7ab606bf4af53abf25, - limb2: 0xd9a54eb6e2e7ca132813cf1f, - limb3: 0x2e8bd3e3bd9d101ce5d1b82 + limb0: 0xc218d6ff8e758eaa9701096e, + limb1: 0x4d3dad3ea10d6b7158021305, + limb2: 0x6baa4fb24382d5558044a8f3, + limb3: 0xc1acad482bd36419a1789a }, r1a1: u384 { - limb0: 0xbd336d3614b39a022a2fbe56, - limb1: 0x511b2c873bc9dd19d74d3593, - limb2: 0x66749446f63d2c08ad49aee2, - limb3: 0xa66af4ba2a8009113ff585d + limb0: 0x1511c691e271f96e5dda69d7, + limb1: 0xa8516f29b76b3e9df6da2694, + limb2: 0x68a8aa8a39b5d2e3f25f419b, + limb3: 0x7fc4bbf6a85913856d20ab6 } }, G2Line { r0a0: u384 { - limb0: 0x52f31262cef04020d0699533, - limb1: 0xed9b41b8de47096b27878696, - limb2: 0x2228be361103fb58f763dabd, - limb3: 0x170fd8733d3e89a82b8904a5 + limb0: 0xb34f751dec1ef8dc2f2782b7, + limb1: 0x22aa7baef23a8f4e88a8e7dd, + limb2: 0xf1def2ce51b85fc6e7fe172d, + limb3: 0x18029bf4ca55e59cc1ed9c3a }, r0a1: u384 { - limb0: 0xfb81bb79d298504bc19c4a1c, - limb1: 0xb78d1f470fd5410ce16566c1, - limb2: 0x606cf7e0981f478662a8f2f0, - limb3: 0x1876b867b96e4a1fe6a9cfbe + limb0: 0x3c4ae4af7b0a9b4d40a1e7c8, + limb1: 0x731c8bfdc23929b96388f212, + limb2: 0x21834907a02f60bf62c0cbbb, + limb3: 0x15f74b484259f238cc258db8 }, r1a0: u384 { - limb0: 0xdc9ab5ff65457e5a75848740, - limb1: 0x6cb3a78f6a4de81a8656f9fc, - limb2: 0x19523068838ebe2c8d17f042, - limb3: 0x2657064ec962714326f514 + limb0: 0xce70896bd751d792fa6e66ef, + limb1: 0xa9733370fa0fa1f632b9ba6d, + limb2: 0x1062d33c7106fdebf0a2213e, + limb3: 0x7b7769a0a01150e92fa770d }, r1a1: u384 { - limb0: 0x8a62fcf6f602fca1d02c094c, - limb1: 0x25171b5c82b5f13283584fe2, - limb2: 0xd9c58b5c53cdda29b3c9d8bb, - limb3: 0xd2c04e79531e3ffb54f1301 + limb0: 0xb806509799453fb653288a6d, + limb1: 0xd65f1f7d6e2fba3f1df98725, + limb2: 0x3ed17d13fa9147db08a432bf, + limb3: 0x11ed65840b0616c76524b9d7 } }, G2Line { r0a0: u384 { - limb0: 0x52f31262cef04020d0699533, - limb1: 0xed9b41b8de47096b27878696, - limb2: 0x2228be361103fb58f763dabd, - limb3: 0x170fd8733d3e89a82b8904a5 + limb0: 0xb34f751dec1ef8dc2f2782b7, + limb1: 0x22aa7baef23a8f4e88a8e7dd, + limb2: 0xf1def2ce51b85fc6e7fe172d, + limb3: 0x18029bf4ca55e59cc1ed9c3a }, r0a1: u384 { - limb0: 0xfb81bb79d298504bc19c4a1c, - limb1: 0xb78d1f470fd5410ce16566c1, - limb2: 0x606cf7e0981f478662a8f2f0, - limb3: 0x1876b867b96e4a1fe6a9cfbe + limb0: 0x3c4ae4af7b0a9b4d40a1e7c8, + limb1: 0x731c8bfdc23929b96388f212, + limb2: 0x21834907a02f60bf62c0cbbb, + limb3: 0x15f74b484259f238cc258db8 }, r1a0: u384 { - limb0: 0xdc9ab5ff65457e5a75848740, - limb1: 0x6cb3a78f6a4de81a8656f9fc, - limb2: 0x19523068838ebe2c8d17f042, - limb3: 0x2657064ec962714326f514 + limb0: 0xce70896bd751d792fa6e66ef, + limb1: 0xa9733370fa0fa1f632b9ba6d, + limb2: 0x1062d33c7106fdebf0a2213e, + limb3: 0x7b7769a0a01150e92fa770d }, r1a1: u384 { - limb0: 0x8a62fcf6f602fca1d02c094c, - limb1: 0x25171b5c82b5f13283584fe2, - limb2: 0xd9c58b5c53cdda29b3c9d8bb, - limb3: 0xd2c04e79531e3ffb54f1301 + limb0: 0xb806509799453fb653288a6d, + limb1: 0xd65f1f7d6e2fba3f1df98725, + limb2: 0x3ed17d13fa9147db08a432bf, + limb3: 0x11ed65840b0616c76524b9d7 } }, G2Line { r0a0: u384 { - limb0: 0xe0e907daada5b6da59c492dd, - limb1: 0x5731b8223cbb9c6cb328acef, - limb2: 0x4639009d393a699b32c25fc9, - limb3: 0xf5cc4173fc06ce422700e87 + limb0: 0x4d0a2eef416100af47f14e34, + limb1: 0x8dd821f9fde4ae6ed497ab78, + limb2: 0x4eab7582054e3f5c408c4885, + limb3: 0x1315201d72ce40fa6b1805c0 }, r0a1: u384 { - limb0: 0xf9b7cdab2563f873b983d1e1, - limb1: 0xc4062ca6ac7468b27a115de4, - limb2: 0xc25eea4f100c98497dbbee6c, - limb3: 0x16eeccc9828a65c0272dbec0 + limb0: 0x6585a84bb01c0094343f9c9, + limb1: 0x8ddf986955cef8d4ae4c4840, + limb2: 0xd09ea0d426194c3895389574, + limb3: 0x4a54350b8370de7408d00b }, r1a0: u384 { - limb0: 0xf494b0dcf3a7b08ed3b9bf29, - limb1: 0x175c07d84df8abb75d02dab6, - limb2: 0x977140d39b4481fe41c8dc48, - limb3: 0x175c75414edc3c2a151b1f95 + limb0: 0x5e6db4a155d7df7c74759a70, + limb1: 0x2769e382c942d6975f3f7c93, + limb2: 0x88d0b31f250abaa3ca56d54f, + limb3: 0xd789d564683477e02f431a5 }, r1a1: u384 { - limb0: 0x9aa2a8cf3a3d4bcc2f99c082, - limb1: 0xd56ed0ef3d08f4625d9fbd05, - limb2: 0x6aa0383535c3a99f87e1a1b9, - limb3: 0x1493318f1f287fe959296942 + limb0: 0x780538a6d243204538dc1fc8, + limb1: 0xe978843d1de05a33f6fb88d4, + limb2: 0x3d06c9b2c457ebeed7599974, + limb3: 0x114b7053a2cbd04ca16cd569 } }, G2Line { r0a0: u384 { - limb0: 0xe0e907daada5b6da59c492dd, - limb1: 0x5731b8223cbb9c6cb328acef, - limb2: 0x4639009d393a699b32c25fc9, - limb3: 0xf5cc4173fc06ce422700e87 + limb0: 0x4d0a2eef416100af47f14e34, + limb1: 0x8dd821f9fde4ae6ed497ab78, + limb2: 0x4eab7582054e3f5c408c4885, + limb3: 0x1315201d72ce40fa6b1805c0 }, r0a1: u384 { - limb0: 0xf9b7cdab2563f873b983d1e1, - limb1: 0xc4062ca6ac7468b27a115de4, - limb2: 0xc25eea4f100c98497dbbee6c, - limb3: 0x16eeccc9828a65c0272dbec0 + limb0: 0x6585a84bb01c0094343f9c9, + limb1: 0x8ddf986955cef8d4ae4c4840, + limb2: 0xd09ea0d426194c3895389574, + limb3: 0x4a54350b8370de7408d00b }, r1a0: u384 { - limb0: 0xf494b0dcf3a7b08ed3b9bf29, - limb1: 0x175c07d84df8abb75d02dab6, - limb2: 0x977140d39b4481fe41c8dc48, - limb3: 0x175c75414edc3c2a151b1f95 + limb0: 0x5e6db4a155d7df7c74759a70, + limb1: 0x2769e382c942d6975f3f7c93, + limb2: 0x88d0b31f250abaa3ca56d54f, + limb3: 0xd789d564683477e02f431a5 }, r1a1: u384 { - limb0: 0x9aa2a8cf3a3d4bcc2f99c082, - limb1: 0xd56ed0ef3d08f4625d9fbd05, - limb2: 0x6aa0383535c3a99f87e1a1b9, - limb3: 0x1493318f1f287fe959296942 + limb0: 0x780538a6d243204538dc1fc8, + limb1: 0xe978843d1de05a33f6fb88d4, + limb2: 0x3d06c9b2c457ebeed7599974, + limb3: 0x114b7053a2cbd04ca16cd569 } }, G2Line { r0a0: u384 { - limb0: 0x62efe08e42e7457406c03cc0, - limb1: 0xa6045526b8c6825a147fcbd5, - limb2: 0x3ad1ee15b335f73cee97fca0, - limb3: 0x681a3e87efd66863ce2a551 + limb0: 0x7bf30d63fb42dad3c8217048, + limb1: 0xea76a199fe539dbfaeda1e20, + limb2: 0x18ea3e640aef4651c2bd095c, + limb3: 0x140a138b59722d6a4f3e0a2d }, r0a1: u384 { - limb0: 0x7c130f8a61d20cdaf1515c73, - limb1: 0x10a5a2a1496261e0562fdf2b, - limb2: 0xf6e962f3509c325f719f2737, - limb3: 0x15680a78c6960e19234f7160 + limb0: 0xf34161555fc3649879abc424, + limb1: 0xd848b352485e56905d3e3b4d, + limb2: 0x73b773ec4b89403e786f7753, + limb3: 0x145ee4f638d6f413d88b13a1 }, r1a0: u384 { - limb0: 0x6777cdb4ee8aa8eae9216025, - limb1: 0x641e7124fa36a606b067249b, - limb2: 0xa9f95a20651de498be4ce562, - limb3: 0x4854f498c87103c7d1c6aaa + limb0: 0xb604ff986f4652b2cf4fa884, + limb1: 0x7f1904daa4ff8c0ef99e19ac, + limb2: 0xfe453ad9e9265684bcbe3395, + limb3: 0xddb246eb5a88b1f58e5bcf2 }, r1a1: u384 { - limb0: 0xef6ecb1c2ef1ab2ee746e824, - limb1: 0x3e2d094a35bb93f1b53f66cf, - limb2: 0x57dc4dc110a45b2564dd6f3d, - limb3: 0x42e3e77113564eb58a6eb83 + limb0: 0x7dec7a712dfdfdc310de61e, + limb1: 0xe299af5fa63ea7a347bc8efa, + limb2: 0x74679586f7a477f41035814e, + limb3: 0x8d3c1701fcbccd25f7ed828 } }, G2Line { r0a0: u384 { - limb0: 0x62efe08e42e7457406c03cc0, - limb1: 0xa6045526b8c6825a147fcbd5, - limb2: 0x3ad1ee15b335f73cee97fca0, - limb3: 0x681a3e87efd66863ce2a551 + limb0: 0x7bf30d63fb42dad3c8217048, + limb1: 0xea76a199fe539dbfaeda1e20, + limb2: 0x18ea3e640aef4651c2bd095c, + limb3: 0x140a138b59722d6a4f3e0a2d }, r0a1: u384 { - limb0: 0x7c130f8a61d20cdaf1515c73, - limb1: 0x10a5a2a1496261e0562fdf2b, - limb2: 0xf6e962f3509c325f719f2737, - limb3: 0x15680a78c6960e19234f7160 + limb0: 0xf34161555fc3649879abc424, + limb1: 0xd848b352485e56905d3e3b4d, + limb2: 0x73b773ec4b89403e786f7753, + limb3: 0x145ee4f638d6f413d88b13a1 }, r1a0: u384 { - limb0: 0x6777cdb4ee8aa8eae9216025, - limb1: 0x641e7124fa36a606b067249b, - limb2: 0xa9f95a20651de498be4ce562, - limb3: 0x4854f498c87103c7d1c6aaa + limb0: 0xb604ff986f4652b2cf4fa884, + limb1: 0x7f1904daa4ff8c0ef99e19ac, + limb2: 0xfe453ad9e9265684bcbe3395, + limb3: 0xddb246eb5a88b1f58e5bcf2 }, r1a1: u384 { - limb0: 0xef6ecb1c2ef1ab2ee746e824, - limb1: 0x3e2d094a35bb93f1b53f66cf, - limb2: 0x57dc4dc110a45b2564dd6f3d, - limb3: 0x42e3e77113564eb58a6eb83 + limb0: 0x7dec7a712dfdfdc310de61e, + limb1: 0xe299af5fa63ea7a347bc8efa, + limb2: 0x74679586f7a477f41035814e, + limb3: 0x8d3c1701fcbccd25f7ed828 } }, G2Line { r0a0: u384 { - limb0: 0x6c426031a3668eda1f0a73af, - limb1: 0x95ae716c7a97e250ceaaaf1a, - limb2: 0x1be07a8b2032281f4c784bab, - limb3: 0xdef23126b94980df9cf1136 + limb0: 0x99df2a930b5c6f99531c93f1, + limb1: 0x8ed1fd1a8dc4b56105269003, + limb2: 0xd4a4e032a951f2bc0b9fc5ae, + limb3: 0x187f43ceb3c3c9f6b3a7dc1 }, r0a1: u384 { - limb0: 0xc659023ee5f54263e0788bce, - limb1: 0x944430450df7fb58de6e3abd, - limb2: 0xa8aaf2291784b6b55c4b4433, - limb3: 0xb9c3e5122ed9a9a74de3c85 + limb0: 0x76bb77dfc0affc622a2b6f6e, + limb1: 0x4024d70db09178c054327462, + limb2: 0xa665430d70b64ea361b164e0, + limb3: 0x76bf24185407ddb48857729 }, r1a0: u384 { - limb0: 0xd3ab788e77e1772e2ff76d2b, - limb1: 0xf51d9372731e0862150b4fa1, - limb2: 0x900fe36c6c3d92d1b97857c, - limb3: 0x8c7a6ffd5d8815aaeee3e0b + limb0: 0xdfa89b0e41374546ae0d1a7b, + limb1: 0xd14c257abb8647a74eba67e7, + limb2: 0x1306d0e776f98342103af22b, + limb3: 0x115e60a2ae9e72fd932aa894 }, r1a1: u384 { - limb0: 0xd55eb8dc7bd01c9a351d6eb2, - limb1: 0x501105bb51aac4d260f6b852, - limb2: 0xd8678a982a9a0dcae62f8e48, - limb3: 0x165a9231354fd86eb0e964c5 + limb0: 0x47e690f1f3039df28412e44f, + limb1: 0x8a3a2189f84d715a8d7d65e9, + limb2: 0x562b385025dc77b1ef923bfb, + limb3: 0xc5e6c241961e555ca0d7354 } }, G2Line { r0a0: u384 { - limb0: 0x6c426031a3668eda1f0a73af, - limb1: 0x95ae716c7a97e250ceaaaf1a, - limb2: 0x1be07a8b2032281f4c784bab, - limb3: 0xdef23126b94980df9cf1136 + limb0: 0x99df2a930b5c6f99531c93f1, + limb1: 0x8ed1fd1a8dc4b56105269003, + limb2: 0xd4a4e032a951f2bc0b9fc5ae, + limb3: 0x187f43ceb3c3c9f6b3a7dc1 }, r0a1: u384 { - limb0: 0xc659023ee5f54263e0788bce, - limb1: 0x944430450df7fb58de6e3abd, - limb2: 0xa8aaf2291784b6b55c4b4433, - limb3: 0xb9c3e5122ed9a9a74de3c85 + limb0: 0x76bb77dfc0affc622a2b6f6e, + limb1: 0x4024d70db09178c054327462, + limb2: 0xa665430d70b64ea361b164e0, + limb3: 0x76bf24185407ddb48857729 }, r1a0: u384 { - limb0: 0xd3ab788e77e1772e2ff76d2b, - limb1: 0xf51d9372731e0862150b4fa1, - limb2: 0x900fe36c6c3d92d1b97857c, - limb3: 0x8c7a6ffd5d8815aaeee3e0b + limb0: 0xdfa89b0e41374546ae0d1a7b, + limb1: 0xd14c257abb8647a74eba67e7, + limb2: 0x1306d0e776f98342103af22b, + limb3: 0x115e60a2ae9e72fd932aa894 }, r1a1: u384 { - limb0: 0xd55eb8dc7bd01c9a351d6eb2, - limb1: 0x501105bb51aac4d260f6b852, - limb2: 0xd8678a982a9a0dcae62f8e48, - limb3: 0x165a9231354fd86eb0e964c5 + limb0: 0x47e690f1f3039df28412e44f, + limb1: 0x8a3a2189f84d715a8d7d65e9, + limb2: 0x562b385025dc77b1ef923bfb, + limb3: 0xc5e6c241961e555ca0d7354 } }, G2Line { r0a0: u384 { - limb0: 0x725067e84d439eeea6dbecfa, - limb1: 0xf2e9185daefd879d7f255e2d, - limb2: 0x1f5f8be5529d56f45ea2833c, - limb3: 0x184158ad8422f1ec892d31ec + limb0: 0x1a2414c000ddc2cecc4ace45, + limb1: 0x4357fe38372254979fa022b1, + limb2: 0x61d6637cee8780a17a7081e0, + limb3: 0x4eea5d3fbef1a5dd09cc955 }, r0a1: u384 { - limb0: 0x8eb665d8e584a9d1e2b3c7bc, - limb1: 0x49133b9b72a662f24f6d0917, - limb2: 0x3f7d011480ff20dc0fa4cacd, - limb3: 0x1535e313c839531c8862ff3 + limb0: 0xd5b139e74748094bfebb3ae6, + limb1: 0x901c685eb5d4fee19ed28ae5, + limb2: 0x356defa1ba992ae72b86f44f, + limb3: 0xc8040a5e738fe7a1d3a2024 }, r1a0: u384 { - limb0: 0xa072ec64dfc245693acbf336, - limb1: 0x1387e70031c720ab8489191, - limb2: 0x169de3917e981a8757854730, - limb3: 0xf49147265661230c50a164f + limb0: 0x87552afc6d716807e2faf69f, + limb1: 0xfb088330ba4d8a5bbf847dbb, + limb2: 0x260b190844603d1e003e3d59, + limb3: 0x137a87bb90e7772bfdc1baec }, r1a1: u384 { - limb0: 0xf508638b71f573ab6a17d5c3, - limb1: 0x416b4f3af7267be4ee72f912, - limb2: 0x80c055b93c57a5d598786583, - limb3: 0xe7006c5696f20162d67d26a + limb0: 0x7e42f969e1c7a725c44d0f5e, + limb1: 0xd7c022cceded4676494db300, + limb2: 0x29e6509f724821f489057d0, + limb3: 0x185646a40479750a995f9cd3 } }, G2Line { r0a0: u384 { - limb0: 0x725067e84d439eeea6dbecfa, - limb1: 0xf2e9185daefd879d7f255e2d, - limb2: 0x1f5f8be5529d56f45ea2833c, - limb3: 0x184158ad8422f1ec892d31ec + limb0: 0x1a2414c000ddc2cecc4ace45, + limb1: 0x4357fe38372254979fa022b1, + limb2: 0x61d6637cee8780a17a7081e0, + limb3: 0x4eea5d3fbef1a5dd09cc955 }, r0a1: u384 { - limb0: 0x8eb665d8e584a9d1e2b3c7bc, - limb1: 0x49133b9b72a662f24f6d0917, - limb2: 0x3f7d011480ff20dc0fa4cacd, - limb3: 0x1535e313c839531c8862ff3 + limb0: 0xd5b139e74748094bfebb3ae6, + limb1: 0x901c685eb5d4fee19ed28ae5, + limb2: 0x356defa1ba992ae72b86f44f, + limb3: 0xc8040a5e738fe7a1d3a2024 }, r1a0: u384 { - limb0: 0xa072ec64dfc245693acbf336, - limb1: 0x1387e70031c720ab8489191, - limb2: 0x169de3917e981a8757854730, - limb3: 0xf49147265661230c50a164f + limb0: 0x87552afc6d716807e2faf69f, + limb1: 0xfb088330ba4d8a5bbf847dbb, + limb2: 0x260b190844603d1e003e3d59, + limb3: 0x137a87bb90e7772bfdc1baec }, r1a1: u384 { - limb0: 0xf508638b71f573ab6a17d5c3, - limb1: 0x416b4f3af7267be4ee72f912, - limb2: 0x80c055b93c57a5d598786583, - limb3: 0xe7006c5696f20162d67d26a + limb0: 0x7e42f969e1c7a725c44d0f5e, + limb1: 0xd7c022cceded4676494db300, + limb2: 0x29e6509f724821f489057d0, + limb3: 0x185646a40479750a995f9cd3 } }, G2Line { r0a0: u384 { - limb0: 0xa1930630eecd8392d5bcd4c3, - limb1: 0x7c5da1ed0ee240c6ec92796f, - limb2: 0x554cd09f114cc4474a8323a7, - limb3: 0xa0b1117b484613188fd2a09 + limb0: 0xd04819dd9ed56b4bab27f047, + limb1: 0xd23a46842e3a42d6caece3a8, + limb2: 0x48a25dab2e3e2b7e64aba217, + limb3: 0xe0ee3dd85b24387ad3a206a }, r0a1: u384 { - limb0: 0x734c7f85d6b7abe0c5d46398, - limb1: 0xda518d878ef488733321caa2, - limb2: 0xf0927c5183f77f53a45751d1, - limb3: 0x112496fcf05fb37b974e045b + limb0: 0xf9473adbb4786a9162ae5da3, + limb1: 0x8283f3b93f191a7f392ac774, + limb2: 0x8f27bc653cb0e3d50eacae8a, + limb3: 0x165963f57f884654bd219fba }, r1a0: u384 { - limb0: 0x3be118451127bf5c00665bf1, - limb1: 0x7c974f6513cd75e5b30c7d33, - limb2: 0x6f3a222056188d3933a50132, - limb3: 0x137e0b118694f0218aef666a + limb0: 0x61dff59bc6e37a675cc86e42, + limb1: 0x54f12c871f457e5f5a838828, + limb2: 0xfc7bfafc5adb80e04e2ad125, + limb3: 0xfc335ea4ebe19862d9f305c }, r1a1: u384 { - limb0: 0x7920fc7df984a9ee37c781c2, - limb1: 0xf9b9371cb9ab73f565c1b7e9, - limb2: 0x1acfe21438aa9c6fcf8770e5, - limb3: 0x1077f9e4e416abdd3cedc35d + limb0: 0xef3bb3e00cf5de556fe91f0a, + limb1: 0x850952bb24a6fc4ed03ec7ff, + limb2: 0xb4ed2e264916ebbc8287e87c, + limb3: 0x135b19fd7cb1a640ed5ece8d } }, G2Line { r0a0: u384 { - limb0: 0xa1930630eecd8392d5bcd4c3, - limb1: 0x7c5da1ed0ee240c6ec92796f, - limb2: 0x554cd09f114cc4474a8323a7, - limb3: 0xa0b1117b484613188fd2a09 + limb0: 0xd04819dd9ed56b4bab27f047, + limb1: 0xd23a46842e3a42d6caece3a8, + limb2: 0x48a25dab2e3e2b7e64aba217, + limb3: 0xe0ee3dd85b24387ad3a206a }, r0a1: u384 { - limb0: 0x734c7f85d6b7abe0c5d46398, - limb1: 0xda518d878ef488733321caa2, - limb2: 0xf0927c5183f77f53a45751d1, - limb3: 0x112496fcf05fb37b974e045b + limb0: 0xf9473adbb4786a9162ae5da3, + limb1: 0x8283f3b93f191a7f392ac774, + limb2: 0x8f27bc653cb0e3d50eacae8a, + limb3: 0x165963f57f884654bd219fba }, r1a0: u384 { - limb0: 0x3be118451127bf5c00665bf1, - limb1: 0x7c974f6513cd75e5b30c7d33, - limb2: 0x6f3a222056188d3933a50132, - limb3: 0x137e0b118694f0218aef666a + limb0: 0x61dff59bc6e37a675cc86e42, + limb1: 0x54f12c871f457e5f5a838828, + limb2: 0xfc7bfafc5adb80e04e2ad125, + limb3: 0xfc335ea4ebe19862d9f305c }, r1a1: u384 { - limb0: 0x7920fc7df984a9ee37c781c2, - limb1: 0xf9b9371cb9ab73f565c1b7e9, - limb2: 0x1acfe21438aa9c6fcf8770e5, - limb3: 0x1077f9e4e416abdd3cedc35d + limb0: 0xef3bb3e00cf5de556fe91f0a, + limb1: 0x850952bb24a6fc4ed03ec7ff, + limb2: 0xb4ed2e264916ebbc8287e87c, + limb3: 0x135b19fd7cb1a640ed5ece8d } }, G2Line { r0a0: u384 { - limb0: 0xeea853d040e63447428c9836, - limb1: 0x5700baeaefdd3579757c6a12, - limb2: 0x6d4bb06593538bcda3e96439, - limb3: 0x16135421d8dcb6b15b6ba60e + limb0: 0x8937b152c3b908a50f9ae998, + limb1: 0xbb950d7dd309998b46e7efdf, + limb2: 0x61c44378c4d61e673a6969e6, + limb3: 0x1313c9ded72d787690c4f541 }, r0a1: u384 { - limb0: 0xd64f9087b65b3b15c1f536bf, - limb1: 0x9542788074c8f55fe3527f0e, - limb2: 0xf833b5961e5a56ff753baa72, - limb3: 0x8b12e2115376ff920a7cc46 + limb0: 0xfcaeba566ad94bb14d3b23e9, + limb1: 0x47494f5e89d3dc0d2b5d19f3, + limb2: 0x89dbbed580fdbe0da1ed5b66, + limb3: 0x7493cdf00ef3104441fc23f }, r1a0: u384 { - limb0: 0x635f43dbdf0c5c4802bb19af, - limb1: 0xef4efd1407487037c5d842cd, - limb2: 0x3870bc71b7136d4cdf71ef96, - limb3: 0x23b621ca141b35493f13ddd + limb0: 0x4a3160797b28791f2044cd4e, + limb1: 0x9c415696131e21d2e5e51623, + limb2: 0xb488ac26dc83b2a89afd797f, + limb3: 0x174adbaf53f5d3568d742c09 }, r1a1: u384 { - limb0: 0x7c4c1308dd3f0a5d46e24300, - limb1: 0x60db7da95cd1b3d5d27d0c63, - limb2: 0x1e1207cb34bc7e98f9e467bb, - limb3: 0x1111bb380686a85ba9c84063 + limb0: 0x63d387b272b7248bfbc6150c, + limb1: 0xcabdc152437f73e2a7eebf55, + limb2: 0xdfcff61afed4b09cba4f0799, + limb3: 0x16741a0f360a31a2064dded } }, G2Line { r0a0: u384 { - limb0: 0xeea853d040e63447428c9836, - limb1: 0x5700baeaefdd3579757c6a12, - limb2: 0x6d4bb06593538bcda3e96439, - limb3: 0x16135421d8dcb6b15b6ba60e + limb0: 0x8937b152c3b908a50f9ae998, + limb1: 0xbb950d7dd309998b46e7efdf, + limb2: 0x61c44378c4d61e673a6969e6, + limb3: 0x1313c9ded72d787690c4f541 }, r0a1: u384 { - limb0: 0xd64f9087b65b3b15c1f536bf, - limb1: 0x9542788074c8f55fe3527f0e, - limb2: 0xf833b5961e5a56ff753baa72, - limb3: 0x8b12e2115376ff920a7cc46 + limb0: 0xfcaeba566ad94bb14d3b23e9, + limb1: 0x47494f5e89d3dc0d2b5d19f3, + limb2: 0x89dbbed580fdbe0da1ed5b66, + limb3: 0x7493cdf00ef3104441fc23f }, r1a0: u384 { - limb0: 0x635f43dbdf0c5c4802bb19af, - limb1: 0xef4efd1407487037c5d842cd, - limb2: 0x3870bc71b7136d4cdf71ef96, - limb3: 0x23b621ca141b35493f13ddd + limb0: 0x4a3160797b28791f2044cd4e, + limb1: 0x9c415696131e21d2e5e51623, + limb2: 0xb488ac26dc83b2a89afd797f, + limb3: 0x174adbaf53f5d3568d742c09 }, r1a1: u384 { - limb0: 0x7c4c1308dd3f0a5d46e24300, - limb1: 0x60db7da95cd1b3d5d27d0c63, - limb2: 0x1e1207cb34bc7e98f9e467bb, - limb3: 0x1111bb380686a85ba9c84063 + limb0: 0x63d387b272b7248bfbc6150c, + limb1: 0xcabdc152437f73e2a7eebf55, + limb2: 0xdfcff61afed4b09cba4f0799, + limb3: 0x16741a0f360a31a2064dded } }, G2Line { r0a0: u384 { - limb0: 0xa1ba657fc8b6d97e8d30648b, - limb1: 0x8dd022e7a108263061a3260, - limb2: 0xfd44904607a81baffe638385, - limb3: 0xe93bb7eb859c529e9fcb152 + limb0: 0xf34de146a3ad76e403324db9, + limb1: 0x9b39ef7ccc3e9500c55b203d, + limb2: 0x7db39c6c9b3f1a47c239c87a, + limb3: 0xf3928428a2e0afafaf9f613 }, r0a1: u384 { - limb0: 0x4cbd4d01e83a0226493a6d09, - limb1: 0x3841afd706d4d5c0a458a6b8, - limb2: 0x2e1f8a344d7d9a25b3a3f879, - limb3: 0x27956bd648609612ab961da + limb0: 0x7c121e80e74692d7f14934ff, + limb1: 0xa4f4b5ee8db58f14be1d76db, + limb2: 0xfbb4c90d8cfa3089e78b109f, + limb3: 0x4b285b2786431b738851ec6 }, r1a0: u384 { - limb0: 0xdfe1618d173cb12aa7649049, - limb1: 0x6becba6ffccdfd4ed8f59e5e, - limb2: 0xadb2fbe068844a24ad47c0bf, - limb3: 0x18072778444a9a6feb74ba8d + limb0: 0xd2f569d4e847ba9b0e2e1af3, + limb1: 0x2957ae130d933aead5e97f53, + limb2: 0x68cdecf70795de5d5531cf36, + limb3: 0x1357f8e520338f0933cf7bb2 }, r1a1: u384 { - limb0: 0xe58f69f4d70f05ff809fe600, - limb1: 0xa19e5b06b02518bac5fc3c5f, - limb2: 0x71852b392e6f818acba8eb0f, - limb3: 0x149e2e811edb51d35b26f3cc + limb0: 0x493e27601dbba0d015c6ae5b, + limb1: 0xad021779849e87c2a014274c, + limb2: 0xf5256ee91c45d0a9f8ed1e6d, + limb3: 0x180717505375cf32cce66144 } }, G2Line { r0a0: u384 { - limb0: 0xa1ba657fc8b6d97e8d30648b, - limb1: 0x8dd022e7a108263061a3260, - limb2: 0xfd44904607a81baffe638385, - limb3: 0xe93bb7eb859c529e9fcb152 + limb0: 0xf34de146a3ad76e403324db9, + limb1: 0x9b39ef7ccc3e9500c55b203d, + limb2: 0x7db39c6c9b3f1a47c239c87a, + limb3: 0xf3928428a2e0afafaf9f613 }, r0a1: u384 { - limb0: 0x4cbd4d01e83a0226493a6d09, - limb1: 0x3841afd706d4d5c0a458a6b8, - limb2: 0x2e1f8a344d7d9a25b3a3f879, - limb3: 0x27956bd648609612ab961da + limb0: 0x7c121e80e74692d7f14934ff, + limb1: 0xa4f4b5ee8db58f14be1d76db, + limb2: 0xfbb4c90d8cfa3089e78b109f, + limb3: 0x4b285b2786431b738851ec6 }, r1a0: u384 { - limb0: 0xdfe1618d173cb12aa7649049, - limb1: 0x6becba6ffccdfd4ed8f59e5e, - limb2: 0xadb2fbe068844a24ad47c0bf, - limb3: 0x18072778444a9a6feb74ba8d + limb0: 0xd2f569d4e847ba9b0e2e1af3, + limb1: 0x2957ae130d933aead5e97f53, + limb2: 0x68cdecf70795de5d5531cf36, + limb3: 0x1357f8e520338f0933cf7bb2 }, r1a1: u384 { - limb0: 0xe58f69f4d70f05ff809fe600, - limb1: 0xa19e5b06b02518bac5fc3c5f, - limb2: 0x71852b392e6f818acba8eb0f, - limb3: 0x149e2e811edb51d35b26f3cc + limb0: 0x493e27601dbba0d015c6ae5b, + limb1: 0xad021779849e87c2a014274c, + limb2: 0xf5256ee91c45d0a9f8ed1e6d, + limb3: 0x180717505375cf32cce66144 } }, G2Line { r0a0: u384 { - limb0: 0x3b6e1d14dd407b40a67f4372, - limb1: 0x6ce5dac23e5505b023664221, - limb2: 0xd579071d13b76f042be8eb88, - limb3: 0x143bd2697446fef28a763ff1 + limb0: 0x38d0fc9792645a15c4c052ca, + limb1: 0x3c496443605341f90571d5b9, + limb2: 0x6ca5920eb2f9aae2e434b5d2, + limb3: 0x178c7db07e7f27f8250ce41f }, r0a1: u384 { - limb0: 0x720696f1ad383b0777982812, - limb1: 0x886fbae09b2633f86e3d97bf, - limb2: 0x58b72b439daa83c139321780, - limb3: 0x17292b3329504d46ec3b00af + limb0: 0x8fe93edb8505713c865a3d86, + limb1: 0x173457b5370bc83e101afbb2, + limb2: 0xda6a7320c3b79d518768462c, + limb3: 0x912de6207e9a4aee0aea47d }, r1a0: u384 { - limb0: 0xf32afb6d707973851a434434, - limb1: 0x4f180ddc140e41aff03f0f18, - limb2: 0xc2063329d60ece6e93f0067c, - limb3: 0xa6ba68c1aa279217f3e8027 + limb0: 0x40b9c4bef3653ba42121fa72, + limb1: 0x532261a7b85509c760a3425a, + limb2: 0xbc4193a07487cfb1f5dc0502, + limb3: 0xdd5e2338c5c5967ba2fee70 }, r1a1: u384 { - limb0: 0x26325b294110d14dc2145564, - limb1: 0xb0e4225af2b153f57a7bcd35, - limb2: 0x29cd59de506e30deb307d335, - limb3: 0x14dbc056c300f4d2daa1ad7 + limb0: 0xcce7e4fa97235f637482a82c, + limb1: 0x28b2d7aeaa120f7977655b45, + limb2: 0xa49962f65b00cb3f9ae2482f, + limb3: 0x19b58e57c04607bef6e69750 } }, G2Line { r0a0: u384 { - limb0: 0x3b6e1d14dd407b40a67f4372, - limb1: 0x6ce5dac23e5505b023664221, - limb2: 0xd579071d13b76f042be8eb88, - limb3: 0x143bd2697446fef28a763ff1 + limb0: 0x38d0fc9792645a15c4c052ca, + limb1: 0x3c496443605341f90571d5b9, + limb2: 0x6ca5920eb2f9aae2e434b5d2, + limb3: 0x178c7db07e7f27f8250ce41f }, r0a1: u384 { - limb0: 0x720696f1ad383b0777982812, - limb1: 0x886fbae09b2633f86e3d97bf, - limb2: 0x58b72b439daa83c139321780, - limb3: 0x17292b3329504d46ec3b00af + limb0: 0x8fe93edb8505713c865a3d86, + limb1: 0x173457b5370bc83e101afbb2, + limb2: 0xda6a7320c3b79d518768462c, + limb3: 0x912de6207e9a4aee0aea47d }, r1a0: u384 { - limb0: 0xf32afb6d707973851a434434, - limb1: 0x4f180ddc140e41aff03f0f18, - limb2: 0xc2063329d60ece6e93f0067c, - limb3: 0xa6ba68c1aa279217f3e8027 + limb0: 0x40b9c4bef3653ba42121fa72, + limb1: 0x532261a7b85509c760a3425a, + limb2: 0xbc4193a07487cfb1f5dc0502, + limb3: 0xdd5e2338c5c5967ba2fee70 }, r1a1: u384 { - limb0: 0x26325b294110d14dc2145564, - limb1: 0xb0e4225af2b153f57a7bcd35, - limb2: 0x29cd59de506e30deb307d335, - limb3: 0x14dbc056c300f4d2daa1ad7 + limb0: 0xcce7e4fa97235f637482a82c, + limb1: 0x28b2d7aeaa120f7977655b45, + limb2: 0xa49962f65b00cb3f9ae2482f, + limb3: 0x19b58e57c04607bef6e69750 } }, G2Line { r0a0: u384 { - limb0: 0x8e36e5a72f92b4eb8a34796a, - limb1: 0x360ff4285d6add75b58cf7ec, - limb2: 0xbb4b0caf6cd1e7b5fb138b75, - limb3: 0x14b2b189a5f532f4d8dbcfa6 + limb0: 0xad76854a457dc90e5d0a3f8a, + limb1: 0xcc7719378ae14d09eb97d00d, + limb2: 0x197dbeb8470a6d8b8c3f2f42, + limb3: 0x136df25a10175bf15d960a4c }, r0a1: u384 { - limb0: 0x4de1e04fbec6c85f13f07ce7, - limb1: 0x4cedf4cba55435c78b5568e6, - limb2: 0xe8cde1caaff829434e2d0ff9, - limb3: 0x1078d757f2e5c96eb6c15821 + limb0: 0x9222affc8caeb5fad7ca4707, + limb1: 0xac0bbad60e9937f12683eb72, + limb2: 0x1435947b66a9aa706719df85, + limb3: 0xe69b3d98f53b3796529884a }, r1a0: u384 { - limb0: 0xbb2c3534d80b34fa68678c19, - limb1: 0x57323846911512648e85ca72, - limb2: 0xc3afb91f3b6e3a67ad8b3569, - limb3: 0x2c1f6e3a92c90372825807e + limb0: 0xe89aaf06da8223dd907d68ec, + limb1: 0x6ce1f0d0cf3b87821b9b57dd, + limb2: 0xb5abb02cf0ca16a9bafeafce, + limb3: 0x95f7632aa27f864cb273710 }, r1a1: u384 { - limb0: 0xb0dfba3b0a88c03538b086de, - limb1: 0x48a3025cdc40e633070fa6e0, - limb2: 0xdada840987b8472a0d1bdb22, - limb3: 0x14c5958dafd07f39cc242bbe + limb0: 0xab8a5a77528537076486a44c, + limb1: 0x1e17c55720972d99ebd632a3, + limb2: 0xc46baed0da2913b1df4a2834, + limb3: 0x1398bee25c9e972cfbc27cb1 } }, G2Line { r0a0: u384 { - limb0: 0x8e36e5a72f92b4eb8a34796a, - limb1: 0x360ff4285d6add75b58cf7ec, - limb2: 0xbb4b0caf6cd1e7b5fb138b75, - limb3: 0x14b2b189a5f532f4d8dbcfa6 + limb0: 0xad76854a457dc90e5d0a3f8a, + limb1: 0xcc7719378ae14d09eb97d00d, + limb2: 0x197dbeb8470a6d8b8c3f2f42, + limb3: 0x136df25a10175bf15d960a4c }, r0a1: u384 { - limb0: 0x4de1e04fbec6c85f13f07ce7, - limb1: 0x4cedf4cba55435c78b5568e6, - limb2: 0xe8cde1caaff829434e2d0ff9, - limb3: 0x1078d757f2e5c96eb6c15821 + limb0: 0x9222affc8caeb5fad7ca4707, + limb1: 0xac0bbad60e9937f12683eb72, + limb2: 0x1435947b66a9aa706719df85, + limb3: 0xe69b3d98f53b3796529884a }, r1a0: u384 { - limb0: 0xbb2c3534d80b34fa68678c19, - limb1: 0x57323846911512648e85ca72, - limb2: 0xc3afb91f3b6e3a67ad8b3569, - limb3: 0x2c1f6e3a92c90372825807e + limb0: 0xe89aaf06da8223dd907d68ec, + limb1: 0x6ce1f0d0cf3b87821b9b57dd, + limb2: 0xb5abb02cf0ca16a9bafeafce, + limb3: 0x95f7632aa27f864cb273710 }, r1a1: u384 { - limb0: 0xb0dfba3b0a88c03538b086de, - limb1: 0x48a3025cdc40e633070fa6e0, - limb2: 0xdada840987b8472a0d1bdb22, - limb3: 0x14c5958dafd07f39cc242bbe + limb0: 0xab8a5a77528537076486a44c, + limb1: 0x1e17c55720972d99ebd632a3, + limb2: 0xc46baed0da2913b1df4a2834, + limb3: 0x1398bee25c9e972cfbc27cb1 } }, G2Line { r0a0: u384 { - limb0: 0x4a680125f01f2c99f2e4ad35, - limb1: 0xbd7f4b895d613c9ddda1d43a, - limb2: 0x15506ebfc20b70341d0b640d, - limb3: 0x8d08bb96b6ad9c84b04dac6 + limb0: 0xe2f84b4a260f2eff8a005c54, + limb1: 0x24460cbaed3e073043e009e6, + limb2: 0x8cab1fbfd4206560214d9044, + limb3: 0xbb2d541e010797dc9c63c0c }, r0a1: u384 { - limb0: 0xa92ea0332f1ff82505179b44, - limb1: 0xd6bcf736cf7aafc1a6aca4ae, - limb2: 0x3fcb49aee3638ecb209d788d, - limb3: 0xbdce438f2b26ae6790401c1 + limb0: 0x4c4e7878cb1cd5eac0c92236, + limb1: 0x5f31e42f5fcb86cfe85b4de0, + limb2: 0x6591ed1f4d3b5ea643cc7c88, + limb3: 0x16afef5514b05d5754490fc6 }, r1a0: u384 { - limb0: 0x785df19cdaf08a3eddaee9ac, - limb1: 0x5fb90e11d5aca91e4379ba63, - limb2: 0x1f203670462f881c14e659bd, - limb3: 0x149863ce1c7537cceba1b1f7 + limb0: 0x3db8acae4cb434d8a3b76580, + limb1: 0xf3abec5e85cbc0832ef7d101, + limb2: 0xad65d445c8a4410aad7b75dc, + limb3: 0x7ab4b701a7bc730f7ae2231 }, r1a1: u384 { - limb0: 0x38baaf4319cb97706b213e26, - limb1: 0xbef8ae4955f403aeabc9be94, - limb2: 0xa15630b208760297b0816424, - limb3: 0xe082ddfd98f721465cd4535 + limb0: 0x562b2c4e6556cd5a2e5818ed, + limb1: 0x9f6d68232407d6f7ca7fb16b, + limb2: 0xf3d1d6d9ed4a97df8f5d67d3, + limb3: 0x588824a49bb38a4b099d810 } }, G2Line { r0a0: u384 { - limb0: 0x4a680125f01f2c99f2e4ad35, - limb1: 0xbd7f4b895d613c9ddda1d43a, - limb2: 0x15506ebfc20b70341d0b640d, - limb3: 0x8d08bb96b6ad9c84b04dac6 + limb0: 0xe2f84b4a260f2eff8a005c54, + limb1: 0x24460cbaed3e073043e009e6, + limb2: 0x8cab1fbfd4206560214d9044, + limb3: 0xbb2d541e010797dc9c63c0c }, r0a1: u384 { - limb0: 0xa92ea0332f1ff82505179b44, - limb1: 0xd6bcf736cf7aafc1a6aca4ae, - limb2: 0x3fcb49aee3638ecb209d788d, - limb3: 0xbdce438f2b26ae6790401c1 + limb0: 0x4c4e7878cb1cd5eac0c92236, + limb1: 0x5f31e42f5fcb86cfe85b4de0, + limb2: 0x6591ed1f4d3b5ea643cc7c88, + limb3: 0x16afef5514b05d5754490fc6 }, r1a0: u384 { - limb0: 0x785df19cdaf08a3eddaee9ac, - limb1: 0x5fb90e11d5aca91e4379ba63, - limb2: 0x1f203670462f881c14e659bd, - limb3: 0x149863ce1c7537cceba1b1f7 + limb0: 0x3db8acae4cb434d8a3b76580, + limb1: 0xf3abec5e85cbc0832ef7d101, + limb2: 0xad65d445c8a4410aad7b75dc, + limb3: 0x7ab4b701a7bc730f7ae2231 }, r1a1: u384 { - limb0: 0x38baaf4319cb97706b213e26, - limb1: 0xbef8ae4955f403aeabc9be94, - limb2: 0xa15630b208760297b0816424, - limb3: 0xe082ddfd98f721465cd4535 + limb0: 0x562b2c4e6556cd5a2e5818ed, + limb1: 0x9f6d68232407d6f7ca7fb16b, + limb2: 0xf3d1d6d9ed4a97df8f5d67d3, + limb3: 0x588824a49bb38a4b099d810 } }, G2Line { r0a0: u384 { - limb0: 0x4a3b9830db2bc7c79cb9e433, - limb1: 0x3d760eb7c8390a0c40f9273, - limb2: 0x7c79f29054a5920374587c5a, - limb3: 0x7f628e9308548dfee9ac996 + limb0: 0xcca39f82bb74ae8680cc081d, + limb1: 0xeaaa21ffc7a4df74358d0281, + limb2: 0xd65e6077db7eb5b14773d396, + limb3: 0x76f8e7592c2f42f291b8e1d }, r0a1: u384 { - limb0: 0x97985e44a99cc834f0866063, - limb1: 0x67191eeeeb332bcbe5f434f3, - limb2: 0xbbd6c83f1d0531d266fdf644, - limb3: 0x170a8ac8ba33c61a699de4d9 + limb0: 0xa9bace40fa450a257ebb1243, + limb1: 0xc8cf22d88fa4207edab86f82, + limb2: 0x20b1dbfcc2e20eb7d6149b6e, + limb3: 0x85a6392c120c008705f91ce }, r1a0: u384 { - limb0: 0xd0bee6f705a7b1d00142dd13, - limb1: 0xad61417d2eee019ad4d810d2, - limb2: 0xd72c08d5ce42b0f807c37d93, - limb3: 0xd5a7707c6186979bc5bd759 + limb0: 0x3295ba86f37db24a03e9453d, + limb1: 0xf2b977973bd46ab8992bdb0f, + limb2: 0xae06def54d7d467eff474192, + limb3: 0x11370cf5fffc2f6e71c1e758 }, r1a1: u384 { - limb0: 0x853d17c37f84a3c3778da667, - limb1: 0xa068527d655b88cbb13131c4, - limb2: 0x48cf6c9e2ad215c16df96cfa, - limb3: 0x26e340219028c967345e333 + limb0: 0xf6d8571051ee6c510b2770ee, + limb1: 0xae3fab77b3c27afd7c351f29, + limb2: 0xb9311965cdf8136e4076cf53, + limb3: 0x9400852f9adfcbf9d3cf4e1 } }, G2Line { r0a0: u384 { - limb0: 0x4a3b9830db2bc7c79cb9e433, - limb1: 0x3d760eb7c8390a0c40f9273, - limb2: 0x7c79f29054a5920374587c5a, - limb3: 0x7f628e9308548dfee9ac996 + limb0: 0xcca39f82bb74ae8680cc081d, + limb1: 0xeaaa21ffc7a4df74358d0281, + limb2: 0xd65e6077db7eb5b14773d396, + limb3: 0x76f8e7592c2f42f291b8e1d }, r0a1: u384 { - limb0: 0x97985e44a99cc834f0866063, - limb1: 0x67191eeeeb332bcbe5f434f3, - limb2: 0xbbd6c83f1d0531d266fdf644, - limb3: 0x170a8ac8ba33c61a699de4d9 + limb0: 0xa9bace40fa450a257ebb1243, + limb1: 0xc8cf22d88fa4207edab86f82, + limb2: 0x20b1dbfcc2e20eb7d6149b6e, + limb3: 0x85a6392c120c008705f91ce }, r1a0: u384 { - limb0: 0xd0bee6f705a7b1d00142dd13, - limb1: 0xad61417d2eee019ad4d810d2, - limb2: 0xd72c08d5ce42b0f807c37d93, - limb3: 0xd5a7707c6186979bc5bd759 + limb0: 0x3295ba86f37db24a03e9453d, + limb1: 0xf2b977973bd46ab8992bdb0f, + limb2: 0xae06def54d7d467eff474192, + limb3: 0x11370cf5fffc2f6e71c1e758 }, r1a1: u384 { - limb0: 0x853d17c37f84a3c3778da667, - limb1: 0xa068527d655b88cbb13131c4, - limb2: 0x48cf6c9e2ad215c16df96cfa, - limb3: 0x26e340219028c967345e333 + limb0: 0xf6d8571051ee6c510b2770ee, + limb1: 0xae3fab77b3c27afd7c351f29, + limb2: 0xb9311965cdf8136e4076cf53, + limb3: 0x9400852f9adfcbf9d3cf4e1 } }, G2Line { r0a0: u384 { - limb0: 0x2c719d18f2a0ceed53442be0, - limb1: 0x7bd0928f6fb8b8206f1d01bc, - limb2: 0xb698857e260939b5eae76060, - limb3: 0xb62ee4072440c4ad62988e7 + limb0: 0x9d8549b5c14aa39780685fb5, + limb1: 0x14198426aec9122084eff7bf, + limb2: 0xe6963ef32a40cba3a8fb3a47, + limb3: 0x115f28504bd025dd4499ce56 }, r0a1: u384 { - limb0: 0x29cb8fa53b8ead37663b64df, - limb1: 0x6b7cb0e57fe0b3f6c45d4185, - limb2: 0x107f308c9906daeb1220c428, - limb3: 0x181b5eded6a83ea76cf49719 + limb0: 0x2ff194416d8fc758747b5e7d, + limb1: 0xdc4a74924a9244d5fb33fd59, + limb2: 0x82d81e382ce69a9622fc3ea7, + limb3: 0xb57bfc908086bb508868a90 }, r1a0: u384 { - limb0: 0x3fe4c2c7b2f5263043c5c671, - limb1: 0xec6c31c9b2598ab8428b84d7, - limb2: 0x3c16f0c25a816a7f2ba185e0, - limb3: 0x12ca9916e976509df23d80c2 + limb0: 0xf0d790846378420aafab107b, + limb1: 0xac90770da460454c9c02ec83, + limb2: 0x2e5a7f0be686741b2ef01a27, + limb3: 0xbb1f84e0a85387debf15c77 }, r1a1: u384 { - limb0: 0x71dd8140cb0b446d329a626a, - limb1: 0xe05fc3e507756c7e42627549, - limb2: 0xd4abc2827ed09d862a303914, - limb3: 0x103b4a4f42b8e0b9ba5c8ce4 + limb0: 0x154829560d2743b5971e29a4, + limb1: 0x5f6c0f1802fc05571c70ff62, + limb2: 0xb88abc5cb11794d455517360, + limb3: 0xfd91ce6564def5f73a9c59 } }, G2Line { r0a0: u384 { - limb0: 0x2c719d18f2a0ceed53442be0, - limb1: 0x7bd0928f6fb8b8206f1d01bc, - limb2: 0xb698857e260939b5eae76060, - limb3: 0xb62ee4072440c4ad62988e7 + limb0: 0x9d8549b5c14aa39780685fb5, + limb1: 0x14198426aec9122084eff7bf, + limb2: 0xe6963ef32a40cba3a8fb3a47, + limb3: 0x115f28504bd025dd4499ce56 }, r0a1: u384 { - limb0: 0x29cb8fa53b8ead37663b64df, - limb1: 0x6b7cb0e57fe0b3f6c45d4185, - limb2: 0x107f308c9906daeb1220c428, - limb3: 0x181b5eded6a83ea76cf49719 + limb0: 0x2ff194416d8fc758747b5e7d, + limb1: 0xdc4a74924a9244d5fb33fd59, + limb2: 0x82d81e382ce69a9622fc3ea7, + limb3: 0xb57bfc908086bb508868a90 }, r1a0: u384 { - limb0: 0x3fe4c2c7b2f5263043c5c671, - limb1: 0xec6c31c9b2598ab8428b84d7, - limb2: 0x3c16f0c25a816a7f2ba185e0, - limb3: 0x12ca9916e976509df23d80c2 + limb0: 0xf0d790846378420aafab107b, + limb1: 0xac90770da460454c9c02ec83, + limb2: 0x2e5a7f0be686741b2ef01a27, + limb3: 0xbb1f84e0a85387debf15c77 }, r1a1: u384 { - limb0: 0x71dd8140cb0b446d329a626a, - limb1: 0xe05fc3e507756c7e42627549, - limb2: 0xd4abc2827ed09d862a303914, - limb3: 0x103b4a4f42b8e0b9ba5c8ce4 + limb0: 0x154829560d2743b5971e29a4, + limb1: 0x5f6c0f1802fc05571c70ff62, + limb2: 0xb88abc5cb11794d455517360, + limb3: 0xfd91ce6564def5f73a9c59 } }, G2Line { r0a0: u384 { - limb0: 0x127b5af1cc74d78a758f054d, - limb1: 0x22b1f38f1130a55bbc8341c2, - limb2: 0x86b0a1cd07e75159bb9d0b2d, - limb3: 0x81a25e43f434e98e683a501 + limb0: 0x5a16faabfb0906c9260f7c26, + limb1: 0x82bbb5defbb65255c6ddb347, + limb2: 0x22a379db953f8eea30e4877d, + limb3: 0xf274a33c3d784d415822eff }, r0a1: u384 { - limb0: 0x57ba4ca45f598225c54e8dd9, - limb1: 0x4b8dbb46075cd3057cc2b3f4, - limb2: 0x995a8131e63bed78d6cb8d38, - limb3: 0x2c41fe1ce7f42e810a99d4e + limb0: 0x35983b41a34381843d2e2a93, + limb1: 0x9d7aaf55609144144deee539, + limb2: 0x73b09c6ccb26087cfdae47c, + limb3: 0xac41ef5dcb45b53742ef884 }, r1a0: u384 { - limb0: 0xf56df11c48808519177403d6, - limb1: 0x643da6486efd6de49bf95833, - limb2: 0xab270b1d8fe7d76c5b4bc17, - limb3: 0x6d98367412955380ca1d3d1 + limb0: 0xe20469e69a33b316a749c601, + limb1: 0xa14bc099f06d7ea0d7be9c8b, + limb2: 0x366fa9aa7fd1d60ffe396f8a, + limb3: 0xf20f1c1526e122c41e584ab }, r1a1: u384 { - limb0: 0x978c38e451a0d8953382a97a, - limb1: 0x84ce3f5c49e0f6d93528023, - limb2: 0x4bc632103237cc8facc5c97f, - limb3: 0xd196a5495b6c49eedb6cb14 + limb0: 0xf5d419d09ece46239a94a549, + limb1: 0x2eadbcc2c8e251ba6a8b5c0, + limb2: 0x70cd433f4f131140f76c2f74, + limb3: 0xee5d93818b7a5bb921fbb08 } }, G2Line { r0a0: u384 { - limb0: 0x127b5af1cc74d78a758f054d, - limb1: 0x22b1f38f1130a55bbc8341c2, - limb2: 0x86b0a1cd07e75159bb9d0b2d, - limb3: 0x81a25e43f434e98e683a501 + limb0: 0x5a16faabfb0906c9260f7c26, + limb1: 0x82bbb5defbb65255c6ddb347, + limb2: 0x22a379db953f8eea30e4877d, + limb3: 0xf274a33c3d784d415822eff }, r0a1: u384 { - limb0: 0x57ba4ca45f598225c54e8dd9, - limb1: 0x4b8dbb46075cd3057cc2b3f4, - limb2: 0x995a8131e63bed78d6cb8d38, - limb3: 0x2c41fe1ce7f42e810a99d4e + limb0: 0x35983b41a34381843d2e2a93, + limb1: 0x9d7aaf55609144144deee539, + limb2: 0x73b09c6ccb26087cfdae47c, + limb3: 0xac41ef5dcb45b53742ef884 }, r1a0: u384 { - limb0: 0xf56df11c48808519177403d6, - limb1: 0x643da6486efd6de49bf95833, - limb2: 0xab270b1d8fe7d76c5b4bc17, - limb3: 0x6d98367412955380ca1d3d1 + limb0: 0xe20469e69a33b316a749c601, + limb1: 0xa14bc099f06d7ea0d7be9c8b, + limb2: 0x366fa9aa7fd1d60ffe396f8a, + limb3: 0xf20f1c1526e122c41e584ab }, r1a1: u384 { - limb0: 0x978c38e451a0d8953382a97a, - limb1: 0x84ce3f5c49e0f6d93528023, - limb2: 0x4bc632103237cc8facc5c97f, - limb3: 0xd196a5495b6c49eedb6cb14 + limb0: 0xf5d419d09ece46239a94a549, + limb1: 0x2eadbcc2c8e251ba6a8b5c0, + limb2: 0x70cd433f4f131140f76c2f74, + limb3: 0xee5d93818b7a5bb921fbb08 } }, G2Line { r0a0: u384 { - limb0: 0x1620e6d035364d44ed70b0e3, - limb1: 0xa6f464eeeb810d78e1ba5f78, - limb2: 0x5a0bd5adb43e2b0e0fa09def, - limb3: 0x9e6367406203e8884a61da7 + limb0: 0x6a8a89e8e4923b428d69842c, + limb1: 0x199bccc6d00899b259c09e38, + limb2: 0x41eb5587a4af620c378b3f8e, + limb3: 0x1977f83df4ef374aadaa18fa }, r0a1: u384 { - limb0: 0xa017ef59d5249067fc3a3a68, - limb1: 0x1a38725f4b461e6bbe97635e, - limb2: 0x9c23e1c436adbefce0e6428e, - limb3: 0x5ce0002b92cf01cf53f67d9 + limb0: 0x27c99155434e4be26df981a7, + limb1: 0xe391b34bb64f4b2e69849346, + limb2: 0xd47d9919fe0896ad0f3c4045, + limb3: 0xd90fb6f09fde454d5aa5c12 }, r1a0: u384 { - limb0: 0x23798bb4bb1d4643053a44dd, - limb1: 0xef7477064467d05ff6927cd8, - limb2: 0x5ea2cc30ac94badf810881b9, - limb3: 0x6cc97a778dc99ea4a71be3 + limb0: 0x1788f0c1ff368cf23468d8e, + limb1: 0x6a94900aaec2ceeff8dbdf15, + limb2: 0xb873689a9b5d4df1d85072b3, + limb3: 0x143d77234069b8e1ef7e7ee5 }, r1a1: u384 { - limb0: 0xf9268cd174aa3ac4e0de8ece, - limb1: 0x15b32391d5b04505382fcc54, - limb2: 0xbdbbff4a76c4f4bc1834b781, - limb3: 0x229a4c386b3ab70a9652099 + limb0: 0xe826c820b56bfdd35c0aa46f, + limb1: 0x7f0b84a899bef05c98316f0c, + limb2: 0x70cf60589887903abae84c6a, + limb3: 0x1958886aeceff1268f9696c1 } }, G2Line { r0a0: u384 { - limb0: 0x1620e6d035364d44ed70b0e3, - limb1: 0xa6f464eeeb810d78e1ba5f78, - limb2: 0x5a0bd5adb43e2b0e0fa09def, - limb3: 0x9e6367406203e8884a61da7 + limb0: 0x6a8a89e8e4923b428d69842c, + limb1: 0x199bccc6d00899b259c09e38, + limb2: 0x41eb5587a4af620c378b3f8e, + limb3: 0x1977f83df4ef374aadaa18fa }, r0a1: u384 { - limb0: 0xa017ef59d5249067fc3a3a68, - limb1: 0x1a38725f4b461e6bbe97635e, - limb2: 0x9c23e1c436adbefce0e6428e, - limb3: 0x5ce0002b92cf01cf53f67d9 + limb0: 0x27c99155434e4be26df981a7, + limb1: 0xe391b34bb64f4b2e69849346, + limb2: 0xd47d9919fe0896ad0f3c4045, + limb3: 0xd90fb6f09fde454d5aa5c12 }, r1a0: u384 { - limb0: 0x23798bb4bb1d4643053a44dd, - limb1: 0xef7477064467d05ff6927cd8, - limb2: 0x5ea2cc30ac94badf810881b9, - limb3: 0x6cc97a778dc99ea4a71be3 + limb0: 0x1788f0c1ff368cf23468d8e, + limb1: 0x6a94900aaec2ceeff8dbdf15, + limb2: 0xb873689a9b5d4df1d85072b3, + limb3: 0x143d77234069b8e1ef7e7ee5 }, r1a1: u384 { - limb0: 0xf9268cd174aa3ac4e0de8ece, - limb1: 0x15b32391d5b04505382fcc54, - limb2: 0xbdbbff4a76c4f4bc1834b781, - limb3: 0x229a4c386b3ab70a9652099 + limb0: 0xe826c820b56bfdd35c0aa46f, + limb1: 0x7f0b84a899bef05c98316f0c, + limb2: 0x70cf60589887903abae84c6a, + limb3: 0x1958886aeceff1268f9696c1 } }, G2Line { r0a0: u384 { - limb0: 0x9021541a9edb9a69ffceee57, - limb1: 0x37649109371f33974c7f0003, - limb2: 0xe93e7d114964a36bb90683b8, - limb3: 0x1600b7187bc9041a9a62969 + limb0: 0x8fd1028fb4bb97542eed7534, + limb1: 0xf389329a62986aca004915ec, + limb2: 0xf17f4e588b52a318958b086a, + limb3: 0xb327a5c1b493b5a12c89930 }, r0a1: u384 { - limb0: 0x720a7d6a9c204d531ec2f331, - limb1: 0x9237e09c65a47a8271fbecd5, - limb2: 0x65533605f8c52adc5584c629, - limb3: 0x9ca59bb50318648780b0c99 + limb0: 0x314d9f0cdbbd767ef972e3df, + limb1: 0x3044d4e32f899fda11ebdff, + limb2: 0xfd5bd7bd8a7570c158117d67, + limb3: 0x10009e599182a050a5daf72f }, r1a0: u384 { - limb0: 0xb4ff42bae00ad8a03cfff9e0, - limb1: 0x84018fe1662ea70ab8f89d21, - limb2: 0x9fdc1d7056e498a6d511bc43, - limb3: 0x11119afae5e84941c8ddd8c4 + limb0: 0xdcd63bc7205736f83f53c912, + limb1: 0x1091710b97a27329ed0aa7d6, + limb2: 0xaaf05ac9f3b1d7ca6d90a55b, + limb3: 0x59d50d49cacc568223ca4 }, r1a1: u384 { - limb0: 0xa044177cd71097b8fc96f2b1, - limb1: 0xf1f2abf586ed913a4f31f9f2, - limb2: 0xed9f70187a4257e2af8f0657, - limb3: 0x186f010cc20f65aab555ac36 + limb0: 0xe2499d4c022ecde1378c964c, + limb1: 0x77163dc787dd602f6cc1b513, + limb2: 0x85c853d921f3ffc726bd16e8, + limb3: 0x5a97e70c11e95d709646de5 } }, G2Line { r0a0: u384 { - limb0: 0x9021541a9edb9a69ffceee57, - limb1: 0x37649109371f33974c7f0003, - limb2: 0xe93e7d114964a36bb90683b8, - limb3: 0x1600b7187bc9041a9a62969 + limb0: 0x8fd1028fb4bb97542eed7534, + limb1: 0xf389329a62986aca004915ec, + limb2: 0xf17f4e588b52a318958b086a, + limb3: 0xb327a5c1b493b5a12c89930 }, r0a1: u384 { - limb0: 0x720a7d6a9c204d531ec2f331, - limb1: 0x9237e09c65a47a8271fbecd5, - limb2: 0x65533605f8c52adc5584c629, - limb3: 0x9ca59bb50318648780b0c99 + limb0: 0x314d9f0cdbbd767ef972e3df, + limb1: 0x3044d4e32f899fda11ebdff, + limb2: 0xfd5bd7bd8a7570c158117d67, + limb3: 0x10009e599182a050a5daf72f }, r1a0: u384 { - limb0: 0xb4ff42bae00ad8a03cfff9e0, - limb1: 0x84018fe1662ea70ab8f89d21, - limb2: 0x9fdc1d7056e498a6d511bc43, - limb3: 0x11119afae5e84941c8ddd8c4 + limb0: 0xdcd63bc7205736f83f53c912, + limb1: 0x1091710b97a27329ed0aa7d6, + limb2: 0xaaf05ac9f3b1d7ca6d90a55b, + limb3: 0x59d50d49cacc568223ca4 }, r1a1: u384 { - limb0: 0xa044177cd71097b8fc96f2b1, - limb1: 0xf1f2abf586ed913a4f31f9f2, - limb2: 0xed9f70187a4257e2af8f0657, - limb3: 0x186f010cc20f65aab555ac36 + limb0: 0xe2499d4c022ecde1378c964c, + limb1: 0x77163dc787dd602f6cc1b513, + limb2: 0x85c853d921f3ffc726bd16e8, + limb3: 0x5a97e70c11e95d709646de5 } }, G2Line { r0a0: u384 { - limb0: 0x8b5fb0e9ff91b349af0e8566, - limb1: 0xb50d55c62166b0aa67971738, - limb2: 0x2e1b4298d5d0f74848ca6276, - limb3: 0xf3f7f35f701b9b4bd16b89 + limb0: 0xa8e2acdd54c2a37fac399ae9, + limb1: 0x5f08b0cf9bb1722187d769df, + limb2: 0x5e60192d1178a427870ee92f, + limb3: 0xc58f19a368eb7e9dd650898 }, r0a1: u384 { - limb0: 0x2810ed7a82ea217a4906e291, - limb1: 0x2e2a8161f4ee69973c570e0f, - limb2: 0xd7f77daf485d721217fe6cde, - limb3: 0xb18eb53025be05d62afdc18 + limb0: 0xed1dd351bacca4efdab076ef, + limb1: 0xf4784603e0f63203da587f21, + limb2: 0x510d3d7906f864a2feadc2b4, + limb3: 0x179b9381f10efa43e47a1a66 }, r1a0: u384 { - limb0: 0x1a6291bc956e72ed41223afa, - limb1: 0xabc4f6a062826c1952b63a2d, - limb2: 0xe9fca3f3716d19e1675d1334, - limb3: 0x4fcf816f1781691cc7395b5 + limb0: 0x8245046dcb9600675589169d, + limb1: 0x6831f84ee6d65a0357c05dbd, + limb2: 0x3613b80f618d93972e155a77, + limb3: 0xfffaf6c60f8520ac2b5cc6a }, r1a1: u384 { - limb0: 0x8a9582193e06c55adad17904, - limb1: 0xfc8a7e68a39ccdc799e3a212, - limb2: 0xa357d9a7adf7c7e94e405767, - limb3: 0x130e768037c48f58f1d2d0ca + limb0: 0xd689218b1fc75758343055d7, + limb1: 0x571c90b843a3d2f914c2f1a, + limb2: 0xe0ae60005acc6eb5b5fec303, + limb3: 0x110f132ede7c4cd7f5b3809a } }, G2Line { r0a0: u384 { - limb0: 0x8b5fb0e9ff91b349af0e8566, - limb1: 0xb50d55c62166b0aa67971738, - limb2: 0x2e1b4298d5d0f74848ca6276, - limb3: 0xf3f7f35f701b9b4bd16b89 + limb0: 0xa8e2acdd54c2a37fac399ae9, + limb1: 0x5f08b0cf9bb1722187d769df, + limb2: 0x5e60192d1178a427870ee92f, + limb3: 0xc58f19a368eb7e9dd650898 }, r0a1: u384 { - limb0: 0x2810ed7a82ea217a4906e291, - limb1: 0x2e2a8161f4ee69973c570e0f, - limb2: 0xd7f77daf485d721217fe6cde, - limb3: 0xb18eb53025be05d62afdc18 + limb0: 0xed1dd351bacca4efdab076ef, + limb1: 0xf4784603e0f63203da587f21, + limb2: 0x510d3d7906f864a2feadc2b4, + limb3: 0x179b9381f10efa43e47a1a66 }, r1a0: u384 { - limb0: 0x1a6291bc956e72ed41223afa, - limb1: 0xabc4f6a062826c1952b63a2d, - limb2: 0xe9fca3f3716d19e1675d1334, - limb3: 0x4fcf816f1781691cc7395b5 + limb0: 0x8245046dcb9600675589169d, + limb1: 0x6831f84ee6d65a0357c05dbd, + limb2: 0x3613b80f618d93972e155a77, + limb3: 0xfffaf6c60f8520ac2b5cc6a }, r1a1: u384 { - limb0: 0x8a9582193e06c55adad17904, - limb1: 0xfc8a7e68a39ccdc799e3a212, - limb2: 0xa357d9a7adf7c7e94e405767, - limb3: 0x130e768037c48f58f1d2d0ca + limb0: 0xd689218b1fc75758343055d7, + limb1: 0x571c90b843a3d2f914c2f1a, + limb2: 0xe0ae60005acc6eb5b5fec303, + limb3: 0x110f132ede7c4cd7f5b3809a } }, G2Line { r0a0: u384 { - limb0: 0x992a0a1bcd4ef36a71480dd0, - limb1: 0xa7778d0918e3116624c0bd14, - limb2: 0xb137d565e4520209476ea2bd, - limb3: 0xfa34948a3b21c97e621970d + limb0: 0xd536acb66357a016210f7d7d, + limb1: 0x2bc95e16fe773ad4e709e601, + limb2: 0x24a0fcfa925f696c169d8655, + limb3: 0x1222af87ade519511ad8d79f }, r0a1: u384 { - limb0: 0x122c17cb8d68717c20f1d6e1, - limb1: 0x368dd16e7e9a4729006632aa, - limb2: 0x800e6e7af8437e8b4f8938c, - limb3: 0xdd815268af2b5c252eb421d + limb0: 0x84492062aebc9d8637c2b51, + limb1: 0x515ce8775b15ba3c8a9597a1, + limb2: 0x240e27fc63657b602e0dac0f, + limb3: 0x6b532c5cf958c24cc51ff8a }, r1a0: u384 { - limb0: 0xba846cdb9c8a2ad931a6c726, - limb1: 0x8a84491e6098e2b70eef5ecb, - limb2: 0x293c52ae73d44946e175b1ef, - limb3: 0x19c857a82c4e33200e335396 + limb0: 0xf8a0cb8136a24baa51586cd5, + limb1: 0x53eacc3a46f52d27f22e0a13, + limb2: 0x4d0ffe943187c0c967112cdc, + limb3: 0xa6da7f4bd1c05b07f70cbfa }, r1a1: u384 { - limb0: 0xdb75fa2f99d79bfcd8865a32, - limb1: 0x4393b4b6bdc888c934ce96dd, - limb2: 0x4d476c9841a5a4f5b4f64095, - limb3: 0x930fc2dc73342cde9b827ef + limb0: 0x8a3d6eed02f1c0fb81ca8bfd, + limb1: 0xa05451008a9c3a519d5205e9, + limb2: 0xc1fc9ec3dcd6e921a3e34415, + limb3: 0xd1188cde1504d69c0b057e9 } }, G2Line { r0a0: u384 { - limb0: 0x992a0a1bcd4ef36a71480dd0, - limb1: 0xa7778d0918e3116624c0bd14, - limb2: 0xb137d565e4520209476ea2bd, - limb3: 0xfa34948a3b21c97e621970d + limb0: 0xd536acb66357a016210f7d7d, + limb1: 0x2bc95e16fe773ad4e709e601, + limb2: 0x24a0fcfa925f696c169d8655, + limb3: 0x1222af87ade519511ad8d79f }, r0a1: u384 { - limb0: 0x122c17cb8d68717c20f1d6e1, - limb1: 0x368dd16e7e9a4729006632aa, - limb2: 0x800e6e7af8437e8b4f8938c, - limb3: 0xdd815268af2b5c252eb421d + limb0: 0x84492062aebc9d8637c2b51, + limb1: 0x515ce8775b15ba3c8a9597a1, + limb2: 0x240e27fc63657b602e0dac0f, + limb3: 0x6b532c5cf958c24cc51ff8a }, r1a0: u384 { - limb0: 0xba846cdb9c8a2ad931a6c726, - limb1: 0x8a84491e6098e2b70eef5ecb, - limb2: 0x293c52ae73d44946e175b1ef, - limb3: 0x19c857a82c4e33200e335396 + limb0: 0xf8a0cb8136a24baa51586cd5, + limb1: 0x53eacc3a46f52d27f22e0a13, + limb2: 0x4d0ffe943187c0c967112cdc, + limb3: 0xa6da7f4bd1c05b07f70cbfa }, r1a1: u384 { - limb0: 0xdb75fa2f99d79bfcd8865a32, - limb1: 0x4393b4b6bdc888c934ce96dd, - limb2: 0x4d476c9841a5a4f5b4f64095, - limb3: 0x930fc2dc73342cde9b827ef + limb0: 0x8a3d6eed02f1c0fb81ca8bfd, + limb1: 0xa05451008a9c3a519d5205e9, + limb2: 0xc1fc9ec3dcd6e921a3e34415, + limb3: 0xd1188cde1504d69c0b057e9 } }, G2Line { r0a0: u384 { - limb0: 0x64d4b5a981e7a94bedcb0fd1, - limb1: 0xf17eae029774b86260a2934d, - limb2: 0xecf9ec68655f4a6200f8a6e0, - limb3: 0x11670d400258751deb151029 + limb0: 0x7074f3ecc969bc59ce44f35, + limb1: 0x93b14676dc506a2d7d806852, + limb2: 0x8be52043f203bbc6bba8a218, + limb3: 0x1752bad4b27b2960826d8161 }, r0a1: u384 { - limb0: 0xe18a8d0a24b828b6da696b38, - limb1: 0x6ce67b4760910f54324f8e33, - limb2: 0xa61d7eeabcbc183d6e6a004f, - limb3: 0x46d915a9458ce0ede18d526 + limb0: 0x9972baee6d19dc41388bd51d, + limb1: 0xe9a4e539319900b525068979, + limb2: 0x713c3ba1f40735d04fb0db89, + limb3: 0xc91963fc9f0b4be62e5c7a2 }, r1a0: u384 { - limb0: 0x2f59b791ff448d9b7435e97f, - limb1: 0x17ddc4c48711ceb814036941, - limb2: 0xc88a2b6382f330bc09687120, - limb3: 0x2064257f090a26947b87e26 + limb0: 0x45771947aa8a51a8348d89a3, + limb1: 0x460b1638eb2517c5c5c5ba55, + limb2: 0x828bff4d5a0ae90f818ac5c, + limb3: 0x16c37fe7fba99e67a1b825bb }, r1a1: u384 { - limb0: 0x4e7123146e7ed65c00cfd861, - limb1: 0x4bdd72077114c41e2deece30, - limb2: 0x41fb6dda164b00c338569946, - limb3: 0xfb8dbcc962b93c8b630849a + limb0: 0xe3869ae464521ca1e8bd8d10, + limb1: 0x63bfecb8080fe056cfafab6f, + limb2: 0x5d9c244123ae745eaf80a8, + limb3: 0xd2694b440aa18960e41dbc6 } }, G2Line { r0a0: u384 { - limb0: 0x266ee062b93e94a060ca7401, - limb1: 0x9acba309ccb36b04d2832009, - limb2: 0x44ab77b6a923731bcbb38e23, - limb3: 0x1ccd0ae06e820f1565c0b8f + limb0: 0x6932e9682877f80ef4bc8f8b, + limb1: 0x242bb746df0432dfdef77df2, + limb2: 0xbafd6550599f9bbd7033f0cd, + limb3: 0xb4b6bd606a34a94e40095c4 }, r0a1: u384 { - limb0: 0x8ff41ace325e14ae32716947, - limb1: 0xbc0646ded9b45d1022fd972d, - limb2: 0x96e426f889271ed6e2493f82, - limb3: 0xb347dfb63e5e3ae328a9d20 + limb0: 0x8220ec6f78f561d99460fe87, + limb1: 0x82bf0b150cd769a323962a3f, + limb2: 0x1ebcc0582b2a5c59cd795258, + limb3: 0x3b66aa7bdfe40cae341ba27 }, r1a0: u384 { - limb0: 0xa5544de5d71f7fce3a7e5acc, - limb1: 0x35be3402dc87b2f3135b1a56, - limb2: 0x29ed8769d35717721146dc71, - limb3: 0x4e140a32bc21cceb94c443c + limb0: 0x275de02321bb336a0ac8e249, + limb1: 0x50c42a49e9240e0aac17ee21, + limb2: 0xeec0d2f07cadfe2773906b65, + limb3: 0x16d747cde0d71ffd63b4fc2d }, r1a1: u384 { - limb0: 0x1583dce0509ebe4eee8ad16a, - limb1: 0x72498b4fac06b090dda4f5a, - limb2: 0xb1b3a7028d677d061571e662, - limb3: 0x10b544783e9335d9c969d82a + limb0: 0xcc7c0d989ca07a7e726e6abd, + limb1: 0x6292c8d6d8c2a8481b4a845e, + limb2: 0xcf748e4dc4ce0358272b2e36, + limb3: 0x15eb67ca1107545ca1fc6f3b } }, G2Line { r0a0: u384 { - limb0: 0x64d4b5a981e7a94bedcb0fd1, - limb1: 0xf17eae029774b86260a2934d, - limb2: 0xecf9ec68655f4a6200f8a6e0, - limb3: 0x11670d400258751deb151029 + limb0: 0x7074f3ecc969bc59ce44f35, + limb1: 0x93b14676dc506a2d7d806852, + limb2: 0x8be52043f203bbc6bba8a218, + limb3: 0x1752bad4b27b2960826d8161 }, r0a1: u384 { - limb0: 0xe18a8d0a24b828b6da696b38, - limb1: 0x6ce67b4760910f54324f8e33, - limb2: 0xa61d7eeabcbc183d6e6a004f, - limb3: 0x46d915a9458ce0ede18d526 + limb0: 0x9972baee6d19dc41388bd51d, + limb1: 0xe9a4e539319900b525068979, + limb2: 0x713c3ba1f40735d04fb0db89, + limb3: 0xc91963fc9f0b4be62e5c7a2 }, r1a0: u384 { - limb0: 0x2f59b791ff448d9b7435e97f, - limb1: 0x17ddc4c48711ceb814036941, - limb2: 0xc88a2b6382f330bc09687120, - limb3: 0x2064257f090a26947b87e26 + limb0: 0x45771947aa8a51a8348d89a3, + limb1: 0x460b1638eb2517c5c5c5ba55, + limb2: 0x828bff4d5a0ae90f818ac5c, + limb3: 0x16c37fe7fba99e67a1b825bb }, r1a1: u384 { - limb0: 0x4e7123146e7ed65c00cfd861, - limb1: 0x4bdd72077114c41e2deece30, - limb2: 0x41fb6dda164b00c338569946, - limb3: 0xfb8dbcc962b93c8b630849a + limb0: 0xe3869ae464521ca1e8bd8d10, + limb1: 0x63bfecb8080fe056cfafab6f, + limb2: 0x5d9c244123ae745eaf80a8, + limb3: 0xd2694b440aa18960e41dbc6 } }, G2Line { r0a0: u384 { - limb0: 0x266ee062b93e94a060ca7401, - limb1: 0x9acba309ccb36b04d2832009, - limb2: 0x44ab77b6a923731bcbb38e23, - limb3: 0x1ccd0ae06e820f1565c0b8f + limb0: 0x6932e9682877f80ef4bc8f8b, + limb1: 0x242bb746df0432dfdef77df2, + limb2: 0xbafd6550599f9bbd7033f0cd, + limb3: 0xb4b6bd606a34a94e40095c4 }, r0a1: u384 { - limb0: 0x8ff41ace325e14ae32716947, - limb1: 0xbc0646ded9b45d1022fd972d, - limb2: 0x96e426f889271ed6e2493f82, - limb3: 0xb347dfb63e5e3ae328a9d20 + limb0: 0x8220ec6f78f561d99460fe87, + limb1: 0x82bf0b150cd769a323962a3f, + limb2: 0x1ebcc0582b2a5c59cd795258, + limb3: 0x3b66aa7bdfe40cae341ba27 }, r1a0: u384 { - limb0: 0xa5544de5d71f7fce3a7e5acc, - limb1: 0x35be3402dc87b2f3135b1a56, - limb2: 0x29ed8769d35717721146dc71, - limb3: 0x4e140a32bc21cceb94c443c + limb0: 0x275de02321bb336a0ac8e249, + limb1: 0x50c42a49e9240e0aac17ee21, + limb2: 0xeec0d2f07cadfe2773906b65, + limb3: 0x16d747cde0d71ffd63b4fc2d }, r1a1: u384 { - limb0: 0x1583dce0509ebe4eee8ad16a, - limb1: 0x72498b4fac06b090dda4f5a, - limb2: 0xb1b3a7028d677d061571e662, - limb3: 0x10b544783e9335d9c969d82a + limb0: 0xcc7c0d989ca07a7e726e6abd, + limb1: 0x6292c8d6d8c2a8481b4a845e, + limb2: 0xcf748e4dc4ce0358272b2e36, + limb3: 0x15eb67ca1107545ca1fc6f3b } }, G2Line { r0a0: u384 { - limb0: 0x3f07b0699ef41454dde529fb, - limb1: 0x48709d77298884838e35df71, - limb2: 0xaca3c1cc222c1488b328540b, - limb3: 0x19c5871fd4cdc3c2e598b2f6 + limb0: 0xb14db0f8d860ddd5c362f312, + limb1: 0x5d9654f4b05829441f7e907b, + limb2: 0x5686ff5096dd570bb611f2bc, + limb3: 0xc516f5daf0a5b17200119a9 }, r0a1: u384 { - limb0: 0x98c71830e2f5c149cf020661, - limb1: 0x77935ebbd83be6f49cfc9a39, - limb2: 0x342c3ea498719c6065bc6aea, - limb3: 0x79e8caccd38bc151392c435 + limb0: 0xe5902dc99f38a8bdefc2d797, + limb1: 0xdbd912ca50e87f794f1215b3, + limb2: 0x68f83fdf3f1f447bd9681f00, + limb3: 0x168fab08ad87825af50268cb }, r1a0: u384 { - limb0: 0x3dbd066e833529263abe4b8e, - limb1: 0x8c0a051a28728710059cdf48, - limb2: 0xde079ec19432949fcbad2f77, - limb3: 0x4e6812576569e1e1252dd1 + limb0: 0x34a3a02a8e94d3f30e01c69c, + limb1: 0x7aaa72ed06772b52384ac30e, + limb2: 0xee952c0ef91a33ab3929e290, + limb3: 0x8f7a4c04fb36ebff2191ea0 }, r1a1: u384 { - limb0: 0xb1273d7568f8b2371339b6d8, - limb1: 0x3acc7dccaeaa186a94d4da11, - limb2: 0x95446907ec0f1d70d14e696a, - limb3: 0x12c841b8fa0d0cb893105343 + limb0: 0xcfbacfea506bffd321cb3c52, + limb1: 0x2c9f59605a2f314d8571b78c, + limb2: 0x630f5a12c9ac866977f61ca0, + limb3: 0x9ba8715978bd2546f911c34 } }, G2Line { r0a0: u384 { - limb0: 0x3f07b0699ef41454dde529fb, - limb1: 0x48709d77298884838e35df71, - limb2: 0xaca3c1cc222c1488b328540b, - limb3: 0x19c5871fd4cdc3c2e598b2f6 + limb0: 0xb14db0f8d860ddd5c362f312, + limb1: 0x5d9654f4b05829441f7e907b, + limb2: 0x5686ff5096dd570bb611f2bc, + limb3: 0xc516f5daf0a5b17200119a9 }, r0a1: u384 { - limb0: 0x98c71830e2f5c149cf020661, - limb1: 0x77935ebbd83be6f49cfc9a39, - limb2: 0x342c3ea498719c6065bc6aea, - limb3: 0x79e8caccd38bc151392c435 + limb0: 0xe5902dc99f38a8bdefc2d797, + limb1: 0xdbd912ca50e87f794f1215b3, + limb2: 0x68f83fdf3f1f447bd9681f00, + limb3: 0x168fab08ad87825af50268cb }, r1a0: u384 { - limb0: 0x3dbd066e833529263abe4b8e, - limb1: 0x8c0a051a28728710059cdf48, - limb2: 0xde079ec19432949fcbad2f77, - limb3: 0x4e6812576569e1e1252dd1 + limb0: 0x34a3a02a8e94d3f30e01c69c, + limb1: 0x7aaa72ed06772b52384ac30e, + limb2: 0xee952c0ef91a33ab3929e290, + limb3: 0x8f7a4c04fb36ebff2191ea0 }, r1a1: u384 { - limb0: 0xb1273d7568f8b2371339b6d8, - limb1: 0x3acc7dccaeaa186a94d4da11, - limb2: 0x95446907ec0f1d70d14e696a, - limb3: 0x12c841b8fa0d0cb893105343 + limb0: 0xcfbacfea506bffd321cb3c52, + limb1: 0x2c9f59605a2f314d8571b78c, + limb2: 0x630f5a12c9ac866977f61ca0, + limb3: 0x9ba8715978bd2546f911c34 } }, G2Line { r0a0: u384 { - limb0: 0xba1c0788e7df7867f7583030, - limb1: 0x55f6da20f095d14c06913b63, - limb2: 0x8e7bf96e70e10a92a90e4d73, - limb3: 0xe1ea19e6073890a9ac266b6 + limb0: 0x63f64afd8a446817e42a39e4, + limb1: 0xc21092ca67db1632fccfbabb, + limb2: 0xcaffb81d61961333989b20a4, + limb3: 0xb15289c1b0975a9bc358315 }, r0a1: u384 { - limb0: 0x4851ed8d663d65a6f76379df, - limb1: 0x331f59967d86aafef572118e, - limb2: 0xe42b9446816e2dca9162ba3f, - limb3: 0x715be64375385f6083854f0 + limb0: 0xb475eab8a6f97129eedf077f, + limb1: 0xf05c662c68bc5856c089662d, + limb2: 0x12bf705b4904ab0404faabcf, + limb3: 0x387c47f36f3fe51b1e051a }, r1a0: u384 { - limb0: 0x97a2ec4cd67bd8e18d1aa37, - limb1: 0xa816294f41aedc43b7b46e1a, - limb2: 0xcdefabe5787244c4df62dd0d, - limb3: 0x1830e291d31adda5e63a3b5c + limb0: 0x148e6fc442c32b6f49f6d09d, + limb1: 0x682526a488b58edd862f62f3, + limb2: 0xbb6bc408694ab8c2b5c662e, + limb3: 0x17c82ecb1ba96dcf4e2cf2e4 }, r1a1: u384 { - limb0: 0xc992021343d43a31206752a, - limb1: 0xdbb61957553012cbed5b9cb9, - limb2: 0xd0356b2c2067263fd88afcb6, - limb3: 0xfd53821295a6ef3029f33ed + limb0: 0x3c0f3d0860171debf4f10680, + limb1: 0x8abafdbc71274663617b54ab, + limb2: 0x4afc06c377742662e4f0a46e, + limb3: 0x192445c55928e8a2aef23390 } }, G2Line { r0a0: u384 { - limb0: 0xba1c0788e7df7867f7583030, - limb1: 0x55f6da20f095d14c06913b63, - limb2: 0x8e7bf96e70e10a92a90e4d73, - limb3: 0xe1ea19e6073890a9ac266b6 + limb0: 0x63f64afd8a446817e42a39e4, + limb1: 0xc21092ca67db1632fccfbabb, + limb2: 0xcaffb81d61961333989b20a4, + limb3: 0xb15289c1b0975a9bc358315 }, r0a1: u384 { - limb0: 0x4851ed8d663d65a6f76379df, - limb1: 0x331f59967d86aafef572118e, - limb2: 0xe42b9446816e2dca9162ba3f, - limb3: 0x715be64375385f6083854f0 + limb0: 0xb475eab8a6f97129eedf077f, + limb1: 0xf05c662c68bc5856c089662d, + limb2: 0x12bf705b4904ab0404faabcf, + limb3: 0x387c47f36f3fe51b1e051a }, r1a0: u384 { - limb0: 0x97a2ec4cd67bd8e18d1aa37, - limb1: 0xa816294f41aedc43b7b46e1a, - limb2: 0xcdefabe5787244c4df62dd0d, - limb3: 0x1830e291d31adda5e63a3b5c + limb0: 0x148e6fc442c32b6f49f6d09d, + limb1: 0x682526a488b58edd862f62f3, + limb2: 0xbb6bc408694ab8c2b5c662e, + limb3: 0x17c82ecb1ba96dcf4e2cf2e4 }, r1a1: u384 { - limb0: 0xc992021343d43a31206752a, - limb1: 0xdbb61957553012cbed5b9cb9, - limb2: 0xd0356b2c2067263fd88afcb6, - limb3: 0xfd53821295a6ef3029f33ed + limb0: 0x3c0f3d0860171debf4f10680, + limb1: 0x8abafdbc71274663617b54ab, + limb2: 0x4afc06c377742662e4f0a46e, + limb3: 0x192445c55928e8a2aef23390 } }, G2Line { r0a0: u384 { - limb0: 0xe714b7af2f4839f085e6d7dd, - limb1: 0x27e505762b05ad4ed2fee631, - limb2: 0x3af4c1d33a8a8acdce4ff855, - limb3: 0xa6da62cf000540ab990cdd1 + limb0: 0x2f68c4c744894d7ad0aa12bc, + limb1: 0xbe68ba303884aedc25eff0c6, + limb2: 0xa242b55a96e40cdc4610e5de, + limb3: 0x16e0cb8c9fcbe135452c84f5 }, r0a1: u384 { - limb0: 0x7504a2ed32576210178e78d5, - limb1: 0x41a2db81f9f5d12e617f1ffe, - limb2: 0x93a89a1452ab31fc33a1a2a3, - limb3: 0x3dcf93f1b725784cc5a509 + limb0: 0xa80bb63ff93f2ff9b832d740, + limb1: 0x82684407dac5ff0da820767d, + limb2: 0x676a91107d1e19ed2bae9b1e, + limb3: 0x1526db7fa3f7b6f566295ada }, r1a0: u384 { - limb0: 0xe64739633c9414e10f2bb121, - limb1: 0x3c82da48bf8dba513f9fa797, - limb2: 0x59071ae798ebdd049156bdcd, - limb3: 0xa7cc4a6c28db4c3a3b3273b + limb0: 0xd0e175145fb68e9e0c88a, + limb1: 0x5155d026042704414e7bba96, + limb2: 0x8602d96869bd565ae5c7bce4, + limb3: 0x790d64f6c0bec981fedc77f }, r1a1: u384 { - limb0: 0xaba31d533594013b8361a5ed, - limb1: 0xbc86ea47cb41ab3b6423e250, - limb2: 0xfd273bd6b1d3ac1ee023ff43, - limb3: 0xa0e26d36f32a279200c3393 + limb0: 0x701e757bcfa55387e376328d, + limb1: 0x7dc5ea85707bb7d685d3b957, + limb2: 0xc2dab595b3937916682be5ab, + limb3: 0x3c93ab5b049350ebb4d9c43 } }, G2Line { r0a0: u384 { - limb0: 0xe714b7af2f4839f085e6d7dd, - limb1: 0x27e505762b05ad4ed2fee631, - limb2: 0x3af4c1d33a8a8acdce4ff855, - limb3: 0xa6da62cf000540ab990cdd1 + limb0: 0x2f68c4c744894d7ad0aa12bc, + limb1: 0xbe68ba303884aedc25eff0c6, + limb2: 0xa242b55a96e40cdc4610e5de, + limb3: 0x16e0cb8c9fcbe135452c84f5 }, r0a1: u384 { - limb0: 0x7504a2ed32576210178e78d5, - limb1: 0x41a2db81f9f5d12e617f1ffe, - limb2: 0x93a89a1452ab31fc33a1a2a3, - limb3: 0x3dcf93f1b725784cc5a509 + limb0: 0xa80bb63ff93f2ff9b832d740, + limb1: 0x82684407dac5ff0da820767d, + limb2: 0x676a91107d1e19ed2bae9b1e, + limb3: 0x1526db7fa3f7b6f566295ada }, r1a0: u384 { - limb0: 0xe64739633c9414e10f2bb121, - limb1: 0x3c82da48bf8dba513f9fa797, - limb2: 0x59071ae798ebdd049156bdcd, - limb3: 0xa7cc4a6c28db4c3a3b3273b + limb0: 0xd0e175145fb68e9e0c88a, + limb1: 0x5155d026042704414e7bba96, + limb2: 0x8602d96869bd565ae5c7bce4, + limb3: 0x790d64f6c0bec981fedc77f }, r1a1: u384 { - limb0: 0xaba31d533594013b8361a5ed, - limb1: 0xbc86ea47cb41ab3b6423e250, - limb2: 0xfd273bd6b1d3ac1ee023ff43, - limb3: 0xa0e26d36f32a279200c3393 + limb0: 0x701e757bcfa55387e376328d, + limb1: 0x7dc5ea85707bb7d685d3b957, + limb2: 0xc2dab595b3937916682be5ab, + limb3: 0x3c93ab5b049350ebb4d9c43 } }, G2Line { r0a0: u384 { - limb0: 0x36e7eab512d09097907cef99, - limb1: 0xcd2552d6f956f54827c47474, - limb2: 0xcfe5bacdd2672e66b8a4d04b, - limb3: 0x1678879dd6490ed5b904967a + limb0: 0xf65ac160449408076d538cf3, + limb1: 0x3ce3d4a2640d40d46c8698a7, + limb2: 0xd4d6c7eb1ff94f0885a8e527, + limb3: 0x15b6a699e8045657b282c951 }, r0a1: u384 { - limb0: 0x90eb4f784d8daa5ebec3bef5, - limb1: 0xaf237b057c86ff417b0af355, - limb2: 0x4115990fcc8ce8e0f35b7d46, - limb3: 0x1604b5033238fea7a0215562 + limb0: 0xe6ba76a2f69a47f160675430, + limb1: 0xf28ba5df2cc9054c42ea51c6, + limb2: 0x52ad14ac3962092467a70248, + limb3: 0x689f4a7ae98593b137a511c }, r1a0: u384 { - limb0: 0xb21770b244c9f0733a63f03c, - limb1: 0xb73d2f5836928e760e75db98, - limb2: 0xc795aad0ac109213c22b4fea, - limb3: 0x1319a0b898e8ca47422d0794 + limb0: 0xe7f9351a232747b370ecbfad, + limb1: 0xb19e25e4125c1ae4514188c8, + limb2: 0x4485faa60025dfd4f0fc18e6, + limb3: 0x52e70e05339a86edfac13f5 }, r1a1: u384 { - limb0: 0x9868c544b7dbe3c4bdc9e17e, - limb1: 0x61f0d16b3b0c97d3d0abfa82, - limb2: 0xd1ca65e307923e8ba4f6a6ca, - limb3: 0x10658802f1205dcbbde329be + limb0: 0xdc42c2b34f8cc1b6669e847a, + limb1: 0x309fac4721819756017e59a1, + limb2: 0x56b057160c59ee07690f66b2, + limb3: 0x176d40c594a154c396fef950 } }, G2Line { r0a0: u384 { - limb0: 0x36e7eab512d09097907cef99, - limb1: 0xcd2552d6f956f54827c47474, - limb2: 0xcfe5bacdd2672e66b8a4d04b, - limb3: 0x1678879dd6490ed5b904967a + limb0: 0xf65ac160449408076d538cf3, + limb1: 0x3ce3d4a2640d40d46c8698a7, + limb2: 0xd4d6c7eb1ff94f0885a8e527, + limb3: 0x15b6a699e8045657b282c951 }, r0a1: u384 { - limb0: 0x90eb4f784d8daa5ebec3bef5, - limb1: 0xaf237b057c86ff417b0af355, - limb2: 0x4115990fcc8ce8e0f35b7d46, - limb3: 0x1604b5033238fea7a0215562 + limb0: 0xe6ba76a2f69a47f160675430, + limb1: 0xf28ba5df2cc9054c42ea51c6, + limb2: 0x52ad14ac3962092467a70248, + limb3: 0x689f4a7ae98593b137a511c }, r1a0: u384 { - limb0: 0xb21770b244c9f0733a63f03c, - limb1: 0xb73d2f5836928e760e75db98, - limb2: 0xc795aad0ac109213c22b4fea, - limb3: 0x1319a0b898e8ca47422d0794 + limb0: 0xe7f9351a232747b370ecbfad, + limb1: 0xb19e25e4125c1ae4514188c8, + limb2: 0x4485faa60025dfd4f0fc18e6, + limb3: 0x52e70e05339a86edfac13f5 }, r1a1: u384 { - limb0: 0x9868c544b7dbe3c4bdc9e17e, - limb1: 0x61f0d16b3b0c97d3d0abfa82, - limb2: 0xd1ca65e307923e8ba4f6a6ca, - limb3: 0x10658802f1205dcbbde329be + limb0: 0xdc42c2b34f8cc1b6669e847a, + limb1: 0x309fac4721819756017e59a1, + limb2: 0x56b057160c59ee07690f66b2, + limb3: 0x176d40c594a154c396fef950 } }, G2Line { r0a0: u384 { - limb0: 0x2d6079c2700fbdbaff677c28, - limb1: 0x47be5468ec86e53819924f6c, - limb2: 0x4ab160c9cc6e1d8bbd6a357c, - limb3: 0x12dadaf188e778e3ed1996a1 + limb0: 0x9c6e85e6a77538fa560fd462, + limb1: 0x9fb82c0685a3c27a1bf90ba7, + limb2: 0x493994f8fce59e945c485c28, + limb3: 0x3766b43e7a08257ed2354ed }, r0a1: u384 { - limb0: 0xf81812a1d18820f1f001bdea, - limb1: 0xec8509a24e071cdcc72c421b, - limb2: 0xadf1ba0e0733879125a2b4bf, - limb3: 0x10d967b5b55376b61454f266 + limb0: 0x854e18b7612609711346fef6, + limb1: 0xf4057e2cfc6dcbf656d4ac9c, + limb2: 0xe0179710ad38518ff2118bc4, + limb3: 0xd257c30e6286c26ffdbee02 }, r1a0: u384 { - limb0: 0x7d53844d6a7647f65289ade4, - limb1: 0x9a92caa026ad9031b4c91446, - limb2: 0x1a23978df83d170f66de84b7, - limb3: 0x189ad538c1705e6a82032944 + limb0: 0x96a6b71a83c77aee100e530d, + limb1: 0xc6153a5f37b78ee455e52d5f, + limb2: 0xd2d97fc6614ca2f3bb9ee87f, + limb3: 0x168ec4820db83d5e8a6c9ef }, r1a1: u384 { - limb0: 0x43f4c23c495dbc6a0598d2b4, - limb1: 0x7152b4055f4ad506cf8f5a2, - limb2: 0xe8ce079dab6c10e3d237b3b6, - limb3: 0x19d417e02f85a08a60ee0a4f + limb0: 0xad2ce1bfa6711a5edd09977f, + limb1: 0x96cbcc960eb483b672649ce6, + limb2: 0xd2a8f121e34371fdb96cbd6c, + limb3: 0xeb3de344858ace964e05255 } }, G2Line { r0a0: u384 { - limb0: 0x2d6079c2700fbdbaff677c28, - limb1: 0x47be5468ec86e53819924f6c, - limb2: 0x4ab160c9cc6e1d8bbd6a357c, - limb3: 0x12dadaf188e778e3ed1996a1 + limb0: 0x9c6e85e6a77538fa560fd462, + limb1: 0x9fb82c0685a3c27a1bf90ba7, + limb2: 0x493994f8fce59e945c485c28, + limb3: 0x3766b43e7a08257ed2354ed }, r0a1: u384 { - limb0: 0xf81812a1d18820f1f001bdea, - limb1: 0xec8509a24e071cdcc72c421b, - limb2: 0xadf1ba0e0733879125a2b4bf, - limb3: 0x10d967b5b55376b61454f266 + limb0: 0x854e18b7612609711346fef6, + limb1: 0xf4057e2cfc6dcbf656d4ac9c, + limb2: 0xe0179710ad38518ff2118bc4, + limb3: 0xd257c30e6286c26ffdbee02 }, r1a0: u384 { - limb0: 0x7d53844d6a7647f65289ade4, - limb1: 0x9a92caa026ad9031b4c91446, - limb2: 0x1a23978df83d170f66de84b7, - limb3: 0x189ad538c1705e6a82032944 + limb0: 0x96a6b71a83c77aee100e530d, + limb1: 0xc6153a5f37b78ee455e52d5f, + limb2: 0xd2d97fc6614ca2f3bb9ee87f, + limb3: 0x168ec4820db83d5e8a6c9ef }, r1a1: u384 { - limb0: 0x43f4c23c495dbc6a0598d2b4, - limb1: 0x7152b4055f4ad506cf8f5a2, - limb2: 0xe8ce079dab6c10e3d237b3b6, - limb3: 0x19d417e02f85a08a60ee0a4f + limb0: 0xad2ce1bfa6711a5edd09977f, + limb1: 0x96cbcc960eb483b672649ce6, + limb2: 0xd2a8f121e34371fdb96cbd6c, + limb3: 0xeb3de344858ace964e05255 } }, G2Line { r0a0: u384 { - limb0: 0xf29807901541aabd31348a99, - limb1: 0xec54808ee217aaaad6920409, - limb2: 0xdc4f68c8a7545ef2c9bb7eb0, - limb3: 0x152d046755efbbcd2148ec78 + limb0: 0xfdef7fccc66ed18219fbc45f, + limb1: 0xd0f6421d89eac7d103436a7e, + limb2: 0x3fae04610eca3b863d25d41, + limb3: 0x7faf7cb3c233d6fa66353e5 }, r0a1: u384 { - limb0: 0x695a98954437f543e0db40b1, - limb1: 0xddc443f98f79d34a5dc631f4, - limb2: 0x69b009f73a7cb0c200b5b643, - limb3: 0x414e0f1ce4b5daa2695ee4f + limb0: 0xe2e3987622b6d399fd1d8cf0, + limb1: 0x3cce79c88a07edc34644a666, + limb2: 0x703e264197ee5f0b2aef830c, + limb3: 0x61f1ef1b9fefd9a2419788b }, r1a0: u384 { - limb0: 0xb0fef109431deb6b06c37d9, - limb1: 0x147f1809e045b8a7ee4d52a6, - limb2: 0xa7f731608bf90c95fba0f9bb, - limb3: 0x4e69f88cc2d85c55bf9b3c9 + limb0: 0xa315bb3433ddbe80ad895586, + limb1: 0x707338d0048c919ea39b8591, + limb2: 0xf07947c8a4bccccaf2ec7001, + limb3: 0x1694b12c04ec620596660bc7 }, r1a1: u384 { - limb0: 0x9a3625035e93a11cdcaff72, - limb1: 0x68d5953addac9a4d59ae7192, - limb2: 0x31a6405c1ae7e5e1bcb697f6, - limb3: 0x16bf3fbd824ca81e9e8c0257 + limb0: 0xccd3fbe95f71f12f38f7228e, + limb1: 0x433fe25846ac52cae1b379bd, + limb2: 0xbc75223acebf2d47b0678df2, + limb3: 0x81bdc3e10bc9b41d2d6313b } }, G2Line { r0a0: u384 { - limb0: 0xf29807901541aabd31348a99, - limb1: 0xec54808ee217aaaad6920409, - limb2: 0xdc4f68c8a7545ef2c9bb7eb0, - limb3: 0x152d046755efbbcd2148ec78 + limb0: 0xfdef7fccc66ed18219fbc45f, + limb1: 0xd0f6421d89eac7d103436a7e, + limb2: 0x3fae04610eca3b863d25d41, + limb3: 0x7faf7cb3c233d6fa66353e5 }, r0a1: u384 { - limb0: 0x695a98954437f543e0db40b1, - limb1: 0xddc443f98f79d34a5dc631f4, - limb2: 0x69b009f73a7cb0c200b5b643, - limb3: 0x414e0f1ce4b5daa2695ee4f + limb0: 0xe2e3987622b6d399fd1d8cf0, + limb1: 0x3cce79c88a07edc34644a666, + limb2: 0x703e264197ee5f0b2aef830c, + limb3: 0x61f1ef1b9fefd9a2419788b }, r1a0: u384 { - limb0: 0xb0fef109431deb6b06c37d9, - limb1: 0x147f1809e045b8a7ee4d52a6, - limb2: 0xa7f731608bf90c95fba0f9bb, - limb3: 0x4e69f88cc2d85c55bf9b3c9 + limb0: 0xa315bb3433ddbe80ad895586, + limb1: 0x707338d0048c919ea39b8591, + limb2: 0xf07947c8a4bccccaf2ec7001, + limb3: 0x1694b12c04ec620596660bc7 }, r1a1: u384 { - limb0: 0x9a3625035e93a11cdcaff72, - limb1: 0x68d5953addac9a4d59ae7192, - limb2: 0x31a6405c1ae7e5e1bcb697f6, - limb3: 0x16bf3fbd824ca81e9e8c0257 + limb0: 0xccd3fbe95f71f12f38f7228e, + limb1: 0x433fe25846ac52cae1b379bd, + limb2: 0xbc75223acebf2d47b0678df2, + limb3: 0x81bdc3e10bc9b41d2d6313b } }, G2Line { r0a0: u384 { - limb0: 0xe280addff11713b23882b694, - limb1: 0x4613acdb03c7d95ba3a2677, - limb2: 0xee66cf782f76b2262ffe66b4, - limb3: 0x2baa9820832d094790b07a0 + limb0: 0xfa2a48365e288401bed22356, + limb1: 0xb758b95f5d94d30e1c23bcf9, + limb2: 0x10e9f1ea194b07feb87ad6e9, + limb3: 0x1015b8e3fa22a6d854c23c25 }, r0a1: u384 { - limb0: 0x3fc85bcf8a219f0d7cd4561b, - limb1: 0x56b6daf6b3053e165a8628f6, - limb2: 0x2d309acbec802b87a0f1e63a, - limb3: 0x128ebc05d1e9caad3af9b885 + limb0: 0xaec5e185788c4a9753570719, + limb1: 0xa3ab0c87a361dc5543785d2d, + limb2: 0x60e25571914a7f16944c0b67, + limb3: 0x1db3643fcfca8081c398bdc }, r1a0: u384 { - limb0: 0x488544ea4e009f47d0e7fb46, - limb1: 0x9c8dc48e06f52a61124103a9, - limb2: 0x534371f83d451d873f1009e6, - limb3: 0xa7514ffbef3807659cd0c14 + limb0: 0xff97723a85c1453651460606, + limb1: 0xe76638687ec62a042aec8c36, + limb2: 0x28b572655137c3f3c7aec8c2, + limb3: 0x525af862c7a6cfa46c61947 }, r1a1: u384 { - limb0: 0x8c398cd45e4a02abe46113d6, - limb1: 0x55669b665d63bbb53f233513, - limb2: 0x957256e0757a29e922d623da, - limb3: 0x4427e489405a100cd830829 + limb0: 0xdf9fe9c404c4d19aa9d6ebd4, + limb1: 0x40330d8ff2e399772d1242d6, + limb2: 0x700f07e5a33f296a4d2dd399, + limb3: 0x1281b6e7edc328d6124997ee } }, G2Line { r0a0: u384 { - limb0: 0xe280addff11713b23882b694, - limb1: 0x4613acdb03c7d95ba3a2677, - limb2: 0xee66cf782f76b2262ffe66b4, - limb3: 0x2baa9820832d094790b07a0 + limb0: 0xfa2a48365e288401bed22356, + limb1: 0xb758b95f5d94d30e1c23bcf9, + limb2: 0x10e9f1ea194b07feb87ad6e9, + limb3: 0x1015b8e3fa22a6d854c23c25 }, r0a1: u384 { - limb0: 0x3fc85bcf8a219f0d7cd4561b, - limb1: 0x56b6daf6b3053e165a8628f6, - limb2: 0x2d309acbec802b87a0f1e63a, - limb3: 0x128ebc05d1e9caad3af9b885 + limb0: 0xaec5e185788c4a9753570719, + limb1: 0xa3ab0c87a361dc5543785d2d, + limb2: 0x60e25571914a7f16944c0b67, + limb3: 0x1db3643fcfca8081c398bdc }, r1a0: u384 { - limb0: 0x488544ea4e009f47d0e7fb46, - limb1: 0x9c8dc48e06f52a61124103a9, - limb2: 0x534371f83d451d873f1009e6, - limb3: 0xa7514ffbef3807659cd0c14 + limb0: 0xff97723a85c1453651460606, + limb1: 0xe76638687ec62a042aec8c36, + limb2: 0x28b572655137c3f3c7aec8c2, + limb3: 0x525af862c7a6cfa46c61947 }, r1a1: u384 { - limb0: 0x8c398cd45e4a02abe46113d6, - limb1: 0x55669b665d63bbb53f233513, - limb2: 0x957256e0757a29e922d623da, - limb3: 0x4427e489405a100cd830829 + limb0: 0xdf9fe9c404c4d19aa9d6ebd4, + limb1: 0x40330d8ff2e399772d1242d6, + limb2: 0x700f07e5a33f296a4d2dd399, + limb3: 0x1281b6e7edc328d6124997ee } }, G2Line { r0a0: u384 { - limb0: 0x3340b022b32972e0bad84807, - limb1: 0xcdc97e1ff5683ba325e43819, - limb2: 0x1fd09b98f427bb04de9d3e6a, - limb3: 0x167a4467d73029f95782b993 + limb0: 0x95f3d826c05179b13655ef29, + limb1: 0xf2e9c2cbf0e9d7d137cc5ae6, + limb2: 0x134cb9c83d1f6d72ae0db7f4, + limb3: 0x7695cdfd7fc226478f399ca }, r0a1: u384 { - limb0: 0x21b6a29bbd457cc69a0fa4ed, - limb1: 0xa125bea2e8201b7c8dff40d7, - limb2: 0x6bca729062e285961a3b70e1, - limb3: 0x1423c55a91e171950dfa925d + limb0: 0xa9fecf51ff6c6fe3d57a7d8b, + limb1: 0x8fb00714c39594fa3de30bbd, + limb2: 0x88c4834a4681af9c74c56a4d, + limb3: 0x16a9816333cc838d77b8dbe7 }, r1a0: u384 { - limb0: 0x7785b6368cab713bd19a2a17, - limb1: 0x19c28e1901b834c5dc5aabcf, - limb2: 0xfcc60fca524344abe01450b4, - limb3: 0x24945878f938a9568fb28fe + limb0: 0xc5cbdb4a9a252db0678000bf, + limb1: 0xb7d711c3302a59f737d2934e, + limb2: 0x9c717bc598aefce5190a7fe2, + limb3: 0xe022f63b445943df72ebfec }, r1a1: u384 { - limb0: 0xefee1a04c330159b51871cde, - limb1: 0x3a90848305357bc6fabf5a27, - limb2: 0x57ebebd83d32be7ee0855da4, - limb3: 0xb8dc42aa1086caa06967c13 + limb0: 0xd89a0ac06dc78463c39dc0c2, + limb1: 0x774e2c35170a4adef076992f, + limb2: 0x47e149c468565c6342f2ee9, + limb3: 0x18a3b9c0766b12f8aed8ed93 } }, G2Line { r0a0: u384 { - limb0: 0x3340b022b32972e0bad84807, - limb1: 0xcdc97e1ff5683ba325e43819, - limb2: 0x1fd09b98f427bb04de9d3e6a, - limb3: 0x167a4467d73029f95782b993 + limb0: 0x95f3d826c05179b13655ef29, + limb1: 0xf2e9c2cbf0e9d7d137cc5ae6, + limb2: 0x134cb9c83d1f6d72ae0db7f4, + limb3: 0x7695cdfd7fc226478f399ca }, r0a1: u384 { - limb0: 0x21b6a29bbd457cc69a0fa4ed, - limb1: 0xa125bea2e8201b7c8dff40d7, - limb2: 0x6bca729062e285961a3b70e1, - limb3: 0x1423c55a91e171950dfa925d + limb0: 0xa9fecf51ff6c6fe3d57a7d8b, + limb1: 0x8fb00714c39594fa3de30bbd, + limb2: 0x88c4834a4681af9c74c56a4d, + limb3: 0x16a9816333cc838d77b8dbe7 }, r1a0: u384 { - limb0: 0x7785b6368cab713bd19a2a17, - limb1: 0x19c28e1901b834c5dc5aabcf, - limb2: 0xfcc60fca524344abe01450b4, - limb3: 0x24945878f938a9568fb28fe + limb0: 0xc5cbdb4a9a252db0678000bf, + limb1: 0xb7d711c3302a59f737d2934e, + limb2: 0x9c717bc598aefce5190a7fe2, + limb3: 0xe022f63b445943df72ebfec }, r1a1: u384 { - limb0: 0xefee1a04c330159b51871cde, - limb1: 0x3a90848305357bc6fabf5a27, - limb2: 0x57ebebd83d32be7ee0855da4, - limb3: 0xb8dc42aa1086caa06967c13 + limb0: 0xd89a0ac06dc78463c39dc0c2, + limb1: 0x774e2c35170a4adef076992f, + limb2: 0x47e149c468565c6342f2ee9, + limb3: 0x18a3b9c0766b12f8aed8ed93 } }, G2Line { r0a0: u384 { - limb0: 0xe5bc70c4cf30a246276910a7, - limb1: 0x10ebb016674babfe795a7e23, - limb2: 0x3db22c8a8e3f754fb8dd302, - limb3: 0xb002a26fdc053ee7d9372bd + limb0: 0xb7534a62cdc162c2de58979b, + limb1: 0x9ff2cd37a1c558b67e2f5678, + limb2: 0xc0e6ce575334ae3a8de17dd7, + limb3: 0x19501226077b75a37538c451 }, r0a1: u384 { - limb0: 0xc335d742ab719ce438c8f966, - limb1: 0x62aff41d02369ee3148ce033, - limb2: 0x8731e9302b592f34f5d8c1d0, - limb3: 0x19dbf33aa3ea3796e3f208e + limb0: 0x3a943d7b1e53666b8e6b3e51, + limb1: 0x787903b401e45a380479512d, + limb2: 0xef748f6f0090f0066456c847, + limb3: 0x3c4cab4abd941d78878ed2c }, r1a0: u384 { - limb0: 0xa127d1fe63397781e2f79a25, - limb1: 0xd27f976174dcae5e3b458370, - limb2: 0xcbf97e32f2a40f1e279f8f65, - limb3: 0x134626ef4dd2c8a11637d5c1 + limb0: 0xca80127688190d2ed06a1eeb, + limb1: 0x15a695fca449f3f31d3e1bac, + limb2: 0xfe0997c8a0d4374443426786, + limb3: 0xba9b807d434c97abe206772 }, r1a1: u384 { - limb0: 0x91e6e67a56420cec51e77c18, - limb1: 0x82c4511805ff6c11a13a5c58, - limb2: 0x71cb7f079a9bd0a6437085c7, - limb3: 0x94f197b27697de0b30492a7 + limb0: 0x1a0cf25cdbb9c4b1e256dc8b, + limb1: 0x9f91c6e80f821cb0636864c0, + limb2: 0xa9422df77effb37a0b3ef745, + limb3: 0x17bac78702d14cd59e508221 } }, G2Line { r0a0: u384 { - limb0: 0xe5bc70c4cf30a246276910a7, - limb1: 0x10ebb016674babfe795a7e23, - limb2: 0x3db22c8a8e3f754fb8dd302, - limb3: 0xb002a26fdc053ee7d9372bd + limb0: 0xb7534a62cdc162c2de58979b, + limb1: 0x9ff2cd37a1c558b67e2f5678, + limb2: 0xc0e6ce575334ae3a8de17dd7, + limb3: 0x19501226077b75a37538c451 }, r0a1: u384 { - limb0: 0xc335d742ab719ce438c8f966, - limb1: 0x62aff41d02369ee3148ce033, - limb2: 0x8731e9302b592f34f5d8c1d0, - limb3: 0x19dbf33aa3ea3796e3f208e + limb0: 0x3a943d7b1e53666b8e6b3e51, + limb1: 0x787903b401e45a380479512d, + limb2: 0xef748f6f0090f0066456c847, + limb3: 0x3c4cab4abd941d78878ed2c }, r1a0: u384 { - limb0: 0xa127d1fe63397781e2f79a25, - limb1: 0xd27f976174dcae5e3b458370, - limb2: 0xcbf97e32f2a40f1e279f8f65, - limb3: 0x134626ef4dd2c8a11637d5c1 + limb0: 0xca80127688190d2ed06a1eeb, + limb1: 0x15a695fca449f3f31d3e1bac, + limb2: 0xfe0997c8a0d4374443426786, + limb3: 0xba9b807d434c97abe206772 }, r1a1: u384 { - limb0: 0x91e6e67a56420cec51e77c18, - limb1: 0x82c4511805ff6c11a13a5c58, - limb2: 0x71cb7f079a9bd0a6437085c7, - limb3: 0x94f197b27697de0b30492a7 + limb0: 0x1a0cf25cdbb9c4b1e256dc8b, + limb1: 0x9f91c6e80f821cb0636864c0, + limb2: 0xa9422df77effb37a0b3ef745, + limb3: 0x17bac78702d14cd59e508221 } }, G2Line { r0a0: u384 { - limb0: 0x664e038bc32ade06c2e526ec, - limb1: 0x94bc32628a8b1fad59fc05c4, - limb2: 0x8dc4466dabbf9c2983ba8ccb, - limb3: 0x15d113c48dfb83dccef7c6ad + limb0: 0xde23a40ddc2e63839659d6af, + limb1: 0x7236dd37933aa6a347c8f801, + limb2: 0x452e0c75c947915c9dea0129, + limb3: 0x187f7dd4a4bd686f310b36ca }, r0a1: u384 { - limb0: 0xca3ea64f1fe111cdcdb8d2a5, - limb1: 0x3b982098561a3934931443c7, - limb2: 0xd1f0180d0af483844d1a5058, - limb3: 0x13d37d83781b8397388bb9d6 + limb0: 0x92280529c2ac31341c108544, + limb1: 0x12a0412b12fa0664dc6c2f63, + limb2: 0x3dd83fefe01546994474e8fc, + limb3: 0xa2dbbad0a4becd08ef85397 }, r1a0: u384 { - limb0: 0xc341676b126710bb4054f4d3, - limb1: 0x43b91497631da3e61294e4a4, - limb2: 0xfb3a4cb9db70b5c1ae4c8bc7, - limb3: 0x18b987b1fabf3c0da034e1be + limb0: 0xd075ee9c871d4dd8354e6c16, + limb1: 0x6e120403cf59229b2959e140, + limb2: 0xcc5744bdf052e9582845c1d2, + limb3: 0x7fb777d4cef9c7fed055188 }, r1a1: u384 { - limb0: 0xa8047edc773407c872fc58c5, - limb1: 0x93fb6737132e9b64066c4cd1, - limb2: 0x309c42322e66ffa3a5bc9465, - limb3: 0x13a4385c1c5dd07edc498e31 + limb0: 0xeef57aa4869b173f6b70ac7e, + limb1: 0x88e47b20b141ef90714c2f48, + limb2: 0x43fe27404db53d71a35ab859, + limb3: 0xd9707dfbecc83b5bf190616 } }, G2Line { r0a0: u384 { - limb0: 0x664e038bc32ade06c2e526ec, - limb1: 0x94bc32628a8b1fad59fc05c4, - limb2: 0x8dc4466dabbf9c2983ba8ccb, - limb3: 0x15d113c48dfb83dccef7c6ad + limb0: 0xde23a40ddc2e63839659d6af, + limb1: 0x7236dd37933aa6a347c8f801, + limb2: 0x452e0c75c947915c9dea0129, + limb3: 0x187f7dd4a4bd686f310b36ca }, r0a1: u384 { - limb0: 0xca3ea64f1fe111cdcdb8d2a5, - limb1: 0x3b982098561a3934931443c7, - limb2: 0xd1f0180d0af483844d1a5058, - limb3: 0x13d37d83781b8397388bb9d6 + limb0: 0x92280529c2ac31341c108544, + limb1: 0x12a0412b12fa0664dc6c2f63, + limb2: 0x3dd83fefe01546994474e8fc, + limb3: 0xa2dbbad0a4becd08ef85397 }, r1a0: u384 { - limb0: 0xc341676b126710bb4054f4d3, - limb1: 0x43b91497631da3e61294e4a4, - limb2: 0xfb3a4cb9db70b5c1ae4c8bc7, - limb3: 0x18b987b1fabf3c0da034e1be + limb0: 0xd075ee9c871d4dd8354e6c16, + limb1: 0x6e120403cf59229b2959e140, + limb2: 0xcc5744bdf052e9582845c1d2, + limb3: 0x7fb777d4cef9c7fed055188 }, r1a1: u384 { - limb0: 0xa8047edc773407c872fc58c5, - limb1: 0x93fb6737132e9b64066c4cd1, - limb2: 0x309c42322e66ffa3a5bc9465, - limb3: 0x13a4385c1c5dd07edc498e31 + limb0: 0xeef57aa4869b173f6b70ac7e, + limb1: 0x88e47b20b141ef90714c2f48, + limb2: 0x43fe27404db53d71a35ab859, + limb3: 0xd9707dfbecc83b5bf190616 } }, G2Line { r0a0: u384 { - limb0: 0x94485c50cf8b885d35d4c62c, - limb1: 0xc5c4197f6c55e561e27a9b9c, - limb2: 0x56e4bcfec01ece4f90a20afe, - limb3: 0x62fbede753762b432a259fb + limb0: 0x6d6a72660f57c436776eda35, + limb1: 0xeafcdca6e1a8e83e00a7f0ef, + limb2: 0xd033eaf2ad6e66cc37d0ec8e, + limb3: 0xef93525e6741eb730be0a46 }, r0a1: u384 { - limb0: 0xfbcd7a8e1778a01f6fe79680, - limb1: 0xecabc6842fed87373666c4e6, - limb2: 0x986db24340488a01cc3a0331, - limb3: 0x1225f1364b003c2baa83c5d9 + limb0: 0x9c51378ae6350f902a4c2c7a, + limb1: 0xa3b25fa5bcd02bba9a026049, + limb2: 0x7afc819b216ebc5974672907, + limb3: 0x350dcd8d9858b308df51913 }, r1a0: u384 { - limb0: 0x31f455347e58dc7da9905826, - limb1: 0x83b428cbb36eda0d171308eb, - limb2: 0x7cca1b702de40144f8f43cd8, - limb3: 0x4e35baeaa794df943e1769c + limb0: 0xea0ef61f198a1552fc1141bd, + limb1: 0xe9a70f4e7d1ba1bbbd4bf1cc, + limb2: 0xfe1d0c44657f4b2eb85cee10, + limb3: 0xbbfa1411259082d34cfc9fe }, r1a1: u384 { - limb0: 0xf8766530ea181a0722d829a1, - limb1: 0x2c43acda159f26e30b3456dc, - limb2: 0x14d3195bb16e12e186366c46, - limb3: 0x493dac273d27957d6661e84 + limb0: 0x931fc0ebba476b19b572abd6, + limb1: 0x69d3410ed34dec5ae85c7f02, + limb2: 0x9601b3f844749e86a6c9ebbb, + limb3: 0x68245eea0f50d874408cff } }, G2Line { r0a0: u384 { - limb0: 0x94485c50cf8b885d35d4c62c, - limb1: 0xc5c4197f6c55e561e27a9b9c, - limb2: 0x56e4bcfec01ece4f90a20afe, - limb3: 0x62fbede753762b432a259fb + limb0: 0x6d6a72660f57c436776eda35, + limb1: 0xeafcdca6e1a8e83e00a7f0ef, + limb2: 0xd033eaf2ad6e66cc37d0ec8e, + limb3: 0xef93525e6741eb730be0a46 }, r0a1: u384 { - limb0: 0xfbcd7a8e1778a01f6fe79680, - limb1: 0xecabc6842fed87373666c4e6, - limb2: 0x986db24340488a01cc3a0331, - limb3: 0x1225f1364b003c2baa83c5d9 + limb0: 0x9c51378ae6350f902a4c2c7a, + limb1: 0xa3b25fa5bcd02bba9a026049, + limb2: 0x7afc819b216ebc5974672907, + limb3: 0x350dcd8d9858b308df51913 }, r1a0: u384 { - limb0: 0x31f455347e58dc7da9905826, - limb1: 0x83b428cbb36eda0d171308eb, - limb2: 0x7cca1b702de40144f8f43cd8, - limb3: 0x4e35baeaa794df943e1769c + limb0: 0xea0ef61f198a1552fc1141bd, + limb1: 0xe9a70f4e7d1ba1bbbd4bf1cc, + limb2: 0xfe1d0c44657f4b2eb85cee10, + limb3: 0xbbfa1411259082d34cfc9fe }, r1a1: u384 { - limb0: 0xf8766530ea181a0722d829a1, - limb1: 0x2c43acda159f26e30b3456dc, - limb2: 0x14d3195bb16e12e186366c46, - limb3: 0x493dac273d27957d6661e84 + limb0: 0x931fc0ebba476b19b572abd6, + limb1: 0x69d3410ed34dec5ae85c7f02, + limb2: 0x9601b3f844749e86a6c9ebbb, + limb3: 0x68245eea0f50d874408cff } }, G2Line { r0a0: u384 { - limb0: 0x8b97c2cdb53ce6ef6845bfe0, - limb1: 0x7052f5b22f6c0389a4e60436, - limb2: 0x3b864551b519b6adff3d70b5, - limb3: 0x123b2066a2a35a612599839e + limb0: 0x2ea5ca03ed5c36adea6aaf97, + limb1: 0xcfe448e1bf8e79789c8f9e4f, + limb2: 0x7a2ac401950406d62342c352, + limb3: 0xc7fcd80ab661bcd2ad9b57d }, r0a1: u384 { - limb0: 0x5dac9b19d087e46e01933856, - limb1: 0xc276fa220486803e4c976b7, - limb2: 0x214d3e0bacf68df1465c7a9b, - limb3: 0x1764b9d8fc9ea4df4519bec7 + limb0: 0x14d191c991a5c5108df463f7, + limb1: 0x6f95a3fc4a463d9b04327b28, + limb2: 0x36c2b7700e9fce73bd6bff6f, + limb3: 0x92bfb6a6ad5cf6fd3a7dcd5 }, r1a0: u384 { - limb0: 0xe8643b0a36cf7a78deba8d5e, - limb1: 0x8d76d7c3b409b9e0a6f1a1bf, - limb2: 0x9a60fd8390dfb785e6018d4c, - limb3: 0x171300fdf4bd9acdd015b142 + limb0: 0x836e5966d59a9fc769c823b0, + limb1: 0x5942c66126c653b6acfd2812, + limb2: 0x8d8b35a3568c0d2937f9dc8b, + limb3: 0x1462a7d94f5d4b49856a1808 }, r1a1: u384 { - limb0: 0x1b7724a0ea58d93eccc08e6f, - limb1: 0x67e217c7119a2ebff41c1a04, - limb2: 0xdcf15ecf74b6b044d0bd39ca, - limb3: 0x17ba997028cfc00be788ef56 + limb0: 0xf61001b7080797f2aebe1884, + limb1: 0x97731b9c760f92ff1f08129c, + limb2: 0xbd7a61eefd4d30d7f0ed27ff, + limb3: 0x21a0b715cacee49f7a3d5b7 } }, G2Line { r0a0: u384 { - limb0: 0x8b97c2cdb53ce6ef6845bfe0, - limb1: 0x7052f5b22f6c0389a4e60436, - limb2: 0x3b864551b519b6adff3d70b5, - limb3: 0x123b2066a2a35a612599839e + limb0: 0x2ea5ca03ed5c36adea6aaf97, + limb1: 0xcfe448e1bf8e79789c8f9e4f, + limb2: 0x7a2ac401950406d62342c352, + limb3: 0xc7fcd80ab661bcd2ad9b57d }, r0a1: u384 { - limb0: 0x5dac9b19d087e46e01933856, - limb1: 0xc276fa220486803e4c976b7, - limb2: 0x214d3e0bacf68df1465c7a9b, - limb3: 0x1764b9d8fc9ea4df4519bec7 + limb0: 0x14d191c991a5c5108df463f7, + limb1: 0x6f95a3fc4a463d9b04327b28, + limb2: 0x36c2b7700e9fce73bd6bff6f, + limb3: 0x92bfb6a6ad5cf6fd3a7dcd5 }, r1a0: u384 { - limb0: 0xe8643b0a36cf7a78deba8d5e, - limb1: 0x8d76d7c3b409b9e0a6f1a1bf, - limb2: 0x9a60fd8390dfb785e6018d4c, - limb3: 0x171300fdf4bd9acdd015b142 + limb0: 0x836e5966d59a9fc769c823b0, + limb1: 0x5942c66126c653b6acfd2812, + limb2: 0x8d8b35a3568c0d2937f9dc8b, + limb3: 0x1462a7d94f5d4b49856a1808 }, r1a1: u384 { - limb0: 0x1b7724a0ea58d93eccc08e6f, - limb1: 0x67e217c7119a2ebff41c1a04, - limb2: 0xdcf15ecf74b6b044d0bd39ca, - limb3: 0x17ba997028cfc00be788ef56 + limb0: 0xf61001b7080797f2aebe1884, + limb1: 0x97731b9c760f92ff1f08129c, + limb2: 0xbd7a61eefd4d30d7f0ed27ff, + limb3: 0x21a0b715cacee49f7a3d5b7 } }, G2Line { r0a0: u384 { - limb0: 0x8969eee75d7461a3ec33b52e, - limb1: 0x6bc9bc859f4d62298841dc3c, - limb2: 0x4dbcfd2b6f379fb6ba453534, - limb3: 0xbd23ed757c753a542881a02 + limb0: 0xae2153b03216f8ff4d9afb94, + limb1: 0x94b81d0c2de4d8296411abbe, + limb2: 0x1f7b494bcf87ca4773a7837c, + limb3: 0x13ee11dec4b2434d342a4f74 }, r0a1: u384 { - limb0: 0xbb41fdece9c9ca4870f44f8c, - limb1: 0xff833cfa3671cbed0c6be3f8, - limb2: 0x3267b99c2dfebd2ad3305fa7, - limb3: 0x55d5b8d9aec1e29d9a5b441 + limb0: 0x5e68462a69915862df3eee14, + limb1: 0x91746a7e4c0e25d00dad2a85, + limb2: 0x4a19882a1fc3f62a66300844, + limb3: 0x169cb62b895d143ec81e60a8 }, r1a0: u384 { - limb0: 0x4fbc923c1f8679c081653d70, - limb1: 0xed94b97be12751a983c1aff, - limb2: 0x373e5faccaf247fa4009d27e, - limb3: 0x3ad37c3c2a9063265e919c4 + limb0: 0xa1c4515a7cfe14acd62705b3, + limb1: 0xcc6115ad6a7ca3d7c59829d9, + limb2: 0x4ffa72033158db734db9c470, + limb3: 0x14bc0bc6ccdff33788d582df }, r1a1: u384 { - limb0: 0x273b15a629ab9b03f9220541, - limb1: 0x26fe45217322e62eb5b45441, - limb2: 0x2617895236cecf0f73fe8694, - limb3: 0xe58a432773c7990de308c74 + limb0: 0x2042c507aa68a1787be9581, + limb1: 0x42c41a0867c5b3a5060fcd7a, + limb2: 0x7dee7a6d07580bcbc630b367, + limb3: 0x342504553cfd3daccb699c4 } }, G2Line { r0a0: u384 { - limb0: 0x8969eee75d7461a3ec33b52e, - limb1: 0x6bc9bc859f4d62298841dc3c, - limb2: 0x4dbcfd2b6f379fb6ba453534, - limb3: 0xbd23ed757c753a542881a02 + limb0: 0xae2153b03216f8ff4d9afb94, + limb1: 0x94b81d0c2de4d8296411abbe, + limb2: 0x1f7b494bcf87ca4773a7837c, + limb3: 0x13ee11dec4b2434d342a4f74 }, r0a1: u384 { - limb0: 0xbb41fdece9c9ca4870f44f8c, - limb1: 0xff833cfa3671cbed0c6be3f8, - limb2: 0x3267b99c2dfebd2ad3305fa7, - limb3: 0x55d5b8d9aec1e29d9a5b441 + limb0: 0x5e68462a69915862df3eee14, + limb1: 0x91746a7e4c0e25d00dad2a85, + limb2: 0x4a19882a1fc3f62a66300844, + limb3: 0x169cb62b895d143ec81e60a8 }, r1a0: u384 { - limb0: 0x4fbc923c1f8679c081653d70, - limb1: 0xed94b97be12751a983c1aff, - limb2: 0x373e5faccaf247fa4009d27e, - limb3: 0x3ad37c3c2a9063265e919c4 + limb0: 0xa1c4515a7cfe14acd62705b3, + limb1: 0xcc6115ad6a7ca3d7c59829d9, + limb2: 0x4ffa72033158db734db9c470, + limb3: 0x14bc0bc6ccdff33788d582df }, r1a1: u384 { - limb0: 0x273b15a629ab9b03f9220541, - limb1: 0x26fe45217322e62eb5b45441, - limb2: 0x2617895236cecf0f73fe8694, - limb3: 0xe58a432773c7990de308c74 + limb0: 0x2042c507aa68a1787be9581, + limb1: 0x42c41a0867c5b3a5060fcd7a, + limb2: 0x7dee7a6d07580bcbc630b367, + limb3: 0x342504553cfd3daccb699c4 } }, G2Line { r0a0: u384 { - limb0: 0xcc485e234be86d047aba886d, - limb1: 0xef08bba77d8e5ca14d65ed13, - limb2: 0xeb3c345b735efa314323735, - limb3: 0x108e3258e00b76b48b38f7a5 + limb0: 0x41a49a066bb1a761e1ae588b, + limb1: 0x1671e2255b4f64ea8a5b7a9, + limb2: 0xf0e5bb3b2a2333aafb799d6e, + limb3: 0x192f0f2de636afd8f9e91021 }, r0a1: u384 { - limb0: 0xadc0707fdd55e404e03715fd, - limb1: 0x6413930767078ac1a358f613, - limb2: 0x2fc8e158b781593862f7c1ed, - limb3: 0xba1389c9832d8dd96c978a7 + limb0: 0xc1fcfa2372efda138dd8e1bf, + limb1: 0x758d91573301b48c3554d5cd, + limb2: 0x3944ef84b3aa37c4297d8622, + limb3: 0x106469e1f4398aab394889c2 }, r1a0: u384 { - limb0: 0x29ccb6a996fc2ca917149fd5, - limb1: 0xc270d02dfb4cacf0df8f0f52, - limb2: 0x69169f72f468ab9a0fa81f7f, - limb3: 0xc397b156159112b9642ba0f + limb0: 0xc7a487c958f09657cf2b6fc1, + limb1: 0x58559553cfd46444fd5468ee, + limb2: 0xa9537a7a3cac71995f1da997, + limb3: 0x9cbd98497bf64d3e62d125b }, r1a1: u384 { - limb0: 0x66b93aba1af515ab63e443f, - limb1: 0x2f4f42c416ba2132c777d71c, - limb2: 0x28de4f8a2bd78437a5f0d8f0, - limb3: 0xe805cf5125dfe070c6a5132 + limb0: 0x8230616acaa6828f65511a42, + limb1: 0xb1fb7b2f5cbaf1560e2838f9, + limb2: 0x50c5a52012f6ed8d62932eec, + limb3: 0xf022e79f93d6205fbe499d5 } }, G2Line { r0a0: u384 { - limb0: 0xcc485e234be86d047aba886d, - limb1: 0xef08bba77d8e5ca14d65ed13, - limb2: 0xeb3c345b735efa314323735, - limb3: 0x108e3258e00b76b48b38f7a5 + limb0: 0x41a49a066bb1a761e1ae588b, + limb1: 0x1671e2255b4f64ea8a5b7a9, + limb2: 0xf0e5bb3b2a2333aafb799d6e, + limb3: 0x192f0f2de636afd8f9e91021 }, r0a1: u384 { - limb0: 0xadc0707fdd55e404e03715fd, - limb1: 0x6413930767078ac1a358f613, - limb2: 0x2fc8e158b781593862f7c1ed, - limb3: 0xba1389c9832d8dd96c978a7 + limb0: 0xc1fcfa2372efda138dd8e1bf, + limb1: 0x758d91573301b48c3554d5cd, + limb2: 0x3944ef84b3aa37c4297d8622, + limb3: 0x106469e1f4398aab394889c2 }, r1a0: u384 { - limb0: 0x29ccb6a996fc2ca917149fd5, - limb1: 0xc270d02dfb4cacf0df8f0f52, - limb2: 0x69169f72f468ab9a0fa81f7f, - limb3: 0xc397b156159112b9642ba0f + limb0: 0xc7a487c958f09657cf2b6fc1, + limb1: 0x58559553cfd46444fd5468ee, + limb2: 0xa9537a7a3cac71995f1da997, + limb3: 0x9cbd98497bf64d3e62d125b }, r1a1: u384 { - limb0: 0x66b93aba1af515ab63e443f, - limb1: 0x2f4f42c416ba2132c777d71c, - limb2: 0x28de4f8a2bd78437a5f0d8f0, - limb3: 0xe805cf5125dfe070c6a5132 + limb0: 0x8230616acaa6828f65511a42, + limb1: 0xb1fb7b2f5cbaf1560e2838f9, + limb2: 0x50c5a52012f6ed8d62932eec, + limb3: 0xf022e79f93d6205fbe499d5 } }, G2Line { r0a0: u384 { - limb0: 0x2070648a1a2e87344b5a5636, - limb1: 0xfdb72737205fd8e1802fcf9, - limb2: 0x6d30d2a46a08801021152ba1, - limb3: 0xb6be7efa3924c46d05fc127 + limb0: 0x123fd78d7149b43d19f5ac55, + limb1: 0xaab4f64bb2528a0f3eb72180, + limb2: 0x3c40d10c96553078314f950d, + limb3: 0xec5707badb168f0c99a38b5 }, r0a1: u384 { - limb0: 0xf4b206ad6f8fee844bc05dab, - limb1: 0x57ff6f88dea1050823b88bea, - limb2: 0x7383501617dad745eabae966, - limb3: 0x16ffd88499918ee14a12ec95 + limb0: 0xc7d4c6b5f590ad1fa6b310a2, + limb1: 0xea43c02ea9fd5c7126e9d636, + limb2: 0x8758964bf0bf411445b77088, + limb3: 0xf592774d23f83b8623cab30 }, r1a0: u384 { - limb0: 0x9e733a4834db7ad45024363e, - limb1: 0x139ed7c027317cf94d7648a9, - limb2: 0x1ed7e4e0ab803819d698abfe, - limb3: 0x9ca2a2063431a1ff4f59c3a + limb0: 0x85301ab54e5964ccb209f367, + limb1: 0x3a40d1407148ba4cffcd2c25, + limb2: 0x13cb9ecf2735452ff17785b, + limb3: 0x1aa79e73200a10b802cdd3 }, r1a1: u384 { - limb0: 0xdc3e4b9901f5aa744c11ab52, - limb1: 0x39051af6a69704a82837d51d, - limb2: 0x7e48e3b60e838b643ac2b15d, - limb3: 0x18c308b1684c171e81c7c0cc + limb0: 0x4307b9fee75d0c923a4493b5, + limb1: 0x7d0538dc491e033b716995ae, + limb2: 0x409a7ef32839ab3c3cffd48d, + limb3: 0x191d70d7453f06e06c9265dc } }, G2Line { r0a0: u384 { - limb0: 0x2070648a1a2e87344b5a5636, - limb1: 0xfdb72737205fd8e1802fcf9, - limb2: 0x6d30d2a46a08801021152ba1, - limb3: 0xb6be7efa3924c46d05fc127 + limb0: 0x123fd78d7149b43d19f5ac55, + limb1: 0xaab4f64bb2528a0f3eb72180, + limb2: 0x3c40d10c96553078314f950d, + limb3: 0xec5707badb168f0c99a38b5 }, r0a1: u384 { - limb0: 0xf4b206ad6f8fee844bc05dab, - limb1: 0x57ff6f88dea1050823b88bea, - limb2: 0x7383501617dad745eabae966, - limb3: 0x16ffd88499918ee14a12ec95 + limb0: 0xc7d4c6b5f590ad1fa6b310a2, + limb1: 0xea43c02ea9fd5c7126e9d636, + limb2: 0x8758964bf0bf411445b77088, + limb3: 0xf592774d23f83b8623cab30 }, r1a0: u384 { - limb0: 0x9e733a4834db7ad45024363e, - limb1: 0x139ed7c027317cf94d7648a9, - limb2: 0x1ed7e4e0ab803819d698abfe, - limb3: 0x9ca2a2063431a1ff4f59c3a + limb0: 0x85301ab54e5964ccb209f367, + limb1: 0x3a40d1407148ba4cffcd2c25, + limb2: 0x13cb9ecf2735452ff17785b, + limb3: 0x1aa79e73200a10b802cdd3 }, r1a1: u384 { - limb0: 0xdc3e4b9901f5aa744c11ab52, - limb1: 0x39051af6a69704a82837d51d, - limb2: 0x7e48e3b60e838b643ac2b15d, - limb3: 0x18c308b1684c171e81c7c0cc + limb0: 0x4307b9fee75d0c923a4493b5, + limb1: 0x7d0538dc491e033b716995ae, + limb2: 0x409a7ef32839ab3c3cffd48d, + limb3: 0x191d70d7453f06e06c9265dc } }, G2Line { r0a0: u384 { - limb0: 0xb577c635283e4e2d62657f8e, - limb1: 0x660a5b24ce0d92bdf7105136, - limb2: 0x2824793f40146fb706a71c1e, - limb3: 0x8525eea2afae98a892d48ed + limb0: 0x65bd13f5b7aae326d67e0f56, + limb1: 0x9ac79185ff9e63331bcba1ff, + limb2: 0x9ee04c0db424904e785d4151, + limb3: 0x45bc0f6e4a929effa452f0d }, r0a1: u384 { - limb0: 0xedb0525301486c089d035afb, - limb1: 0x1e8fa737b09f18e8b8166349, - limb2: 0x62b75b78aa4bb21a66e07654, - limb3: 0x1453a88b2cfaaae32c34ba88 + limb0: 0x28ff0d8e8e1538cf4c9e73c4, + limb1: 0x7add687656b82520bbdd44a8, + limb2: 0xaf5d9f0044a6c9d1f7df15e2, + limb3: 0x195c77872b843ba1039e17d0 }, r1a0: u384 { - limb0: 0x79b352b8e15b549843f7a503, - limb1: 0x8e94673f3a7607ebcde342c, - limb2: 0xa107e8d0688ae91cf0481000, - limb3: 0x786b7e2df2543595e2f4a59 + limb0: 0x4e562ba6b68bc97487c145cf, + limb1: 0x44fa1579ed5e377e29e7c60c, + limb2: 0x385467d3076eff517c72223a, + limb3: 0x181d912ec2891b59876db278 }, r1a1: u384 { - limb0: 0x4721976a00b4b8caf1bd704b, - limb1: 0x7cb62236ec83645ecbb87b54, - limb2: 0x3a2715aab08d9bd40920c7ee, - limb3: 0x5933b9dc1646137f90f53fa + limb0: 0xfc250e34500ace00533ad2ab, + limb1: 0xa3fd626b1d9e937eb4e12bc8, + limb2: 0x173e4bf1145c4c961202caa5, + limb3: 0x12606c90f340bb5bbae9ff37 } }, G2Line { r0a0: u384 { - limb0: 0xb577c635283e4e2d62657f8e, - limb1: 0x660a5b24ce0d92bdf7105136, - limb2: 0x2824793f40146fb706a71c1e, - limb3: 0x8525eea2afae98a892d48ed + limb0: 0x65bd13f5b7aae326d67e0f56, + limb1: 0x9ac79185ff9e63331bcba1ff, + limb2: 0x9ee04c0db424904e785d4151, + limb3: 0x45bc0f6e4a929effa452f0d }, r0a1: u384 { - limb0: 0xedb0525301486c089d035afb, - limb1: 0x1e8fa737b09f18e8b8166349, - limb2: 0x62b75b78aa4bb21a66e07654, - limb3: 0x1453a88b2cfaaae32c34ba88 + limb0: 0x28ff0d8e8e1538cf4c9e73c4, + limb1: 0x7add687656b82520bbdd44a8, + limb2: 0xaf5d9f0044a6c9d1f7df15e2, + limb3: 0x195c77872b843ba1039e17d0 }, r1a0: u384 { - limb0: 0x79b352b8e15b549843f7a503, - limb1: 0x8e94673f3a7607ebcde342c, - limb2: 0xa107e8d0688ae91cf0481000, - limb3: 0x786b7e2df2543595e2f4a59 + limb0: 0x4e562ba6b68bc97487c145cf, + limb1: 0x44fa1579ed5e377e29e7c60c, + limb2: 0x385467d3076eff517c72223a, + limb3: 0x181d912ec2891b59876db278 }, r1a1: u384 { - limb0: 0x4721976a00b4b8caf1bd704b, - limb1: 0x7cb62236ec83645ecbb87b54, - limb2: 0x3a2715aab08d9bd40920c7ee, - limb3: 0x5933b9dc1646137f90f53fa + limb0: 0xfc250e34500ace00533ad2ab, + limb1: 0xa3fd626b1d9e937eb4e12bc8, + limb2: 0x173e4bf1145c4c961202caa5, + limb3: 0x12606c90f340bb5bbae9ff37 } }, ] @@ -26296,3457 +26291,3457 @@ mod pairing_tests { let hint = MPCheckHintBLS12_381 { lambda_root_inverse: E12D { w0: u384 { - limb0: 0x4e1096c2a3828e5f26b78f5, - limb1: 0xe92c880afc92b482996ffc2, - limb2: 0xb809a8feffb16020d01432eb, - limb3: 0x127c7dee0415cef8e6512b5d + limb0: 0x2d3d9e0f247685018455fff8, + limb1: 0x38495873bf1d8812328b0637, + limb2: 0x268cb19549085d5cf8adf3ad, + limb3: 0x104385d46d1de84bdd222aa }, w1: u384 { - limb0: 0xb0dec38c2c4e04ba487feb6d, - limb1: 0xe28a973b42ee7822bb2ab6e8, - limb2: 0x155f272d3814aaa5da9915b0, - limb3: 0xad40e17f9aa1d9be921442b + limb0: 0x1cb76cfce56b3829c217f90, + limb1: 0x4ee8a8d7ada0e8f1e4d49f, + limb2: 0x6576fd8f3f70088c6ba854dc, + limb3: 0xd8a3e577c85a5cbb487f60c }, w2: u384 { - limb0: 0x9b9a9feba8511eb70c3caa36, - limb1: 0xf3ba8e641f9cedfe27dfd90, - limb2: 0x780ec779b8529dbb94183a48, - limb3: 0x712cd3e1157f256d63939b2 + limb0: 0x87c09d81a997fd8527ec9f48, + limb1: 0x9f0dbf1c1272e583400ab3c7, + limb2: 0xc5718629ac9cd025ef336d0, + limb3: 0x187b0c468b6da0adb62d3fbc }, w3: u384 { - limb0: 0xaeab7a75ef22815105a3282a, - limb1: 0xea6b214d632f3fd85a2c386a, - limb2: 0xa9c64b00f4095bf34898fecf, - limb3: 0x193227f6648bd68230fb9328 + limb0: 0x1802ec9724670f13ecc11b98, + limb1: 0xd019c9ebf77049499b82c9f1, + limb2: 0xa47f69b56bd7afa2d855c6d9, + limb3: 0x15b9c90041c0f3bd22acbcb5 }, w4: u384 { - limb0: 0xc9ef000d37bb2d09817b9635, - limb1: 0x9b447543ffe6d2abee93c8be, - limb2: 0x57a2f25898c23ad17d149703, - limb3: 0x19846a82ce6f712a8a6bf1e8 + limb0: 0x748b77ceb52f8ec14dad0074, + limb1: 0x79725268df88b7bfa593a8b3, + limb2: 0x8bd1128220add9729b19ab77, + limb3: 0x924c402b326674ef2eb6261 }, w5: u384 { - limb0: 0x419499f4d720a7e33ee84f0, - limb1: 0x1f03e15511da2285641a9531, - limb2: 0x107f5d22db881b972e5b394, - limb3: 0x4bcd3bef3000bc066a91426 + limb0: 0xc44d871c0c9151a640aee4e7, + limb1: 0xe1e9efd3efb405a549b5321f, + limb2: 0x48dee13bd89853eda982d0af, + limb3: 0x63657722a38adb5dbeda3f2 }, w6: u384 { - limb0: 0xd16cf118c104c5372623d50a, - limb1: 0xcef74d4358abf12e488cf42a, - limb2: 0xe98aa68f44bbdb1a3b63d0d2, - limb3: 0x14920b566b61e01fa7a56750 + limb0: 0xe8ac224046298abec34fca10, + limb1: 0x3e835dd5f1f453e18b97fcf4, + limb2: 0x2b82aad4d6aca3ec0fd14a49, + limb3: 0x115f7423bc1b5767785ccd59 }, w7: u384 { - limb0: 0x26ae2272bd613a9aa896670e, - limb1: 0xead8069c0b9eb33e7d9188de, - limb2: 0x2c9568f6e4b8ea41d1003dd9, - limb3: 0xa4aa989f5950f574fe5a620 + limb0: 0x402831e0e16e38fe8b13ab4f, + limb1: 0xca3f1859c91500e17612aaaa, + limb2: 0xf1592271e331a89cb2e9d355, + limb3: 0xbf4d818bb8f763ba7cd8ffe }, w8: u384 { - limb0: 0x9be2ad2ba18d69cbe6ea0ae4, - limb1: 0x4097bb25d67b8f708b2bae4a, - limb2: 0xda51b8f8bec39a3e50407418, - limb3: 0x17d47342c0243eb80c22ca5f + limb0: 0xc4fb3b6c7ea3f93ae9c181b0, + limb1: 0xc56afb7821dc3860b3ae346c, + limb2: 0xf11e9f912758ae7d838a4c95, + limb3: 0xab618539c3f2fa37317a7a3 }, w9: u384 { - limb0: 0x9264ef286c543e07b7daf8b6, - limb1: 0x8651be61cf159ca402c1d644, - limb2: 0xcf5c9fee51b9dfc2e755c569, - limb3: 0x188ece19b3e14df7ffd95db0 + limb0: 0x77e6a2b62b827858482aee96, + limb1: 0x82da3ea53abc46a23bdd03a7, + limb2: 0xacadf7dbf6a38cf00665cc04, + limb3: 0x180e3b209a0647cfc4b3939d }, w10: u384 { - limb0: 0x8725037b2c15aad399d312b3, - limb1: 0xef82356d86f1a09b581b9e0, - limb2: 0xf942b993e69ea8c17f7ce483, - limb3: 0x61fab015f06479c7f67fe87 + limb0: 0xfa313164b0e147edad33de48, + limb1: 0xe578c916b83e747212be4431, + limb2: 0xf1654f08d1934f12ff95c525, + limb3: 0x18b3cc1e90ce4fa487b2ed6e }, w11: u384 { - limb0: 0xd307ea35bf5a4525870705e2, - limb1: 0x27df07806a096deab3a2125f, - limb2: 0x634087ca2eaf337c65d4fb86, - limb3: 0x31d5516595a8d507db1cf5f + limb0: 0xab37c0514544a712571ec7b8, + limb1: 0xbd7311aa5449fe0eca68eba1, + limb2: 0xcb176d9b8ca8b1de6c6b51c0, + limb3: 0x143744cf5d3196dcb1a138c0 } }, w: MillerLoopResultScalingFactor { - w0: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, + w0: u384 { + limb0: 0x2bd1d72da5a9fb6ee0c4d44c, + limb1: 0x66fd39f2143f534e3175633e, + limb2: 0x941c3c219190de9f0f6d0f6e, + limb3: 0xe690a8773fac0b20b23cf11 + }, w2: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w4: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w6: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, - w8: u384 { - limb0: 0x5950b0d47ff4aef27f05272d, - limb1: 0xd7e5a0895747bfa18515967a, - limb2: 0x21b57e61715b2524e916672e, - limb3: 0x1443285834016e02a93f9e2b - }, + w8: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 }, w10: u384 { limb0: 0x0, limb1: 0x0, limb2: 0x0, limb3: 0x0 } }, Ris: array![ E12D { w0: u384 { - limb0: 0xd483a97e9d12a505128bf23c, - limb1: 0xa4a53774d5333faa1856b22c, - limb2: 0x2254de5b0a3d4a2cff8f095e, - limb3: 0xcd07c5fc254e6197e9cc96d + limb0: 0xcddd3440006d64546bec7249, + limb1: 0xee2d136a8cced95a0099109e, + limb2: 0x4fdf977a7d2907a9f555a6f4, + limb3: 0x28155395c7686b8b756da02 }, w1: u384 { - limb0: 0xd73d935715babacfdda597ff, - limb1: 0xbe88e7c49bffbf8524fd72ed, - limb2: 0xe56e6c3cb57eb4ec79928b63, - limb3: 0xb519b95d3f28a947d6e2d7 + limb0: 0x39fd2f08d1d7b0dec70e18a6, + limb1: 0x4847214fb940be5fc4c22a1a, + limb2: 0x7e6b6056606a6b37f867a337, + limb3: 0x9902c42c69bf63bfaed0620 }, w2: u384 { - limb0: 0x3aa7538f53877d1438fa937c, - limb1: 0x8562ab89ae2b42ab761686eb, - limb2: 0x7f44d9c9ce81d05f54774e02, - limb3: 0x12f8ae8bb154a0f2a4e03f09 + limb0: 0x5fdf8e195d557e8775b6df1f, + limb1: 0x8e5297ab1f4ff8dff83443f6, + limb2: 0xc086e8ea72283429af7fe223, + limb3: 0xa05087a81f4abce0fa71da8 }, w3: u384 { - limb0: 0xc6d9ff6345093ce16f7370aa, - limb1: 0xc71346f75cb73f75316f0b18, - limb2: 0x3731491e39df727f97d9d012, - limb3: 0x367a40ce099b61798943b64 + limb0: 0x77068061632c44a1e2b63160, + limb1: 0xe3cf9dfdb5c66508698ab24d, + limb2: 0x33c269009e86a49885c029ed, + limb3: 0x12824334c406e41e7ea20049 }, w4: u384 { - limb0: 0xb94af19cd40763435c9c4aca, - limb1: 0x8fd83db43ef855e00e739c57, - limb2: 0x1703f93d57a1ad2c4aee8a0e, - limb3: 0x84f1d137d9262283c3823ca + limb0: 0x60f2ed6db0c0e420e8aa4617, + limb1: 0x684d7599b63b39951a600848, + limb2: 0xa0c15191ec54b2db00457a42, + limb3: 0x28419f0a751a284220b7c3f }, w5: u384 { - limb0: 0x7804f6bf4a3d138d65a2b743, - limb1: 0x7e9e7a58dc7ecc2781edd9e4, - limb2: 0x759b8061574c6b9b5e2d1c2e, - limb3: 0x31aab4b4630243d853b47d3 + limb0: 0xe59712484987dc29befa7ac2, + limb1: 0xe298055b3165be2fc7ef0edd, + limb2: 0xf851605895a6d17951cbad18, + limb3: 0x14bde40ea2c93349858bf07 }, w6: u384 { - limb0: 0x76010bc7d4b3f5e8fe296adc, - limb1: 0x5b75b86b0a0f20d6045c144d, - limb2: 0xe14ac77130847bc121b29156, - limb3: 0x119baee6354d038a344c0a87 + limb0: 0x4b6587f0181349e8960e4643, + limb1: 0x306c02d15eb292605456c027, + limb2: 0x64e6c5eab3ecac01d6e0164b, + limb3: 0x90967e726dfbf16b080ce89 }, w7: u384 { - limb0: 0x2ef04c0add4d9b07d5f0ee2b, - limb1: 0xd09867b1e8f800849aeb9ae5, - limb2: 0x7743974b51a01cb2fb78617e, - limb3: 0x7a2652cf166a1ff11e0d50d + limb0: 0x22431f6b4b95a45cd59dbeac, + limb1: 0xf19e383eb03e10891f693be, + limb2: 0xa463c98aec3985ef0c4d4d7f, + limb3: 0xc8cfb9dac126c104e02655e }, w8: u384 { - limb0: 0x4ec5db7ae745bdf3f2923143, - limb1: 0x1aaa7f203e729f3ca1048b40, - limb2: 0x89061b9cc8fee6d3ab49ac82, - limb3: 0x14d19d94e43ffe7bf6f0ec5b + limb0: 0x8f42084c471c2c50d0e1f5a1, + limb1: 0x3a65ff0615ac002ca85a2b20, + limb2: 0x63889e42e1e99225e975f6ce, + limb3: 0x114e36180dfbe8456b77b570 }, w9: u384 { - limb0: 0x3cbd60fda60c1412d0ac5ece, - limb1: 0xb285f3c484345addbf37ec5f, - limb2: 0xa9797e476dc0272a0cce9679, - limb3: 0x2eae49c0298f17bdec9f1b0 + limb0: 0x3594b49008a6617447b101f1, + limb1: 0xc0b9aac38eaa3a78d68e41f0, + limb2: 0x706b797318126b33565142d7, + limb3: 0x889a798d75eeb9c380e5b90 }, w10: u384 { - limb0: 0x75b60b17c9c59df721b4dba, - limb1: 0x1d18a04e777361fd27a34e56, - limb2: 0x3192ef500a6762cceab9245e, - limb3: 0x15bda2604e6eadd7a4148418 + limb0: 0x9fe7d38ff76a2373dc98f4fd, + limb1: 0x258fd71b3dffb5d06eaa9498, + limb2: 0xe0efcad7052c725655ce57bb, + limb3: 0x541fe50770ee81ad2ced2f0 }, w11: u384 { - limb0: 0x373235501f875776cd11afc0, - limb1: 0x87904424b2e87961ef6249c4, - limb2: 0x9d79b16ad34e4bf904761ae8, - limb3: 0x1885133033a6a29657776ecc + limb0: 0x3bb11a9b9f63ea546a34ead, + limb1: 0x4784402d921378ecf24c0e15, + limb2: 0x9d5f962af7a77d59294ba2ef, + limb3: 0x34bd0fe1086e94f6bdc49e5 } }, E12D { w0: u384 { - limb0: 0x2e72939063c3ce8b130981a2, - limb1: 0x4c8245ba2034b7bf6f0abeea, - limb2: 0x5e0469da47d6c4b8384ae5d3, - limb3: 0x8cd5ea8a3d4b0101d0f6907 + limb0: 0x64caf02af7c9830c728a14cd, + limb1: 0x45e7316f2518539f9803506e, + limb2: 0x65a5e66e49c909724952a40, + limb3: 0xaf3deea03c9d1fdf5ee962a }, w1: u384 { - limb0: 0xb93b9f35d3e853d9d723f9e2, - limb1: 0x4c0687dce29bdf6e3e2ac9d8, - limb2: 0x4e426139c8040c02bc8f7383, - limb3: 0x1072eff7aced058dc7c00608 + limb0: 0x2cffca5e077fa43a941e12c2, + limb1: 0xfb7eb5bf7c0778db2d576d2b, + limb2: 0x875860fa8fd2cc5724be00b6, + limb3: 0x597e3c8570abe082770f2f7 }, w2: u384 { - limb0: 0x4cb1450bb4141e21f33fa1aa, - limb1: 0x99442671325124590f1148f9, - limb2: 0x2fdc99b65081cc23f8ddde7c, - limb3: 0x15eb6e3050d6952a4b0e43aa + limb0: 0x8192c1c1f9dc70e03a6872a7, + limb1: 0x7d58f0059302e3dac0c25471, + limb2: 0x36db9fd5921b973883db2c06, + limb3: 0x18ef5892ffd2299cd0f20deb }, w3: u384 { - limb0: 0xca1f06185749d6f71aff4f73, - limb1: 0xaae5f7d7a3dcc020cf0db4c0, - limb2: 0xdec738d798238655a620770e, - limb3: 0x1283261176bd18b241c8e96b + limb0: 0x297bf8f9cd56b320eb7f499e, + limb1: 0x17d06cdf5ab024c25f1e16f5, + limb2: 0xffb2eacefd3321e536343e61, + limb3: 0xc26905950fa5ef2b18d3629 }, w4: u384 { - limb0: 0xe509635aaa995ac2e1b9f3fb, - limb1: 0xeb931e19d683498518e8bdfc, - limb2: 0x6a2f2d52d2bc299d4ec625e2, - limb3: 0x7be2c48d4cfc682ccbec1b3 + limb0: 0xa3da091ddc2c115af14471ac, + limb1: 0x79ae79c73c67e474be3bd858, + limb2: 0xce1ad6c30d505d57c9047353, + limb3: 0x7295f0404fe1f97d4e96b73 }, w5: u384 { - limb0: 0x6d7b2ec037ae523de1cffce, - limb1: 0x3cbc8b40d0eedd0bf55d30c0, - limb2: 0xfaa51fe98f513eae15a72410, - limb3: 0x174e174b4fc4a52357fff76 + limb0: 0xd0a26ca398864f582f13042c, + limb1: 0xd1bbe50d10ab36976babd2fe, + limb2: 0xa04ce9e9a8b227fd6bd89b00, + limb3: 0xcf7e0bd2c61d18be93f82e0 }, w6: u384 { - limb0: 0x1fda7a5b8a872f629236cb8f, - limb1: 0xeaf58b2f3319d0940428ad59, - limb2: 0x31acb4118854b4e86a6279e0, - limb3: 0xc20569377cf803cb0c56985 + limb0: 0xe4eaf4c38ca542959d9cbbff, + limb1: 0x56045060f0e215dca152e550, + limb2: 0x9a83c7ed923dbc12cd2a9081, + limb3: 0xd490ea0f1d7d88ac8025907 }, w7: u384 { - limb0: 0x89f5c0e953fee05b9fe8d5f8, - limb1: 0xdb1130ad4992395ea8a5ae30, - limb2: 0xeeba166a23064112ea39f544, - limb3: 0x23fa56b3d61beefd5067a8d + limb0: 0x82817fae31934d0ce7edae38, + limb1: 0x7ee260aab145d6d9e071081c, + limb2: 0x8f75153a07015fd4db56e829, + limb3: 0x19e86a9587afc31944a1ba86 }, w8: u384 { - limb0: 0x31dcf086dfc224a5b212d2a9, - limb1: 0x6d1066c57e875c8dee28bf60, - limb2: 0xcab946877711b3995cad15c0, - limb3: 0xe71369ed1ec769bb44c7133 + limb0: 0xb464f527d310c24b2bff8c2c, + limb1: 0xdd27419594930a4b397857ee, + limb2: 0xfe2291a4ec73af13dd08c679, + limb3: 0xbdd34f1e1b5114725851615 }, w9: u384 { - limb0: 0x66b679fafd7974677b16cdda, - limb1: 0xd1eefd8e0c549b53b8df764e, - limb2: 0x4bdec12067e0905912b9cc65, - limb3: 0x6b38f0662be7d8b07fa2a4d + limb0: 0x7c2c5ee0f949121726d12e1e, + limb1: 0xd1876eb78c0dbad89b9b6cee, + limb2: 0xb8e0b1898cbfd838242b2ebc, + limb3: 0x9e3d417a83d8aafb7e61815 }, w10: u384 { - limb0: 0xe8b59470059013db67e472fc, - limb1: 0x5be86add8d5d0e5f82ad0efd, - limb2: 0xbb989d787be79c8508bceb6e, - limb3: 0x1751cc03bc83654ab4ef67e0 + limb0: 0x7e8adae1ca6ff89bf8c9da63, + limb1: 0x79541b2d5f7da894d712da35, + limb2: 0xa701af1c03dcca876bed8003, + limb3: 0x19705016c83aaf30f34e9439 }, w11: u384 { - limb0: 0xb5d36634ebd6cbc797b42ffa, - limb1: 0x36a107d7f6b0d68932475eed, - limb2: 0xc920605481faba6e2f5f1ff8, - limb3: 0x1411d47abf423ca64243e486 + limb0: 0x9df422a2dbd0f4bef47b57a0, + limb1: 0x85ce05588ad92f513dfc99c, + limb2: 0x4d8f4689d264c1e201894a5e, + limb3: 0x6d715265ae97145c5111bdc } }, E12D { w0: u384 { - limb0: 0xc3e3cc5e8d67976bf24482fa, - limb1: 0xcf1c3734936aab7724cad4c3, - limb2: 0x2b42077625b436fd9f2bb8c2, - limb3: 0x253f2dff0f39ea22a6059a3 + limb0: 0x154b76b951a59b05bd42872d, + limb1: 0x8d7ab5833a4f4885a766a190, + limb2: 0xf92571002d615e5c8e0cfa89, + limb3: 0x52f805072889f7b4332b379 }, w1: u384 { - limb0: 0x118afc95680dbf0ac1522c60, - limb1: 0xb1e3eb1a46a2c50153361a41, - limb2: 0x740b8b1f513cfb0580e7453f, - limb3: 0x33084c0c363bcf6fc27bd96 + limb0: 0x4c281cd6fb91afa72a30ee14, + limb1: 0x968991bbd3adf5d6e5f5034a, + limb2: 0xa5d270f68e81ebf72e938368, + limb3: 0x122ba67cc4606bc0bfd415e2 }, w2: u384 { - limb0: 0xb72713f9777f9e50d6e40917, - limb1: 0x314930bb1050b97d3ad8ba11, - limb2: 0x24ad3cc792033eef10f8180, - limb3: 0x13931a5705a5c1957850ae52 + limb0: 0x246c5595a90df136d4f16026, + limb1: 0xaf7366ef9d2113f543d522c3, + limb2: 0x40f76247fcee6ec3be525522, + limb3: 0xf87fba13211cc24893df268 }, w3: u384 { - limb0: 0x34271fbcb4277e3fa1d48b91, - limb1: 0xbd67801483dc5853179618d0, - limb2: 0x7c0b70d4512c8f7c06d40536, - limb3: 0x1d57c6fc744b3e574e60ad7 + limb0: 0x8698df70290af7427688d909, + limb1: 0x67ac49f0a0ffc9d1b0f998f, + limb2: 0x9c3c1e71e685e92b1b12effe, + limb3: 0xe22f06442e7329c0167a4ea }, w4: u384 { - limb0: 0x9907aad9df520f53ded2229a, - limb1: 0x528997594e1c50e103e1f50d, - limb2: 0x68120dd1a1736827e95ca644, - limb3: 0x118514b6218adc5adf5dc29a + limb0: 0x87db953a65a3afe5b01cec66, + limb1: 0x1e65de73c470786470e2174a, + limb2: 0xcf72e1dda3833b04ff7c77d, + limb3: 0x5df2f92656dda01bc6b3a5c }, w5: u384 { - limb0: 0x7ae89f61bb20ea39de6386d3, - limb1: 0xeef8ed36faaf7308a254ddc1, - limb2: 0xabb1d4e6f9e5fd777dd52a00, - limb3: 0x78ca9d4539615b91cf40786 + limb0: 0x8396e9c789f9e41b4f673609, + limb1: 0xb354e6e5863aecd6154ebfd2, + limb2: 0xb3501bf539b4e1f32bf6c206, + limb3: 0x87a1b32e731a62340846402 }, w6: u384 { - limb0: 0xefd33bbab29b978f0375e36c, - limb1: 0x57413a15a95823b68085dff9, - limb2: 0x8b489159ce0d3b27712d7ec4, - limb3: 0x1520cd2dad352eb13a77191a + limb0: 0x3e6655137f67dd7c28801ad0, + limb1: 0x42c269182f1e82062d2cca00, + limb2: 0x7995a71558aba594a2089d05, + limb3: 0x1480def5cc1805c02106b8db }, w7: u384 { - limb0: 0x67c5cf21b1c1700b916bf852, - limb1: 0x87cd2996e19af67644012fb8, - limb2: 0x5309e36f0c8ad880586b3371, - limb3: 0xee15deb17fef5e31fb007d1 + limb0: 0xae28cb4d33133434e0fa7fec, + limb1: 0x816b941a3fa447c4c07f7830, + limb2: 0xff0a6f04fd00ae475a803153, + limb3: 0xdaa2ef432e6ffe06831f47d }, w8: u384 { - limb0: 0xfc92e173020013f9de2d3224, - limb1: 0x7e2ec14619453afb4b7586f7, - limb2: 0x8ee126e53ccd433d1280c175, - limb3: 0x134138ad9838bca2543b0d15 + limb0: 0xe77a263feff8bc3b43256a8b, + limb1: 0xae406e0985a7f9c6b3648bc5, + limb2: 0x32eca1a902374a1446fe94c3, + limb3: 0x34990fe1c97ca1358ac91d1 }, w9: u384 { - limb0: 0x9b6b4f2fefd4b85bf4d1ee8d, - limb1: 0x4d549efeb759bffade2e2604, - limb2: 0x15604961e1eb6f9e08192e3c, - limb3: 0x136505524f2a9a65122c7c9 + limb0: 0x3a28b99f4b1bdae90cb01655, + limb1: 0x945b5e7d23ad5fc860847456, + limb2: 0xf7a46aaa97b1d16ae94d8f4d, + limb3: 0x10ffd38aef57f6c19068ae07 }, w10: u384 { - limb0: 0x66228d46473b3f2811862438, - limb1: 0x342c31b7d472eaf09e459d11, - limb2: 0x6cbc36ed92f9cd2d97b09fe, - limb3: 0x19f2ad7bea29f0ac36b580d5 + limb0: 0xb3d533d1d5ce38516dea5be3, + limb1: 0xd38fd27901b15b9f9dc5c5f4, + limb2: 0xe71744517624de9bcd3ec72b, + limb3: 0x19b0dbf00c2bdb15a2d8810d }, w11: u384 { - limb0: 0x59579ef22484df617c31f21e, - limb1: 0xb353dae49aaf85c14f6617e1, - limb2: 0x6dc542ce4d0319d7ca50592b, - limb3: 0x356138adc9d5b3495394dae + limb0: 0x80659b917d69b8c2ac3fa80e, + limb1: 0xf07d1ee1280113fb2bee1595, + limb2: 0x1019ec272f652b2c885c6eb, + limb3: 0x909d6c9b506da6f99fb8ec1 } }, E12D { w0: u384 { - limb0: 0x26b99dc8fb85224022977255, - limb1: 0xa42557fd1f10e4bdb0ddfe7, - limb2: 0x3d3ac7a951d703959dd5127a, - limb3: 0x189deb4639a3f8857eb67ff6 + limb0: 0x967367e1d10dfd9d401635a0, + limb1: 0xa229126412331409ad53d24f, + limb2: 0xce33bf587a58f52332dc7aa5, + limb3: 0x10388c3da4479bd3332d2e29 }, w1: u384 { - limb0: 0x69b492e49bd9f2cbf192e582, - limb1: 0xec9a29f35df4f064020f718b, - limb2: 0x42ae95922a4cb46c935099e, - limb3: 0x119438ee707fb67d2ee83ad5 + limb0: 0x1ed9a4ba9e25bac998937921, + limb1: 0x70ba51e331115b65ac55608b, + limb2: 0x7eb110fff5b89a441205bd4, + limb3: 0x5cba51d9501ef4e021bfa4a }, w2: u384 { - limb0: 0x412c3e8d41ee502437a6141d, - limb1: 0x77dbc4c9b6ff4eff83744dde, - limb2: 0xc6693b77caf3d1563035b8cd, - limb3: 0x1335ab3841d39903a6b0f1da + limb0: 0x4b4cad8387c625feb0fd8017, + limb1: 0xdb41514b580d6deb3c184169, + limb2: 0x2f1cab4aea904314ea1674da, + limb3: 0x11a53a0a31611d411dca2183 }, w3: u384 { - limb0: 0x2db8a4b720319b412d2e740, - limb1: 0xb8f18de98b75d03b09ef653, - limb2: 0x74986e3eea2ef3ede4b0b1b9, - limb3: 0x159e8a8c75ffbd3692e34731 + limb0: 0xf6f113dd943f7ee2798ac319, + limb1: 0xa4ef1030006d949f29adff8c, + limb2: 0x1016f86d4b228836db1e5d3, + limb3: 0x155cea482606039636fa386a }, w4: u384 { - limb0: 0x4782b479b1b9a9621acc5c8e, - limb1: 0x71dae3b89bfa88e91ab054da, - limb2: 0x84d8c79030f2b16316211612, - limb3: 0x60272bf4d7086e51088f4ff + limb0: 0xde10b24a0c215c6817f110b, + limb1: 0x9077d0b15751595dd0da8595, + limb2: 0x50de80e8e917495144fa87ca, + limb3: 0x1255908901fb40639e081855 }, w5: u384 { - limb0: 0xda5af37ce71fc42d8a5403d4, - limb1: 0x2380895ccce9764116b0b5f6, - limb2: 0xa9a82bc67df20e7c1ee557f5, - limb3: 0xa3d5166da48bc0d23ee07bd + limb0: 0x6d1ad5bd23eff151b6f0e1bb, + limb1: 0xebc4771a9f17ce2fc5a03042, + limb2: 0x5d1dc325365bc5aef400fb96, + limb3: 0x9b418f5ffd0dd10031f7acb }, w6: u384 { - limb0: 0xe1adfba79a698cf5ade37fed, - limb1: 0x68b02dd4dc7fce474da04104, - limb2: 0x6a4ef5cd9be5f4e6edb6f73c, - limb3: 0xb47ae2a0e9bfae60ec8276c + limb0: 0x2d20e1d234fa27d28660d903, + limb1: 0x5bc382217497f49129b9ed45, + limb2: 0x28f0182f71aa21e20c8621a5, + limb3: 0x18a83f111bf4b0dc0c7bb3d2 }, w7: u384 { - limb0: 0x5bce56321363e3a2189adb2, - limb1: 0x359d8fef9e690fa5a597c2bc, - limb2: 0xdae2c88c69963449b1f944b2, - limb3: 0xccbd2ed0cac05c50acb7a6f + limb0: 0x9e3ddd96ec716316bd3b9485, + limb1: 0x2c3ceccf9cb5a2bf4056b86e, + limb2: 0xd8977d208fc3ca76b377be92, + limb3: 0x18a44f9049e5bab091787bad }, w8: u384 { - limb0: 0xa702017632d1e41b96fd59f8, - limb1: 0xa54c6d4f72adb6bd92bc94c0, - limb2: 0xe610b3ebb05e02fda2581941, - limb3: 0xf66e45c799b3ab94908f82e + limb0: 0x7391926655e361643836cceb, + limb1: 0xf444de1cc4774a98274592e2, + limb2: 0x263b3a136b4340717dd99e7e, + limb3: 0xb257907dc8bf8a84db2e2c4 }, w9: u384 { - limb0: 0x7bda0be3c110cef658a327f9, - limb1: 0x88da70e0ce75766eab4567c8, - limb2: 0xa9a1dc6127d3916168f12459, - limb3: 0x130b47e8ebf09cca43a31ec7 + limb0: 0x66e2155111c94abaf03fcabd, + limb1: 0x7498e9a69c20dc922120ec63, + limb2: 0xcdc569000d517607ea4e7f5e, + limb3: 0x18ec67c200b11a589303de9 }, w10: u384 { - limb0: 0xabe4e27858d26d060df2d9b8, - limb1: 0x559ca1531ce08f12c6068fc0, - limb2: 0x1f80a3f5512388297e49fd3d, - limb3: 0x115720f4c397822dbded5248 + limb0: 0x96d05e3dedc4609dba5ad49d, + limb1: 0x3aa573709bd8b69f887ce255, + limb2: 0xae7834eb53714ac33dc9917b, + limb3: 0x14115ab7af7512b71e00eab3 }, w11: u384 { - limb0: 0x968d465c63bf844c4052df71, - limb1: 0x854630e56fe03deaf4b35e21, - limb2: 0xebbb2d8a23199725b2a3dbd7, - limb3: 0x15cfe335c6c33c433f83c632 + limb0: 0xdc3de8d6e1fde16bf06163b1, + limb1: 0x8000a811710ef3e9ffcc6d34, + limb2: 0x4f04f338c95809ea5d86b337, + limb3: 0x8d48d95b20555a3971dbd63 } }, E12D { w0: u384 { - limb0: 0x78e330129843fc58c2a9a5f5, - limb1: 0x3a5a111830a6c8491cd89578, - limb2: 0x22b36360d6fb76b8ead84038, - limb3: 0xfee52c978abc80faae8cfa4 + limb0: 0xa72ef9a762bea19fecd88c45, + limb1: 0xdeafea2057c04892ac9a4694, + limb2: 0xdadba97994a473dca4c26f39, + limb3: 0x24ddc3af1a80a4e0dcd63fd }, w1: u384 { - limb0: 0x6f63e305cbb520dc4f9cbda7, - limb1: 0x98b48853579c2c0f28168dfb, - limb2: 0xde811adbf10b4f20965e3fcd, - limb3: 0xa5ee7e6c99e63917fbd55b0 + limb0: 0x74dea6614fd88284695d0e6b, + limb1: 0x4ab2819b7829c7869653e72f, + limb2: 0xbf8aad0d9657967db33c137, + limb3: 0x8699b5a857c7917b52e7adc }, w2: u384 { - limb0: 0xc334a67ec57dc3b9ec9a3349, - limb1: 0x23b5d6b4f086270906922095, - limb2: 0xdc173df6e588c8bb7ad99e8e, - limb3: 0x19f78165cf335b31d7e54bbd + limb0: 0xe6c5ee872c3fbe2e0947fb09, + limb1: 0xa04132bba7a6a4a961c8c67d, + limb2: 0xdbb97953160c9f77b8389640, + limb3: 0xe55afc3754231ecde4e29c5 }, w3: u384 { - limb0: 0x42be4dd5e4280a24cbfbf39b, - limb1: 0x2f4143903082c14ddab39134, - limb2: 0xc6ed8a20664af74f276cc8a5, - limb3: 0xd5725f52d90fc3d5311b162 + limb0: 0x1cc03a02f22eb42bd317faac, + limb1: 0x550339595957c5bcf98ee65f, + limb2: 0x6a726ba563f4ba7a02f0745b, + limb3: 0xb2ab59ce5005f8a1c1ee765 }, w4: u384 { - limb0: 0xb5d9c42ae9f6884a46d3391e, - limb1: 0x8bf96d99195863b100e111de, - limb2: 0xa6588643a21f72009c46a9af, - limb3: 0xf6a57f57f060ff8bf571d9f + limb0: 0x3a4ba1469bcae2b9defc20a6, + limb1: 0xa2cd98d92e545ca147b4097d, + limb2: 0x83cf3c8155db56721e907173, + limb3: 0x3a78cb7f074a037085915a8 }, w5: u384 { - limb0: 0x58001d958624ff41ad3bbcf9, - limb1: 0xb1431a99ff442a8f2630065d, - limb2: 0xc2d0c4447180477d010eda09, - limb3: 0xfee026374bc6c9580e14cb6 + limb0: 0xf80a9748a52c83af2d3cab8f, + limb1: 0xe94e8bbb0830c10805c962cb, + limb2: 0xc25d62d0f1756b99cd864ff5, + limb3: 0x11327a880cc0215e68343e5d }, w6: u384 { - limb0: 0x4928d12c4eece8ac265c1d4b, - limb1: 0x50997df817d32cf55bc77ba7, - limb2: 0x7ea97ca09c7b2abd8509c37a, - limb3: 0x8b033da343b5bef4dbd7314 + limb0: 0x5a95fce8afc2ed8054a08f81, + limb1: 0xdf58cfe3643896f37db9333c, + limb2: 0x289316b38fb7954b1c2fa398, + limb3: 0x7052488e21cba32d7e9cb79 }, w7: u384 { - limb0: 0x526b72f83ecff18d32cefacc, - limb1: 0xf28fdc861c860bddec9e0efb, - limb2: 0xad423a120769da7c699de60f, - limb3: 0x100e8d1b1df4cc6537d0fd05 + limb0: 0x82f52ef679f13c4ab9a3a56b, + limb1: 0x78cae9d11e1bade0dd484364, + limb2: 0x80807acab160d660fd735e67, + limb3: 0x11fb17e7518137d67edc843f }, w8: u384 { - limb0: 0x4403e56315a01649351411e, - limb1: 0x68a62bf20c2215c68389329, - limb2: 0xdfbb5d197b4f993f85273644, - limb3: 0x12cdc389823def93432bdb03 + limb0: 0xd0168bebf4954879057cdf40, + limb1: 0x6066c16e501c21fa13560240, + limb2: 0x319db6c8fb9f7dc0a2c46e, + limb3: 0x6269a7cb3eadbc905794662 }, w9: u384 { - limb0: 0x8910158ed517e70b4120f37d, - limb1: 0xc4fda2b4a78d8731c1335064, - limb2: 0x9c80945c449bc48b1ba40b9e, - limb3: 0x478d61a2f665f05ebac452c + limb0: 0x7739f5c59e904b49b9ef1d0c, + limb1: 0x75808fcd13f533d21acb7cc9, + limb2: 0xeaeb32872352bf69a05d409d, + limb3: 0xa5f1f5162d42e5daf6bbf70 }, w10: u384 { - limb0: 0x692d68f82ef35b287fa8e55e, - limb1: 0x3493eb73c0917cdcfe99f1a0, - limb2: 0x9f8dfe97b79a696bfe03f38d, - limb3: 0x130c64c19512dc97e098b676 + limb0: 0xe89ba490c819875be0d2227b, + limb1: 0x9287088a5ec8c57fd59efd2, + limb2: 0x71132a481324fa89b7317ddd, + limb3: 0xf0d973263112a9b65d6356b }, w11: u384 { - limb0: 0xea68261be2dded39872f04f5, - limb1: 0x181023d47cd2a3caa05b9887, - limb2: 0x61ac74b6ea62bdbedfa5cb8a, - limb3: 0x816d0fef03a3e3402e5462a + limb0: 0x1060bcfd723c1283e43626b, + limb1: 0xc79ec692f038143adb4a6b9e, + limb2: 0x233f7b925c0b22880a2a1bb0, + limb3: 0x19bac4dc992e5c97a82cd0f6 } }, E12D { w0: u384 { - limb0: 0x1e8ffc758dc0dae87ba23bb7, - limb1: 0xe8a715c056c052dbae2a385, - limb2: 0xad8f353fbb63918cbf5caddd, - limb3: 0x14c1462ee250d67a668baf5b + limb0: 0xef8d837c05d6282bb2219922, + limb1: 0x8a499034ac97e036bb811bf0, + limb2: 0x1f525ed3a2d8fe31a4c4613d, + limb3: 0xec959a6d723ccb3b0d64619 }, w1: u384 { - limb0: 0x3295227b8ce5a1f577a7a803, - limb1: 0x752f3f05064294c41978ee8a, - limb2: 0x761ac56941f192fad76f8c11, - limb3: 0x10e0a44f8ffb7e9f70a39079 + limb0: 0x711902d527c9d93eadca932a, + limb1: 0xb24a0bf8c803a40e63e73a59, + limb2: 0xfa2376fa645484f46a739b0f, + limb3: 0x12542f0116eb9dba58a74576 }, w2: u384 { - limb0: 0x30e2c93f0d47b64984338233, - limb1: 0xf0049a205a97689ebf313748, - limb2: 0xb629cdc6134c38a914cefd5c, - limb3: 0xbbf36f48c7d62ef059fb471 + limb0: 0x9eb80bed83110ffb32b2a296, + limb1: 0x3f70b5c06334f6f43f05d010, + limb2: 0x3e907840f86f4d06b9d98106, + limb3: 0x125c3b13b513bb4451135f31 }, w3: u384 { - limb0: 0x47ea39e8649d2411db61d0f6, - limb1: 0x4f110dddd2bbc37b5c3d5b1f, - limb2: 0xa6da376c042cf3d739dc43a6, - limb3: 0x412dc3c0bc4462340ecce48 + limb0: 0x56510c6b7dd3fe15f453f3af, + limb1: 0x82a083cb56afda648e837008, + limb2: 0x78bff2a4975bd948d81217db, + limb3: 0xc0bacd685d82ba4770098ab }, w4: u384 { - limb0: 0xeeedd7b527625ce1fa159f69, - limb1: 0x21fa32c166d5c2359e12b48e, - limb2: 0x904e01741d5a8076f12fc50, - limb3: 0x11e0b61917286f4490dedbda + limb0: 0x3e63bc71ce61c5c6e226ce52, + limb1: 0xe54c4d274ed0f803bd0ce18a, + limb2: 0xe2016b24bf43493a02f144c8, + limb3: 0xe99cf492efb26aa4c4ea54d }, w5: u384 { - limb0: 0xf673705c78be3211cb969ac9, - limb1: 0xe1ac7a32344dde10b8bf9ef2, - limb2: 0xaa32899e6f35cda15fc98170, - limb3: 0x2160849ae3d9f7683ccc96a + limb0: 0xae82b67960446fcde2bdbea1, + limb1: 0xc9f2c1597f7c3b7567d06a9d, + limb2: 0x90a34fa6ebf0f5e37e9a51ec, + limb3: 0xe68cc6d594e6c95af4f0c1f }, w6: u384 { - limb0: 0x3f670fbab4d38d442feb5c37, - limb1: 0x57f43bad9a5eec3a34f2b6a8, - limb2: 0x3b4d0a3edf86e17fed9fba1e, - limb3: 0x3a9d67ab1c06a756b8e78dd + limb0: 0x9b524162305af3f43a616184, + limb1: 0xc7a9ec045b46e2f4f902bb95, + limb2: 0x51c4fa769c892a9a55d3f488, + limb3: 0x417c0d6365cabcf2704c822 }, w7: u384 { - limb0: 0x186284eaa28cf5254cfdd8d3, - limb1: 0xa7e52fc9a49e40a96421307, - limb2: 0x7fe7769b0920413c5024fd9f, - limb3: 0x8b969d311aad09b5aa59cb6 + limb0: 0xfa21b81eda8f29794e5d129a, + limb1: 0x14c80250c3d2b8470954a1cf, + limb2: 0x7763d46540b006a3b30ae5f2, + limb3: 0xc453c7061d0984f0b213f86 }, w8: u384 { - limb0: 0x3c81be0f1e566cc5b0dcd42d, - limb1: 0x94ec19855bc716a0f69b6bb0, - limb2: 0x6b8779e81d1c07bf3ef2696, - limb3: 0x1851fff47eab5cd9d41bc38f + limb0: 0x3b3c42b024dd06cb6e24245b, + limb1: 0x43405f8697bdc013967720cf, + limb2: 0x46b21b8df49560e1d4cac064, + limb3: 0xa52f5ce151aed331aa3a9c8 }, w9: u384 { - limb0: 0x7969958026139a4f4447ab9c, - limb1: 0x8e5c9f1854f11fbe75ca310f, - limb2: 0x64d555b6d924cb641f018f43, - limb3: 0xab5c2d2b7155c1b7f3084aa + limb0: 0x97d0feff9eda8f2d6772acb7, + limb1: 0xd1873781159f1728529688b4, + limb2: 0xa44a7e720fe4db8a90a1de9c, + limb3: 0x2753ebfdf7955ffe07d1726 }, w10: u384 { - limb0: 0x99740ed93eb25cb5917e50d, - limb1: 0xceb1f01aebafb2e511de3311, - limb2: 0x7e6b09d3b7077d4f077d3ae8, - limb3: 0x155411c90370a99b5afd4801 + limb0: 0x470a4f1d4c1e247941161033, + limb1: 0x9d2cc39aebe31a23b8a6899c, + limb2: 0x5966fa55e1edebce978a0453, + limb3: 0x120a210f9a0e75850c16158b }, w11: u384 { - limb0: 0xbfbe3e1d462574da32f22252, - limb1: 0x67f8dad12c8198bc94c0ce14, - limb2: 0xef8fced0d01614c9a5445a83, - limb3: 0x14169a3475ea4703eb22fada + limb0: 0x23d35a2f0e8ba9462f483d4b, + limb1: 0x40c5f47e9165d551e11162a6, + limb2: 0x19ae425b79b0079d6702fa49, + limb3: 0xd3c336734e9e079beec52ec } }, E12D { w0: u384 { - limb0: 0x5d2f885b9d1f548070769203, - limb1: 0x3c7bf87aa651fe539a057ffc, - limb2: 0x7b88783d21b2065b3eb960c3, - limb3: 0x1729680b47d9982677c18cca + limb0: 0xfe4e71febf753e6923295803, + limb1: 0x1dce3e09ce9dd48854321606, + limb2: 0xc6422aca79e05842fe8510a2, + limb3: 0x16e9ab0dbaca378a81364481 }, w1: u384 { - limb0: 0x66e1594d9f4ac089bb5aef2, - limb1: 0x98f819474c20c777d6a8acaf, - limb2: 0x50b6a68b67d3c9c8cfff06b, - limb3: 0x63366812f7664e7e5f0db6d + limb0: 0xd8cff29d6f275f204b8e5136, + limb1: 0xb1f551a23dc3d7199ea4fb38, + limb2: 0x78d77ed2a78691708926943, + limb3: 0x5428a58f9644db93970f8e6 }, w2: u384 { - limb0: 0xf80e85e94f8c9c651e3f8fed, - limb1: 0x2ac4a57a48aee86a9c266b66, - limb2: 0xc9b7fd14813e5183bafe9cc3, - limb3: 0x123cd0cc133ae12848eee7f8 + limb0: 0x19a2beaa8052d41b6ce8a254, + limb1: 0x76c4e0656dbdcb1aa5dccc98, + limb2: 0x782a0b3e383831c94cf6c980, + limb3: 0xc78c3a5e8d24a1aaa7ad7f7 }, w3: u384 { - limb0: 0x504fbf192f15ee0834139f18, - limb1: 0x58fd1a6fec6a911ea96ec62f, - limb2: 0xea143fe78dd434abb9e2cad8, - limb3: 0xc10047a089587d34721f125 + limb0: 0xbed03383ac44be3cc75955bb, + limb1: 0xb0926408be87febc85c50e4f, + limb2: 0xc0ced0b1b68a50a6112d3e1d, + limb3: 0xec1dfe7b9fd4b6a5f61f02f }, w4: u384 { - limb0: 0x97d41a0a3dfa0a7ec8a40eb9, - limb1: 0x385df45ce33dbb040e4f46c6, - limb2: 0x6e88d15ce282133ecaa8a8af, - limb3: 0x17a5608684c1828f4e080fe6 + limb0: 0x1458b6f2c0a3ee37b315572a, + limb1: 0x2339dd783bddb77d9ec5d6ed, + limb2: 0xb57c90ac12453e641a9fc924, + limb3: 0x318bbc8ce20747969db678f }, w5: u384 { - limb0: 0x73b07f20be4b550f2e513963, - limb1: 0x6c39bb0678e0bd37a4ef5be7, - limb2: 0x2e50a21171dad03480661712, - limb3: 0x16b617cb2d99e80b84fbb827 + limb0: 0xc1c9ffca5d1a0b4dc08cd187, + limb1: 0x8ae497f3e9856c6f7b1cedc2, + limb2: 0xebd676d9f37567a9fe3c48d7, + limb3: 0x13b626593a20e8823aca0c34 }, w6: u384 { - limb0: 0x35cd6f21833a41675308ea20, - limb1: 0xe79fe45a129aea63bd5195e6, - limb2: 0xce2e7e6c16f583591904f8f0, - limb3: 0x535fbbd75d90055e90ed46a + limb0: 0x2cdcd4baf6d8f70698990c92, + limb1: 0x1878c8402a6a5e60e84a092b, + limb2: 0xdeb5d24e471e837925ecd624, + limb3: 0x5ba6e137da7b23d169f299 }, w7: u384 { - limb0: 0x3003bb02373fae0745775889, - limb1: 0x4ad8020b6139732709cf318d, - limb2: 0x5d41f8e151cb95678d6f9dbb, - limb3: 0xc16ad04b7f135f3558a10bc + limb0: 0xbc868b368b9cf63118f8ebbf, + limb1: 0x94921d7bf82d1dccc60af5cf, + limb2: 0x61e2272fe117938147851257, + limb3: 0x16c6d03fa48652a31e6c9a2a }, w8: u384 { - limb0: 0x70a3f7e1abab312e402eb77c, - limb1: 0xbbcf1b66e59d85eaafd70026, - limb2: 0xca1e60efb12d74798bb4ba4, - limb3: 0x14ca4b395c9db6f38b953e5d + limb0: 0xeb04c8e7647dbcc2948971b2, + limb1: 0x1f59a96b1e31ae9ad9e400f8, + limb2: 0x37657ec6f957b8ddee3afdba, + limb3: 0xd78a7bc9e19f636f8bd0cee }, w9: u384 { - limb0: 0x3b9effc32c07bafd0d5fc7bb, - limb1: 0xd53a35b0647b483647083528, - limb2: 0xef945fa4356e0995a239ff03, - limb3: 0xc96ddfcaa34938f579f9bfb + limb0: 0xec059d5c335b6bd12a7753ee, + limb1: 0xbb669ab7f1dce6f54ddc6452, + limb2: 0x4bdc37eac7e86ca717dd31a0, + limb3: 0xe40782394ea33ce3166a375 }, w10: u384 { - limb0: 0x30b2bd3cbef7cac055a1d1, - limb1: 0x933e4c4ea304a0193e63ba6c, - limb2: 0x70417f00b3c7411fac018da6, - limb3: 0x7706b687ea0fea78411544e + limb0: 0x27d81cd0360d97df48de5a4c, + limb1: 0xf6049b49f49c1b79aa8ac54e, + limb2: 0x47d012706e5913c532dc18d1, + limb3: 0x1679fb9ae510ed6d0b22daec }, w11: u384 { - limb0: 0xf6cc37e88fe081ddb9ac7f2e, - limb1: 0xaa41586886cd106ff9cd56f7, - limb2: 0x560e303726a5ef5526f6b6d, - limb3: 0x17d2cba525960b3b21802257 + limb0: 0x1e5ac147b346d69b50592867, + limb1: 0x799f4579438a89dcbfd8c4a7, + limb2: 0x81a3f6967601aaecef747d4b, + limb3: 0x2d290b088122e2942fc57e8 } }, E12D { w0: u384 { - limb0: 0xb04df6a496fc2522f407c8df, - limb1: 0xb4771780734ad3fe35f2941f, - limb2: 0x429bf48bb0a6f9818c079714, - limb3: 0x2a6fa2fb8a21db8d8d09017 + limb0: 0x343402597e5f821f37a64163, + limb1: 0x89c80a2f94aad60898a39162, + limb2: 0x136e26c1f072b42daedab749, + limb3: 0x72d212083bb468caecba106 }, w1: u384 { - limb0: 0x812335f5302f7b5a4123628e, - limb1: 0xf0651bff07010c899e8a276c, - limb2: 0x2ccec769e617bcc6354c6974, - limb3: 0x26a2c9bcdad7746518913c8 + limb0: 0x5259c13dc072066bb2b768d0, + limb1: 0xf8c13540fe1fa8a8fbf17b6d, + limb2: 0xf56aab8d6e30425d506b6830, + limb3: 0x184f95624a0a0cdd83b12ac1 }, w2: u384 { - limb0: 0xbc857726612c5c3ac400c931, - limb1: 0xcfaaaad7d1e8e4c5af3faa39, - limb2: 0x76d63792237159372c459541, - limb3: 0x173ec2584e761ebe9ad5ae7a + limb0: 0xec1b01fcbb7d61bba6b6a1a3, + limb1: 0xc37fad78e5f632ec601d4fde, + limb2: 0xab6f752311ef26e406bdaf0b, + limb3: 0xefeac12566d4ca4a3492e5b }, w3: u384 { - limb0: 0xdf67147413b8529d89b7d2cb, - limb1: 0xb5bad8285449b7bfb0b7a318, - limb2: 0xf1f5aa185dc26239b8c68ebc, - limb3: 0x1e4129cd5ed66944e7a254 + limb0: 0x1e0d15a7eeac47044c9f1f00, + limb1: 0xe1a88b41776a3d7ff5476163, + limb2: 0x6891a23bcb1c41ac01cfcf5b, + limb3: 0x134e836d23f5a2fdd0ed80f9 }, w4: u384 { - limb0: 0xff649ce62f1b430f8e8e30bd, - limb1: 0x213f8429459f973ccd572c0c, - limb2: 0x9b896f7cf2bafda5b044f00d, - limb3: 0xbcb824de0d7479148acc45f + limb0: 0x49540da6d54ed0254f46843d, + limb1: 0xfbcaeee254916a4def9b994a, + limb2: 0x1360ba01197aff6fa9fc52a6, + limb3: 0xe92992f904b40f072f52a13 }, w5: u384 { - limb0: 0xdfd59d294b1cdc08e2dfa74, - limb1: 0x372e9316f0a73523fe3b2673, - limb2: 0xde61231abef2f4dc80479d1d, - limb3: 0xdd0e42caf51638343f4047 + limb0: 0xe87b70b5da4fc91be069dabe, + limb1: 0x961cdd7607d29c9846fc6277, + limb2: 0xdc598388076563ea52bd7d41, + limb3: 0x496ad7bc6ae02054fecb01e }, w6: u384 { - limb0: 0xb13ced1b6d7068e77fc1de27, - limb1: 0x48f5d05cfd8c7b07c7a49416, - limb2: 0x15247a4e2162ee3d25ca412, - limb3: 0x18beaee4805d08bab709dbb2 + limb0: 0x4d2819cca301dc63235df594, + limb1: 0x2b558340c942b3410e73219b, + limb2: 0xd9412dfce5278c822e5398a2, + limb3: 0x19c17e90261580d374f4b0a5 }, w7: u384 { - limb0: 0x19d8e5d41a3e5e298d91e3fb, - limb1: 0x400ad6a923f09e2bf17d74ee, - limb2: 0x2f8ede746fcbea0f33be594d, - limb3: 0x19a0498f70a8ab4777c3410f + limb0: 0x39db822bd2a3ce3f5d530cbb, + limb1: 0xcd479c0a4983d574f8b1eae6, + limb2: 0x5295b501d9ba556573547dcf, + limb3: 0x13def907a6883d5ad4380159 }, w8: u384 { - limb0: 0xd63c0d53039484f377759f6b, - limb1: 0xa85dc7035af93d1878febfa8, - limb2: 0x64a336bd0d71dc4b249b3a24, - limb3: 0x1957837cd978d294a70482c4 + limb0: 0x328c77c916d27663420497b1, + limb1: 0xf9f97f901262839f1b74b567, + limb2: 0x6321ed6267555aff488b3ce5, + limb3: 0x19b0b13be3e63b7ae2d95a2d }, w9: u384 { - limb0: 0xd928f0acf8d9e42b681307d2, - limb1: 0x23e2ed1da61f15343461ffd3, - limb2: 0xcc6facf30c8989e79ffa7bfc, - limb3: 0xe324df812ebca1da194fb96 + limb0: 0xea0bd353ec9a9aeaa409796a, + limb1: 0x8c5fd30c9817878055d42b8f, + limb2: 0xf226434a303f21e9fcb51d88, + limb3: 0x184166af733ba06dfc89c070 }, w10: u384 { - limb0: 0xc8d4f1878f0252907d0dc1eb, - limb1: 0xd747b6d8c0561039e1f6d8a7, - limb2: 0x198a33ef3aff6c4d99a74617, - limb3: 0xcf8fd3e5ede7e68eef5e468 + limb0: 0x7c40df659074ffcc56c758f7, + limb1: 0x30ed6bb1dd4c22aacacab3c3, + limb2: 0x39bfa7c7ffa7d5f29acc26b0, + limb3: 0x120dc0cde31b5cb7433f64ce }, w11: u384 { - limb0: 0x8ec644a8d5d4e3860be97204, - limb1: 0x64a0a25d77622b2840f9d8d1, - limb2: 0x8bfb543919ea8faae041a639, - limb3: 0x1609e9e3fa8d76d7111222b + limb0: 0xb120c0e701834efc0abe5502, + limb1: 0xccfe966cd7dd1852324a68ea, + limb2: 0xe79f28cfd1466b792a635744, + limb3: 0x806d85e290b78fb460def1c } }, E12D { w0: u384 { - limb0: 0x822a1bc2967dea72794ab3bc, - limb1: 0x380032261c3b1c00fc9f6c68, - limb2: 0xeccea1ac48d53b395c4c3184, - limb3: 0xc0fcb64f65bb9d609be0597 + limb0: 0x31aca8fe14f4958dac90e827, + limb1: 0xcd48b75cf4cf8fb03e172177, + limb2: 0xca1cc4c9cbeec99c6a66ab84, + limb3: 0xe8dfca18fd7645567018fa7 }, w1: u384 { - limb0: 0xaa45e354b93fbf38c02359de, - limb1: 0xad48616a6ca73de9b4c38b9d, - limb2: 0xf406e247c2ed4dfc5357da5d, - limb3: 0x48b0cee8b99553f3e402015 + limb0: 0x7145c2715a1065ba819c41cd, + limb1: 0xf6fb4409604d4ef7a160466, + limb2: 0x357e855ca9492489e6bfd815, + limb3: 0xb6d6095607bd8fe60bef462 }, w2: u384 { - limb0: 0x71cdc79dc0f0397f34ce1dc5, - limb1: 0x41505dc1577215d64f2477dd, - limb2: 0x3859256fc41056989f5ce5cb, - limb3: 0x28b6b8be271a7861cc29ce7 + limb0: 0xeb66fb731a5462157c307455, + limb1: 0xe5d8455cbe3d21e40feb739f, + limb2: 0xfd0d69d4a4026422b28889ae, + limb3: 0x17545c5c00d89a89cabfd084 }, w3: u384 { - limb0: 0x7c3aa2ab8b37dfb9297c75ac, - limb1: 0xd8ecb148583e4b16ddb8dc37, - limb2: 0x2cc25f022dba338e91a4ee10, - limb3: 0x159f9b3482826f81e8693f17 + limb0: 0xfdeef9a8d95337448ebb1fd9, + limb1: 0xd55b663aa7db558e0de06390, + limb2: 0xe45c41be4b720b56a9b1d065, + limb3: 0x155a44409396ccb02f6dd4cb }, w4: u384 { - limb0: 0x7d27566deb02a4381ed734d9, - limb1: 0x8375516a10013b43cbfaad69, - limb2: 0xd15fb55bb8ee8ea75a8e6789, - limb3: 0x171795fff3a456d03a5e8c58 + limb0: 0x439a48a59f4784f44f2fb63b, + limb1: 0xd0d1f2c55a1fb82739f7acd2, + limb2: 0xeb9bd0defe4d8617d46ca281, + limb3: 0x7d54b71053a85179a7ec436 }, w5: u384 { - limb0: 0x24c5858312a645654e8ae7df, - limb1: 0x982096db130431f83e04373b, - limb2: 0x31dc0e54fca3976be0fb4618, - limb3: 0x26f6528fce13e2317e052ed + limb0: 0x7ed0783ef840cd0f2f1fc45e, + limb1: 0x88df433dae99d68bb092850, + limb2: 0x1f350f26588e6f19d204c15d, + limb3: 0x14a2843f02f82a431d0cb73a }, w6: u384 { - limb0: 0xe8675f64ab6ad167d4d5cdc2, - limb1: 0xce72090a2a0bdb5ecec13548, - limb2: 0x2d12425bc8a3ac2b097df413, - limb3: 0x182d66b96ca6c75842f03363 + limb0: 0x859542db4f831a65e2217fc9, + limb1: 0xef528c92cc94adc525d7878b, + limb2: 0x20463c4ecf50cd1110782b17, + limb3: 0x1027352b6f51448e91b4ff38 }, w7: u384 { - limb0: 0x5ddd71feec379c573ad9399c, - limb1: 0x3ec105920717bad1b1778a2f, - limb2: 0x60a3e1f08c77d4af38758e35, - limb3: 0xb830cbd14b792e404e4a9c9 + limb0: 0x671e563025efaefbe53582d4, + limb1: 0x211f381de5e7445809538aa2, + limb2: 0xd1f3177f9d7eb624e8399e75, + limb3: 0x11425fecadaf7f371e9ac830 }, w8: u384 { - limb0: 0x832735533c756ea3dfde3b84, - limb1: 0xf326bb40aa51a16ea85600a1, - limb2: 0xa1669cc2bee3790dc8e9b7e7, - limb3: 0x19f9761d7c6aa46a1d7541d4 + limb0: 0x2988a3a8ef6f3aa8350c9127, + limb1: 0xdd6a43f3fe681ec5ea58d40a, + limb2: 0x8eeb94ed732d6f0e108bbf6e, + limb3: 0x116723f0eb33b66230c82a20 }, w9: u384 { - limb0: 0xd20f855639c6db2b934066ee, - limb1: 0x50292bc8eb720f279fd5a835, - limb2: 0x5f2c01e05f364949f396e148, - limb3: 0xf2661fc94921f32b9284ae6 + limb0: 0x193f1e3ce028cd99b7637981, + limb1: 0xf2500f64fdcaedc9192cd70e, + limb2: 0xec02f10c8d8bd29532b12177, + limb3: 0x93291dce26ef85c44f935de }, w10: u384 { - limb0: 0x3ec46cff874bfb15849e454, - limb1: 0x9660735d4055f1641e17ca4b, - limb2: 0x478a1a3af1af7033e23f354e, - limb3: 0x8229a49e3fcfee26ce24eba + limb0: 0xe7388ed724136104025bac2c, + limb1: 0x5d07a2d8b2542f7655a2f58d, + limb2: 0xbd9fb171b974e2e7997e7180, + limb3: 0x12c4d18cf1508e93890c43ba }, w11: u384 { - limb0: 0xa9f8d07debd6ae556cc977f7, - limb1: 0xddb20d532705ab4308a47b84, - limb2: 0x7a67241013ef4bacc77cfcd2, - limb3: 0x96510f93dc733fd673b82e6 + limb0: 0x62ca8943b2bdc5c7ac51e02c, + limb1: 0xc4968055813e698dc9d7de13, + limb2: 0x414ca05dd8bf9e680e721c4e, + limb3: 0x2570fd00e5880e57af34fd4 } }, E12D { w0: u384 { - limb0: 0x7c084d98ca8c36c6e29ac60a, - limb1: 0x1c1a825872278205cf203fc1, - limb2: 0xae4f82746f623e6527552b77, - limb3: 0x10df4258809d8265c8a66ea6 + limb0: 0x5d78eae5fb50fcf7333f3b09, + limb1: 0x2157eaaf4af01639bc5badfa, + limb2: 0x80f33e3863f79d67851dcf40, + limb3: 0x16478419f14b674f8c773558 }, w1: u384 { - limb0: 0x3557a098f461bb43a56ba8dd, - limb1: 0xa743bc783d194bf6683fc856, - limb2: 0x77fc7a20fab4472e89700c70, - limb3: 0x93c8d1c4ec912bb4cb0aaca + limb0: 0x3eed39af10805c2f7d5f5c3, + limb1: 0xf3c066dd1186419214b2ebf3, + limb2: 0xf6392f4af0790c263affdbdb, + limb3: 0xc75f0e313a575fb66a475de }, w2: u384 { - limb0: 0xb110d998630d064e5bbf5edb, - limb1: 0xc1dd25df904cff039ceaf5b8, - limb2: 0x571332a68d70930b4a760741, - limb3: 0x5e27e43912c05cd50e320bc + limb0: 0xc0b3121844630aeddea24d3e, + limb1: 0xbf61f59cd6cd56584c22101a, + limb2: 0xc102c08952ef40f4546ce8e7, + limb3: 0x1e75da15ef82e516421b1bf }, w3: u384 { - limb0: 0x575889c99b8465216318f51f, - limb1: 0x29f5ef91c8c0d044e6bda592, - limb2: 0x9a2e4a49be8fa65c0b0d876a, - limb3: 0xf87374922b29c7ed50576ae + limb0: 0xd830b64b1db899bb64824746, + limb1: 0xfc0682ca064b476befff0476, + limb2: 0x7debb2ac8ca66901c2ba11fb, + limb3: 0x595cfaaa9cf863f1a62f0c8 }, w4: u384 { - limb0: 0xc0e0b0eeed204db16207fee0, - limb1: 0xfea578b6bbb9df437ce9111a, - limb2: 0x277f4607ec0165fb2a42513f, - limb3: 0x10fd9be290c34b864cd754d3 + limb0: 0xb37904181621eefe8610f2b, + limb1: 0x8790f2880310a0f6e8610832, + limb2: 0xe5449d509c134bb3e59b4677, + limb3: 0x13906cb026b9a44e357b3b45 }, w5: u384 { - limb0: 0xe5d954ca0aa79890894e1abd, - limb1: 0x75f3c6438b575921cfdefa6f, - limb2: 0x35eb3f4ffa8d576146ed1430, - limb3: 0xd7ab8602f68b629386c7893 + limb0: 0x427d8836b06f89df5a42468, + limb1: 0xc89c6e9720a6b788f5f3999, + limb2: 0x11a23d7002ef09bd8617ad6, + limb3: 0x143f86db3f4400e8d4149470 }, w6: u384 { - limb0: 0xcf1a8ccd2f2146d9e91b3f44, - limb1: 0xab6365017d07d2044dbb2678, - limb2: 0x80dfb917e613485de5de6f0d, - limb3: 0x13d86fc7166726e5a2232bee + limb0: 0xf7d4cd3c1353c58834877900, + limb1: 0x29d3c1564a87eeaa55cc6f29, + limb2: 0xed032476aa81994b80a2485f, + limb3: 0x72075703733a0e7221baa31 }, w7: u384 { - limb0: 0x7c05f3f0e98ed4d483ac10f8, - limb1: 0xeaf62a1db2fdc12c0d225cec, - limb2: 0xa19fdd8e79950b54b20bcccf, - limb3: 0x17bc14b3a83e349a09004cfc + limb0: 0xbb2575d98de8d307c681d6e2, + limb1: 0xe398ef5396173032395e823d, + limb2: 0xc273c01b744b2fd87c76550b, + limb3: 0x17edee62daaef02a4ceb0830 }, w8: u384 { - limb0: 0x48926a61403ef78ef52c7748, - limb1: 0x8533e588fc3f1140ac1fbca7, - limb2: 0xf33b26822b501e6d1078f423, - limb3: 0x1818059e33ce9d02aeabe87a + limb0: 0xbae9957669dd4100b03bea14, + limb1: 0x8514cc84c8f70a811d7972c9, + limb2: 0xd41201c67d17e8fda1e7bf01, + limb3: 0x7c4bba03f85d0453e508c4 }, w9: u384 { - limb0: 0x79135d69ddbc04072da34c72, - limb1: 0x2221c85d0e20aa82b61887f6, - limb2: 0xbf018d930cf0b1ea33e0e33b, - limb3: 0x95d09e04fb7e48ab0a7ce2c + limb0: 0xf29a0c509a6e02526929db9e, + limb1: 0x1a2a52e4817c6b090c148aeb, + limb2: 0xb89e403d55eac8051b0d7665, + limb3: 0x9f641530117991cfa83b1da }, w10: u384 { - limb0: 0xc13053ea7f3f1a43cc412f27, - limb1: 0x554c54439d7f3d06e7417b87, - limb2: 0xcf5c7b8eccc9da53bd5fa18c, - limb3: 0xa8cd93c61b6d5c1ddaa4099 + limb0: 0x1a17570de4f339f738cbca3e, + limb1: 0x3551f69967719ae3d55af405, + limb2: 0x10d763fd95986de9f2d5fbb6, + limb3: 0xd0c922f2071c73b7c9362e2 }, w11: u384 { - limb0: 0xccc740032562b750c37534b6, - limb1: 0xf4c738727279211b0bfbfdc4, - limb2: 0x2ca3560281e05c287b41e60, - limb3: 0x19c951a388b9b2971dd2597c + limb0: 0x5e8f7c4eb255ca426ffc618d, + limb1: 0xb7ee5a2227d921985e50ed24, + limb2: 0x99c28933d36dfe0edbc7a981, + limb3: 0xbe7d78d2cc0ad28b9d00330 } }, E12D { w0: u384 { - limb0: 0x86d911ce87ebbf40fedd3faf, - limb1: 0xa76fb434bfa631714be1c376, - limb2: 0xb1a1b874ab762a2ee5101dd9, - limb3: 0x12b659d1148a8a55198d0278 + limb0: 0x2ecb6db6c5f8f96f00fc801e, + limb1: 0x87339ccffe010b4ec2eb8253, + limb2: 0x36ece0b247bf2149237953b, + limb3: 0x1488d0cf4ce94f233420b898 }, w1: u384 { - limb0: 0x2fba96cef046875628226fe6, - limb1: 0xe9ddc07d3008358ed4043f5c, - limb2: 0x5943c6b968b8eda1f675bf77, - limb3: 0x1682985f84822c661b62de7e + limb0: 0xceaed80a5b775fc85d3709a4, + limb1: 0x89e0264effa12b4f280326b9, + limb2: 0xea2c463cd5cb116da97ba954, + limb3: 0xeb142dce3997dbf0eeb94ea }, w2: u384 { - limb0: 0x9d0a34feb6ef89a23d6265d2, - limb1: 0x26e1c25c1ea8aa94a3f36164, - limb2: 0xa2b0cd8f35e8409438d0a15f, - limb3: 0xe33d320077241230a2df8ec + limb0: 0x507d4ceb0ae361356c9ccded, + limb1: 0xbebd4155591c7af2f84e7c2c, + limb2: 0x7b4f48f1be9feb591f17bbf6, + limb3: 0x8a9db7d48405b4f332b2e84 }, w3: u384 { - limb0: 0x81f2f3f438cefc58e53b1b89, - limb1: 0xe31d38ab87187da3317a4359, - limb2: 0x7f858c08f0c8a291cedff7ef, - limb3: 0xda293643d96de9785040389 + limb0: 0x69ff2cbd0fb2e4ef7bc58c11, + limb1: 0x54017f276b910f8db0019274, + limb2: 0x90cebbe171f67d7e9f3df994, + limb3: 0x1196783802931ad2b779cc9b }, w4: u384 { - limb0: 0xbe94518a48a8be9b2a1a0eea, - limb1: 0x4b6d60c0b45e8dc18cd25d36, - limb2: 0xb610ca1a1e8e76758c1821fc, - limb3: 0x54d25858b58e3b80381cb8e + limb0: 0x92bc9066a351469658d5f22d, + limb1: 0x607b3ecc2058e29c71583cc5, + limb2: 0x7e12c0cf26513c154277f89d, + limb3: 0x13ed7a4f32d7197f32bf4f9c }, w5: u384 { - limb0: 0x970b34ee3eed8945a49bb549, - limb1: 0x6c18e3761fce88cba899d7f8, - limb2: 0x602dd71306ee274784d6dc71, - limb3: 0x12bdab0d4086f253401cc6bd + limb0: 0xbbc169f813602c3e1973b99d, + limb1: 0xd4ff078691f5a8c46db38ac2, + limb2: 0xa1992fd43d8924ff8842084f, + limb3: 0x3a23b41aded3ed3adef15c3 }, w6: u384 { - limb0: 0xec48abb354ab4e37566a8907, - limb1: 0xcedacc8f7674cc4efa87f71f, - limb2: 0x1cbd0732f9210464b8426bd3, - limb3: 0x13eb53b53b1d99f8e619076c + limb0: 0x49f40a4438bb431173d7eb9e, + limb1: 0x1435141f5a97c348eb872fab, + limb2: 0xde2b1eba376cc980c0c45539, + limb3: 0x2143d9d3672e0e73b187df8 }, w7: u384 { - limb0: 0xba2256df409880cf0f65fbdf, - limb1: 0x39504ab20dc8c70fd0fb669d, - limb2: 0x52e47a8b35411095d83536b0, - limb3: 0x187f48efc4475961b1b4d620 + limb0: 0x335f23683e43f50d0eac2cf3, + limb1: 0x24cd49063ef060f38442d33, + limb2: 0xe504b4ce082893d5c043940e, + limb3: 0xac3eaa38db2279a00a1f393 }, w8: u384 { - limb0: 0x1d6536e100fa0866b11c6d1, - limb1: 0xc282bef427ba652507198cd7, - limb2: 0xa88f0619265a4150d035409e, - limb3: 0xf0697d0627ea047d61d8717 + limb0: 0x9beae5b1fb72d6cf6d40fc46, + limb1: 0xffbc6fb2c86c290dcf6fdb9a, + limb2: 0xa04705416cb58de3d9a6395c, + limb3: 0x156b2ba9b17a475066b083d }, w9: u384 { - limb0: 0x22af78696b2c151966e178ec, - limb1: 0x8eace5d05b27b7539eb0807e, - limb2: 0xa6adf8b6e8242b2220ae0841, - limb3: 0xc22ecded95b2545df04d1bd + limb0: 0xdd87517cc97917518410e85d, + limb1: 0x74971b6d4ab3797fd01abe7e, + limb2: 0x1b9f242e6248152887adab9d, + limb3: 0x8b0e479070aa08315fd1d89 }, w10: u384 { - limb0: 0xf4f5a5a3fb3993350bb110ce, - limb1: 0xdd999c4012b07e48c2578a68, - limb2: 0xbe1173f72dec05d75f6fc0b4, - limb3: 0xb50b65e20ce3ca961416ed8 + limb0: 0xa1e1c7748b34b53b3463697e, + limb1: 0xed3d940028dcf79670d2c230, + limb2: 0x4b07f69d54732a7380d8991e, + limb3: 0x1d7e52982415e5c8e73014 }, w11: u384 { - limb0: 0x4cbda177ced1108e62b50ae8, - limb1: 0xa57885b27de9c903d977032f, - limb2: 0xe128db66db47a127c00309f9, - limb3: 0x9f977f4ac524cdacd4fe284 + limb0: 0x77729599aa3facb8b7539264, + limb1: 0x7f7270db952f0a3bbb5c9ac4, + limb2: 0xa9566701e3d82cb0c0876dc9, + limb3: 0xdfee7765d28eca5261d1584 } }, E12D { w0: u384 { - limb0: 0xe4ba4467029b273460cc7e44, - limb1: 0x5f861c3f157d1c82a6d1d80b, - limb2: 0xd0f7ed821a8c32684fbd808d, - limb3: 0x152547f2b21eaba0830f0635 + limb0: 0x81afb4842a38ad927c1ab186, + limb1: 0xb2c216f696b37737c11f74cc, + limb2: 0x74fc5ae4371d554587984b46, + limb3: 0xc67a18bcc6b941334d158cb }, w1: u384 { - limb0: 0x39dcdd61cc393078bec61dc5, - limb1: 0xb6715520615999c455969510, - limb2: 0x29e9fe3cbdc283415690c92d, - limb3: 0x14c6db5e7c6bba312e7ac1f5 + limb0: 0x2b53b8596e3c8b80b5a98d5, + limb1: 0x223040df0075251ea4873c2b, + limb2: 0x3a5f14a32a3529ba7e243077, + limb3: 0x1100bea6af8870a50d5897c9 }, w2: u384 { - limb0: 0x28260d6c7f23b29fe7d19aa4, - limb1: 0xd261d655a285aedce1c46f16, - limb2: 0xa8fa661044b217faf3b0decc, - limb3: 0x5e918fc0d06abb88b944c8c + limb0: 0x51a79d068b942f4dd2bff24b, + limb1: 0x129c77cfb1f89a0c152ce3ff, + limb2: 0x2dd8f9fe02f234e9eeb1ce28, + limb3: 0x1656973ed041b860288e65ae }, w3: u384 { - limb0: 0x4909a0f4afb3df243174c3b9, - limb1: 0x28a8dbbb6686567dd7a7b329, - limb2: 0x27e879a7236ab5eeca450a4, - limb3: 0x9145a5a97328826e42ca603 + limb0: 0x7ee681ab1ba4078584dafbe2, + limb1: 0xefc4edba982fa50a91bdbee3, + limb2: 0xf8541f3564f46449d5ea33e0, + limb3: 0x686dafc0778c6769d962515 }, w4: u384 { - limb0: 0x8599188d0dbf2dcad6f01e0a, - limb1: 0x2995755d7603f8f9a562db55, - limb2: 0x74070be7d257907d2839fd84, - limb3: 0x1789563d1bfa777f1c1daf80 + limb0: 0x2d7cfba00f8a7d1acaf31f75, + limb1: 0xaee86935621099a6464c3ac, + limb2: 0xc975df16e161b90fb3731eea, + limb3: 0x993d3686e1b8e519d33ee8b }, w5: u384 { - limb0: 0x7ce8565fef38e9a2125e6882, - limb1: 0x54d25d2257f0318030d0e542, - limb2: 0xa903e33e8b99044258d7d3f2, - limb3: 0x5f22484f05a62097890c7bf + limb0: 0x6f342d7b4f908d7a6a23b43f, + limb1: 0x2744a1a4ad666c13e7c15d91, + limb2: 0xfacdb3793ef2c5b61438520f, + limb3: 0x192db9bbebbca4b1f2abd89a }, w6: u384 { - limb0: 0x5b7c04ba34da7d69753d80c7, - limb1: 0xae33083b76d8050e476cab6d, - limb2: 0x9b56400fdef5e6c679e1eaad, - limb3: 0x101c2ddde0148ed6586ac56a + limb0: 0xa97cc1a314acc475ef793920, + limb1: 0xf22017d3f3dacfa3ea68c551, + limb2: 0x501872f17d32ef83090712e0, + limb3: 0xc0a18df67313b70da749f5a }, w7: u384 { - limb0: 0xa93b301edd4de2d7ec93fd95, - limb1: 0xd4ecc9e9d92439f62504fe19, - limb2: 0xfb299f328943753dd363bb42, - limb3: 0x9583443419cb61a356de7a5 + limb0: 0x1e8eefd6b19f925a21545548, + limb1: 0xe45063616095762a3cb8388b, + limb2: 0x7bef506149d94ddc3946529f, + limb3: 0x1387f917af3f8551b6ed2cee }, w8: u384 { - limb0: 0x72bb5534dff7247ee1751db2, - limb1: 0x3a05bca60cd3e4163605b507, - limb2: 0xd3ec3d96042df84918a2a43b, - limb3: 0x74ade5a8b232b94c7def702 + limb0: 0xe6765fdd5536a1ad0cc8f1b0, + limb1: 0xb6c682c4e820c36ff1d7d5f8, + limb2: 0xf558ea175b556ad35a3b7f6a, + limb3: 0x18e595c06ee58d58c5233cee }, w9: u384 { - limb0: 0x374473e8eaad1161023c03ec, - limb1: 0xb8f5ff06274eeace1d44359b, - limb2: 0x8b38ccdf98e850d8ae2830d5, - limb3: 0x10196d9b91e3d4d4a2f83226 + limb0: 0xef379c213f6dd1d0dd33cb88, + limb1: 0xc36634e765101a34f7d05096, + limb2: 0x80075bda276ae4f5ea067aa0, + limb3: 0xa9998a9f09a84e7f954aa57 }, w10: u384 { - limb0: 0x42a8974392a9565929024bf0, - limb1: 0x7d2411542a07d3790e72c4ce, - limb2: 0x6e7a1c3b83e83451aecf9d0a, - limb3: 0x1755623cb4e20a69e2dfc468 + limb0: 0x7451fb9e60c0eae8fdd5b148, + limb1: 0xcb38718e77aa1e81583aff0b, + limb2: 0xeef984bec8e36e76753cca94, + limb3: 0x10d081c95d0a9f47973b23ef }, w11: u384 { - limb0: 0xbcd651109f6b484f18f80934, - limb1: 0x1ea4a9aecebc91c4d601dbac, - limb2: 0xb3a2d8e73af021def4a2ccc0, - limb3: 0x17932bea2d2c77ffa76e325b + limb0: 0x9da2825fe7ade08d9cd95b3d, + limb1: 0x16e0b420241a2bf68dabe73b, + limb2: 0x7909443cb42c972919fd0c38, + limb3: 0x682549a9dd3333a8c140cb3 } }, E12D { w0: u384 { - limb0: 0xa3b6a75b2b652d41156e461e, - limb1: 0x5e6d344b44780afe2af8ffde, - limb2: 0xeba98c02d037473e22914545, - limb3: 0x66522586e804a3434b794d1 + limb0: 0x8d48b838435bb40e2533a6f8, + limb1: 0x16e1b3c416ebf6d4b2054c9c, + limb2: 0x36ec48df2680eeaf913841f8, + limb3: 0x4eb5d558912cff8a473b752 }, w1: u384 { - limb0: 0xebaecd24195ccb8c6bee1a14, - limb1: 0xe92b8e4db059ed0d58ec20fe, - limb2: 0x63fe7928caf373c00accd23e, - limb3: 0x118edb190820e3ca162c7276 + limb0: 0x40a998c8b3eb7deb1766b916, + limb1: 0x3577680d16b229e4c8e1e64d, + limb2: 0xeedd7b064bc286bf7f2f49d5, + limb3: 0x90bc729037793b4b518f32c }, w2: u384 { - limb0: 0x467e62d66c880ba96f4e41f7, - limb1: 0x9a104b2480d067b0f1593273, - limb2: 0xcb59d71c5892efd4a0f044b3, - limb3: 0x1550fd55d81307f57f080834 + limb0: 0x415bd6e13852d46d3ad48752, + limb1: 0x325a68237e16a060e77606c8, + limb2: 0x1c35eccb32c19ac49fbed4f1, + limb3: 0x7c2c59b186f25401f72282a }, w3: u384 { - limb0: 0xae48d2af375a6ae81cfaeced, - limb1: 0x553ad012f1db2ec507b40c1c, - limb2: 0xd02cd78f16272e88bca88a86, - limb3: 0xbbd5d1ff6e4e817fd2e359f + limb0: 0x407d43da43e651163ccd1085, + limb1: 0x4af2439488539cda0bdb806b, + limb2: 0x890125188b5c5a007e4bc1d7, + limb3: 0x189257dcc604c3f1984eab99 }, w4: u384 { - limb0: 0x7f598a14187a74d964242106, - limb1: 0x24a680d623bf11551cba9069, - limb2: 0x6effd5cebd48c328a14cd26c, - limb3: 0x1144f3747f206e3bd45b205e + limb0: 0x10c3bda49225f0593a3a6cdc, + limb1: 0x77309fe5df864aad489d33c9, + limb2: 0xa5434aae566847a63f1359d4, + limb3: 0x54fdafe683af1b1ff74aace }, w5: u384 { - limb0: 0xf16c8a47c96a8e48333212e2, - limb1: 0xa3df27713fcb270163350d09, - limb2: 0x72d77a796818c9f2bf6b4496, - limb3: 0x1394632f1788e825ee880b8f + limb0: 0x2e0d58d425e72828046c1605, + limb1: 0x9405642e3c9b14f6b626d62, + limb2: 0xd757bd5034d905d73350bbe5, + limb3: 0x6ca2578f30190ecace3b1ce }, w6: u384 { - limb0: 0xe76b5ee8e0fd0333fa2b5af, - limb1: 0x4eb204a4bba7a660db0b142, - limb2: 0x285a1c66d1ddd6df56b1e1a8, - limb3: 0xa56499ddb1dc25a03ff8ca4 + limb0: 0x7053d7c87e571b4cfffc4022, + limb1: 0xa048cf5e899a197aa88db09a, + limb2: 0xac17a7a66629042ef020749e, + limb3: 0x12fedc3d993ed8d1f5845370 }, w7: u384 { - limb0: 0xc7e2a9970fa0c7447143dbcd, - limb1: 0xa44415ab842704a50a89f37a, - limb2: 0xe3202a4849a1376c0d308a48, - limb3: 0x173ac579755f0d8e8266cc40 + limb0: 0x3c41091f167eb34c9e3b1146, + limb1: 0xd490ab926098e15a5f54e6b, + limb2: 0x2d6aea8229990b9cef22ea2d, + limb3: 0x44d82cb5374471e47a86810 }, w8: u384 { - limb0: 0x52a559a5c8feb3a7bf0b9452, - limb1: 0x1d8c8381b6cf352753301018, - limb2: 0x59838dd2b7d101a6d970dff2, - limb3: 0x8313ba33e5195edd2aaa1bc + limb0: 0x24a4d7ad31c480f9bd92bbe7, + limb1: 0xf419253ba1e1576f694029c7, + limb2: 0xcf868a92b9c45b723dbd72c8, + limb3: 0x1835a4245442efdbba0ac6f1 }, w9: u384 { - limb0: 0x75c9f1371f6980b0e4c02e03, - limb1: 0x4829ae31fea8f26294bfe739, - limb2: 0x26f5f3add04744cb3574161e, - limb3: 0xef01e644e16a20e6a28d0f1 + limb0: 0xe0525ff5beff52bc43631361, + limb1: 0x5dde51eea9d41e0ebd1e5e80, + limb2: 0x3ba19a015d84bd60591dc09a, + limb3: 0x12ffa7a972f6618f5e5d6e90 }, w10: u384 { - limb0: 0x4bb159622549ebc09ddee0bc, - limb1: 0x516225e1e0b175f5bcb60f6c, - limb2: 0x38e262fb996b21d1178a1da2, - limb3: 0xc9c91c47f42fc20efdf4aef + limb0: 0x868685fe762f58842a1fc124, + limb1: 0xa1084666c88a1447445116fc, + limb2: 0x54b39d1ab429a5f26b834e40, + limb3: 0x13b52b7fcad576f040771d1c }, w11: u384 { - limb0: 0xba282771fb9b86b88b1b8408, - limb1: 0x68859b725a27d00ec69e4915, - limb2: 0x7c25e9c38886b66276dcc192, - limb3: 0x16400c8cbb8ff09f88cdaece + limb0: 0x8a9d2dd18e779f34440b03b0, + limb1: 0xfa858d4a9fd8506dd90f42f8, + limb2: 0x3a3f3f79e34c20511104b084, + limb3: 0x2d86a0aebfe68c6b5ead312 } }, E12D { w0: u384 { - limb0: 0x872c98364230f050ef60ed0c, - limb1: 0x7d61b0a9c26a3dd358882f53, - limb2: 0x2d3a267a04e15d6ab052df18, - limb3: 0xd556e55667b1822681f4707 + limb0: 0x85a2f1a1d384f98c2a25f3b8, + limb1: 0xde6ffc83ff34a754f0ce666f, + limb2: 0x8bfa4e32fd98441c6a2ef8da, + limb3: 0x19fd540c0f47fa1a3b8df887 }, w1: u384 { - limb0: 0x3532647ede2cc61f92a14b80, - limb1: 0x11791adcd84f9f3fffc846b, - limb2: 0x49c857e99aa323fe95e3e0ee, - limb3: 0x19650ca41d40fe2b581ca38e + limb0: 0xaaa6a01b3ca9a82adb5ce86b, + limb1: 0x7d83fc11a8400fb872435960, + limb2: 0x19fe66cd2a70d00424537fe3, + limb3: 0x6b63f3014f753574be379df }, w2: u384 { - limb0: 0xf5833d85ac5e27f03c2b185f, - limb1: 0x79577c330f8086c588cdcaca, - limb2: 0xad1472b898305cc7977d0bc9, - limb3: 0xeb1a6255fe5fd1a0e60b2a + limb0: 0x6fff993c8d33d4bd6b83cca5, + limb1: 0xa721aed8a7e9656ab2584045, + limb2: 0xe9d79a3345efbebc964b9cc, + limb3: 0xd8f044b91900e365f2c8bb1 }, w3: u384 { - limb0: 0x60cb1479227186182a7a7a2c, - limb1: 0x3ca6d39842b60b6d3ec52b07, - limb2: 0x44dffeee1c01ddba3aa88ba9, - limb3: 0x19b21613408c0f84ccf2935e + limb0: 0x510c50c1f0927ec38171680b, + limb1: 0x97ee761763d11cbbf8b9fbc, + limb2: 0x36d96f9081e6a6ca240ca416, + limb3: 0xad5a61fdc16ef120c1e3b4f }, w4: u384 { - limb0: 0x5c225c21d597df245f0372c2, - limb1: 0x92f3196b8067ae842e670f52, - limb2: 0x280ccb09a11020a4eaac28aa, - limb3: 0xb3c71743a0ac0bb3bb98bc6 + limb0: 0xd822b0069475045df22d975c, + limb1: 0x6766ca55695994cb494feea5, + limb2: 0x8578e861f9d2cba58b48c950, + limb3: 0x45931adc535681d4e0e6241 }, w5: u384 { - limb0: 0xca48ac1c5cdc028cc71571c0, - limb1: 0x15d3879d1c69526db7aec95a, - limb2: 0x57b1f8e9cf1d986ad8bffff3, - limb3: 0xbe161cf4cda0bb18d4430e6 + limb0: 0xf2e064ac373350d18dec2cfd, + limb1: 0x9cdef78f140edf547b366413, + limb2: 0xe96f318d71111fbff73e98e9, + limb3: 0xaff0804fb364324606478f7 }, w6: u384 { - limb0: 0xda5a7a6c02e69c4715dd5563, - limb1: 0x10e903abd6b2b6993309020c, - limb2: 0x71f8159a068f7fcff1525291, - limb3: 0xb83bae6d4780c5317861bed + limb0: 0xe64b1d6af779fe158c25afcc, + limb1: 0x3b4eb6dc136352c8e58d700f, + limb2: 0x346465cd1cb4c583c97a57a1, + limb3: 0x84423e273f348f4010d6d5e }, w7: u384 { - limb0: 0xbf114f3a381d3c7cb3b9d585, - limb1: 0x6bf23b1ba5b4fc0f7ea28b4a, - limb2: 0x232e71dd615489dd02813fb1, - limb3: 0x28213d5cd01fafc03c38587 + limb0: 0xef736ce0b2a201533de534d8, + limb1: 0x2374bcb22ab095309c212e16, + limb2: 0x2ae77bfae2fdabcdc1c1b95b, + limb3: 0x11d1927cb785618eb830e1de }, w8: u384 { - limb0: 0x112da953a7c1d88760e00210, - limb1: 0x3cc669b573637b2dc22941b, - limb2: 0x27b3deb66831e3b5b7807120, - limb3: 0x8997dc9e8f8c4fab3671749 + limb0: 0x1053725bb5ab1b3b2ca787be, + limb1: 0x9712c7487cb925957a63ded0, + limb2: 0x8dd9250d707a94fc82b3a219, + limb3: 0x18f3ed6828f5262f1cc344d }, w9: u384 { - limb0: 0xf21e32aef23360c6d62ea2db, - limb1: 0x2b5302cc53ceed590bf418e4, - limb2: 0x2dac2c7013b077108e2dc10a, - limb3: 0xf9ffc5a3ed2cb39d868f6bc + limb0: 0x7467e8ea9e3d74cc16d36f3b, + limb1: 0x2c25f8ce243c22680f624bef, + limb2: 0xfa071f6f5cff0a8419da15d9, + limb3: 0xdf5f2a12dcfcab273294c04 }, w10: u384 { - limb0: 0x926806213ef444e762fca342, - limb1: 0x579c46e0e83f4644e4dbe7a3, - limb2: 0xaec4d8b9e3ddf05dbea5f573, - limb3: 0xbffc744df470471420dca0 + limb0: 0xc42e91528966e6f06faadef0, + limb1: 0xdfbd8da521c9528a0ef99f20, + limb2: 0x61d26d145df7539e2b45f430, + limb3: 0x128217865a2dc031d053695e }, w11: u384 { - limb0: 0xcfaec6f4a984aa210a246e96, - limb1: 0x1cc623d6fc6577f6fc9d99a, - limb2: 0xf5b9fea795a777402cbb650f, - limb3: 0x1172f1db5b9e7088c51f06b0 + limb0: 0x163a352b2d720210c72fc8f7, + limb1: 0xc85d9b2a0ff8f15dcf98ddbd, + limb2: 0x6d484aefaca31efd9fd3256a, + limb3: 0x12ba37168d6e08fe08982e3 } }, E12D { w0: u384 { - limb0: 0x61d85be4ed09569fdd97192e, - limb1: 0xcbffd08b827d0e9641fbefa5, - limb2: 0x424a21357db51effdaea0869, - limb3: 0x16ba1caad991f8742f7656d5 + limb0: 0x38b43e9be1bcb64476d51e00, + limb1: 0x8602e36aa994b3214d90e0ff, + limb2: 0x586c18b613bfddfcaf25fc27, + limb3: 0x132124dd09b9eec63b659332 }, w1: u384 { - limb0: 0x6eb5d737b1f1a755df8b5cb1, - limb1: 0x409bf441a91b543ea1f198dc, - limb2: 0x669a99c571cd8c9d27915308, - limb3: 0xa225c36406fb3dcce5114ec + limb0: 0x5ddb7bdf84073bc063efe98c, + limb1: 0xa64a852d18129412ce162484, + limb2: 0x152e9daa8834ebdb59e7ddf7, + limb3: 0x7bf9c1701e60fd253751faf }, w2: u384 { - limb0: 0xbf39f854ffaae7a5b9786b97, - limb1: 0xe57acfcab57deda16e5d6e9e, - limb2: 0xe399cc0d9292cdb26f929f, - limb3: 0xef40e184fc24aba2452d252 + limb0: 0xc598970049645344235e53da, + limb1: 0xe7b5436e4b12683991c2f283, + limb2: 0xb9c56c5b5e5f5e2fd1786e9d, + limb3: 0x18ee7022bf6a2649a88e97b4 }, w3: u384 { - limb0: 0x9bb4492605e9943c4378d8e9, - limb1: 0xd0838a59016b3321f79f4178, - limb2: 0xb0d9588b84fae358691e6ab6, - limb3: 0x600f7c6b149d80bf2b5d77 + limb0: 0xf3a0a1ce61ed489a0117e8de, + limb1: 0x671bb54bbc2570f671a62839, + limb2: 0xe32f1eb95b795fdaeed4863e, + limb3: 0x14f40d12c18d83f3e084d7e0 }, w4: u384 { - limb0: 0xcbe7df8a9103082ec386dca4, - limb1: 0x917f6b4749d01e56ad9000e0, - limb2: 0x292d26c08ac06302e41c554, - limb3: 0x6e66d18fca46b6926bb4a09 + limb0: 0x19c06b919c8e20bfc4745ff2, + limb1: 0x15c1b998582c8a654e3de231, + limb2: 0x4d67e1c49398b3b4603d582f, + limb3: 0x68f601f1bd96633b753b202 }, w5: u384 { - limb0: 0x5e126ec6c44b2fc60a308412, - limb1: 0x40993171a29f0d621ce2660c, - limb2: 0x31b72002849612802e6707de, - limb3: 0x630f16e290e0473aecfb99c + limb0: 0xa41920419e5cd8441d3b929d, + limb1: 0x99845a476fb5604c29f09071, + limb2: 0x82d9ee512bf3d8dd54bfde9a, + limb3: 0x30e0503a3f5f823f2dac2d4 }, w6: u384 { - limb0: 0x12f2c3ee903a88e1cbb3c8ba, - limb1: 0x8df025cbc114241b3303dbce, - limb2: 0xe33e9cfbfb8233e91a82f9f5, - limb3: 0x1941d9c27632a359ba32751d + limb0: 0x9ba94c4d17be45c5a85860f7, + limb1: 0xac1b99d5e015730a0297cbd5, + limb2: 0x1c0573f35c9e34fb710ac84b, + limb3: 0x19fba1205c03913b6d9ea77d }, w7: u384 { - limb0: 0xccdeae55032c3e04a220a33c, - limb1: 0x1c3699f078e05c3d3210df11, - limb2: 0x499e342fdfc267a5489c61ed, - limb3: 0x76b23498f58567fd0f7f9ed + limb0: 0xe1a29cdad7ccf8f8dd3cc8ab, + limb1: 0xa907a22d5b08cf3d551f73ba, + limb2: 0xedd1eb1353c24cb5b3f6ecdc, + limb3: 0x91ac1902452dc34c9d46eb4 }, w8: u384 { - limb0: 0x5a87850f4aeacc1ebcd6870, - limb1: 0xcf0da33966cb899c87a3e123, - limb2: 0x204f4670fc9c38df43ef4748, - limb3: 0x3eb53835da1534e341f6652 + limb0: 0xc7bd0638e476f9b762b90573, + limb1: 0x58a98285280d49dcba5adb29, + limb2: 0xb2e8d3592861cb3d1375bb4a, + limb3: 0x199f441640ca6511d4705b7c }, w9: u384 { - limb0: 0x344a71a7d3d62da282ec963e, - limb1: 0x3eea86fc59d2281d88657c8c, - limb2: 0x2a52d8c63b58f15b47570a3b, - limb3: 0x61227e35c58efa338007fa2 + limb0: 0xd3e98386501156f850e813c9, + limb1: 0xd54af5baa084bd46ce5beb3b, + limb2: 0x3b6fea259bd8ebd6d476fd64, + limb3: 0x10d805bd3fe1eb9c154bdc12 }, w10: u384 { - limb0: 0xf49d76252e26d515722053c8, - limb1: 0x888c28760b1500aa3001822c, - limb2: 0x918da1aa0e048f501d6353ff, - limb3: 0x294bcbe37ca3d6f7e9f331f + limb0: 0x4c1385a4e3149a48a846cd9e, + limb1: 0x6441109daf4da660e2660ea0, + limb2: 0x2c95c34d5cd6ef7af17d064a, + limb3: 0xf189be170992556a9cc4854 }, w11: u384 { - limb0: 0x32ee75f052d4a339799a3833, - limb1: 0x450d4631c39fcc2bea60c856, - limb2: 0x1817e85fcbd458d6dd4579a0, - limb3: 0xcb0b11d934a6510957589af + limb0: 0x9cbd44ed51bae3cf1a875ba7, + limb1: 0xe3f48e0ef0324903810528c, + limb2: 0xe03bb67b3a525c1f68cd17b9, + limb3: 0x17169b4001eed44aff7ebf2f } }, E12D { w0: u384 { - limb0: 0x32852ccd4de4e1b28830a482, - limb1: 0x339d29ebe3afe34a5ffb0f1, - limb2: 0x2bda1ef9ca013efd6e0c2a5e, - limb3: 0x1790d581023f13204362e1e4 + limb0: 0x52c1f97972fa85a57fac4f0, + limb1: 0xef4d9580fb64681ed3bbfd7c, + limb2: 0x46ae1fcc21a4691a49a52e0d, + limb3: 0x18ce594ed7b1002081d6b91b }, w1: u384 { - limb0: 0x8925f7ecfe10d30f82bf8596, - limb1: 0x7132be007e10c1f662923358, - limb2: 0xf6db2b365cc0571e1452aa51, - limb3: 0x14b19a7f66974a155459c053 + limb0: 0xdf60dab7d5b40d1c83cbf2a0, + limb1: 0x19097bf9f28dcac33783100, + limb2: 0xee42aad7b9d22a8e1431f43e, + limb3: 0x1179ff361e3dcb6339108228 }, w2: u384 { - limb0: 0x7a5a4b2e5171a05df79a3c16, - limb1: 0x352ab2189cdd2d300b3f0ffe, - limb2: 0x843770e1aefabd1103d73376, - limb3: 0xa28b5a44ed91b0362ae643e + limb0: 0xece00adc05cc3980b24fb46e, + limb1: 0xdae881c70db161f95ab4b1b2, + limb2: 0xc83f4d753996362d447d788, + limb3: 0x15a40fdab9d598c4028120ba }, w3: u384 { - limb0: 0xbc8d4bd6b919b1c8fc820b96, - limb1: 0x3e543ae74f20bd76091eaf79, - limb2: 0x6cc444cb56a5d2e3cefbb037, - limb3: 0x82b62225b5b7187e2d06dd0 + limb0: 0x77561e79aa550b92aafe0615, + limb1: 0xb1c3cf0df46e7fa329a876b0, + limb2: 0x2be6c481773e02d5c462c19f, + limb3: 0x142c625bd0b27ad645020f2a }, w4: u384 { - limb0: 0xdd534965e303d53a1a69ee3b, - limb1: 0x66ad45fd6c8f3f4ef0bc06af, - limb2: 0xb1b64ddf5d9944ce1d8f490e, - limb3: 0x10c775aca8c5c9f5a332b1e6 + limb0: 0xa6ba578b2fb7dc94333f7ab5, + limb1: 0xc9b96b1070fd6277997948c4, + limb2: 0x94755a7b20016dafcbecc0ec, + limb3: 0x100feeccfd2d832d07bc230c }, w5: u384 { - limb0: 0xbc68d52bf4a2e6c1f8c06b40, - limb1: 0xb991923ed8bff4d07867a7af, - limb2: 0x8bd5cf0538c695ad48357d16, - limb3: 0x8d6ccf5c66f648e6ea0f056 + limb0: 0xad92cd493f7143f010cf39fb, + limb1: 0xddbf653398edbc3533fa4cd7, + limb2: 0xf0f44b8a70fa28240699d251, + limb3: 0x5c54487d43c82895bfca43f }, w6: u384 { - limb0: 0x79635e574cae98ccac82c22b, - limb1: 0xae785bb501154609efc8905a, - limb2: 0x153b12a2b03da0e530703c9d, - limb3: 0xde46bf836b2c87ae3a018fd + limb0: 0xe2555378a3e278131ad09b28, + limb1: 0xdf6fd7205379e58dcbebba59, + limb2: 0x629b6162da80ed9ba5e4888, + limb3: 0x180982d0ac7535b3c6dd738e }, w7: u384 { - limb0: 0x82bebb76d2df3a739f3373ce, - limb1: 0xf8c7b9562a6f2a6c40506dc0, - limb2: 0x3adc019c33ac74148d0f1530, - limb3: 0x195cb546ea8e34c0be8d1d01 + limb0: 0x9cce88b40b9053cee9efea6f, + limb1: 0x618ce5d847bc6aa3891dbe35, + limb2: 0x19393c0d123330b6b9556c22, + limb3: 0xff3a0bf43d7faa8f30a5cd8 }, w8: u384 { - limb0: 0x876dcf026eeb21dbf4c961e2, - limb1: 0xc55637914fc0bcc8c399f3de, - limb2: 0xd4571cf26cd11ad8ec7b2954, - limb3: 0xa3c51c81a02ee0f0b40d565 + limb0: 0xc14baaa4d15f963a32a17621, + limb1: 0x2da50ed98b1de3f23f629301, + limb2: 0x464744ad690daa3d33ec3cda, + limb3: 0x1460f13ca596a8321f2e5df }, w9: u384 { - limb0: 0x47c27e76c1d12a9a7aec6929, - limb1: 0x733d74f75a302c14540d07a4, - limb2: 0x422dba21c0cdabe04667a9e5, - limb3: 0x11d94b61fe72444a285fa84e + limb0: 0xcc1608b7813b235dacda3f2e, + limb1: 0xf72f07e4a6f654c07f414a9a, + limb2: 0xca54f6bc28b1e10774e16482, + limb3: 0x1724cfe4d74f782d5a2acb46 }, w10: u384 { - limb0: 0xd2d88a892da061d7c39227bb, - limb1: 0x19dea32ffb5fd1b7acc10ebd, - limb2: 0x337616447108336e879f74db, - limb3: 0x14522463f94e6e6eb86f271a + limb0: 0x259d28f196d457a807c651a, + limb1: 0x8ef035c5022e5b482b2ac155, + limb2: 0x7b727b9969853667c2d38986, + limb3: 0x27f65a16c9b1d044a00b188 }, w11: u384 { - limb0: 0xfeab319e2c2aed80a9f33b61, - limb1: 0x58ddcd4036e81a17df273a34, - limb2: 0x92d98a4db4903bf783569420, - limb3: 0xda6369bfeb654818f274390 + limb0: 0x30993d99b4f6a9166f542681, + limb1: 0xbc5e15a23182da11474fd8bf, + limb2: 0x4a951478c0115730a4cb100f, + limb3: 0x14dfc1cc5f5d956a132d437f } }, E12D { w0: u384 { - limb0: 0xd8fc248f1a4ee147aae1d19c, - limb1: 0x4fa4d5eb3d51e571e8d479e4, - limb2: 0x69391d46f96ef0bdde4d1bcb, - limb3: 0x5035dd429ddfbe0798f934e + limb0: 0x9be1d2b72a9407c63f2b7476, + limb1: 0x1df7a34a12068f8a64359f6b, + limb2: 0xe006c022210275f2083b9036, + limb3: 0x19fe737804c7f3dd8725cc0a }, w1: u384 { - limb0: 0x42f6f3d45e47b53233769241, - limb1: 0x789c81e8affc934281d10e77, - limb2: 0xf280324391ad90c959b82bc0, - limb3: 0xc5e79646bdc4a2424d06577 + limb0: 0x505d2f8845ff7403bce2c3e3, + limb1: 0xf9851b9751d48633ad2bc574, + limb2: 0x2c2ac412d7acb8a334a10284, + limb3: 0x17ed1fdd70e403e54f9d3435 }, w2: u384 { - limb0: 0x3b7264698f01f3c51a33c310, - limb1: 0x336b2e9dfc1b7bdb7f8b6f47, - limb2: 0xa44c2bd65c5599f520f512dc, - limb3: 0x29067367b28b13ebaeed23e + limb0: 0x2e845182d86399f40f1c7bfa, + limb1: 0xc18acfd3240c15cef6b12729, + limb2: 0xe752a732e278893e04aac70f, + limb3: 0x2eed4ecca3ae924f399fb66 }, w3: u384 { - limb0: 0x2470d81690d1b9b07fe90ae4, - limb1: 0x680c8df83cf30e0f2962eceb, - limb2: 0x9eef8311b28d42023859b9c4, - limb3: 0x182a6ca535d82b81f10fc71d + limb0: 0x4355a6924660655c3140acc8, + limb1: 0x43afcc2ba7ade1411de59a74, + limb2: 0x45704567a4261da019289302, + limb3: 0x72769edf57045cfa25b7401 }, w4: u384 { - limb0: 0x4a02dc1e84b137b66b5fdce3, - limb1: 0x2589447c49bc4fff20c53551, - limb2: 0xc1a9852da51a0927e7c58541, - limb3: 0x3f88b7d8d8a01a55d614bc + limb0: 0xea41d91acc679f930556818b, + limb1: 0x1d64714162c34d32c8c10531, + limb2: 0x1500162a2aa8ccbf39ee5988, + limb3: 0x64c77e1606e12c3714f1f9c }, w5: u384 { - limb0: 0x58479f3c817c5a425e4214eb, - limb1: 0x5073cb8cfa3f38fc8f4b7d8a, - limb2: 0x8e1911ff66df18b9ad0595de, - limb3: 0xef1246590936620ebe963a6 + limb0: 0x5ba9af51a2b1bcbc88902531, + limb1: 0xd388ea23dd58bc01f34a1359, + limb2: 0xf6a7c708ac612dccbd65bed3, + limb3: 0x755b923305cc2c8bcedbe79 }, w6: u384 { - limb0: 0x2f7cfbab3884b4ee01fb4651, - limb1: 0xa8416c60952d4c62374313dd, - limb2: 0x5c883755e3dd2bc3ddaa9e26, - limb3: 0x3b92574075165d8468f3972 + limb0: 0xf0e4ad19d2b43434a6781f39, + limb1: 0x8d7f671b8d34bc726856e533, + limb2: 0x5fe9d04ff9a272bb531be6c5, + limb3: 0xe102b5e153b82b5885925c8 }, w7: u384 { - limb0: 0x57ef3e4e52ca1b658ea2706a, - limb1: 0xa6506fc76a5b3a72b9f9493f, - limb2: 0x883d85cf430d3b4e2d96e5fe, - limb3: 0x17c24334d2a9832f84bdcbd6 + limb0: 0xf9823bed0df5e3cbf3488a74, + limb1: 0x5e9496ab1490fb41b1bf5423, + limb2: 0xed8719560f9b9076fcc1a941, + limb3: 0xcc2d9f15dd1e11bfed20d7e }, w8: u384 { - limb0: 0xeef933ec319e2b3ca7b53bd5, - limb1: 0x68bcb5124ca4026730f2d9c2, - limb2: 0x90a5516e239fac246120136e, - limb3: 0x13c19b61e106fbd56f4d7178 + limb0: 0x45896d78df9c595fd0aa1481, + limb1: 0x92b084464369f4efae9c29cb, + limb2: 0x9b4bd00eb4b197520811fdf0, + limb3: 0x3ba422d77f327d3494ae3ff }, w9: u384 { - limb0: 0x2326001442151ee76333d16a, - limb1: 0x246f0a68893b71a0a5d561c2, - limb2: 0xc9722d6247fcc5c6fe41a640, - limb3: 0xe417579683eb3d0061879ca + limb0: 0x4e9f49dadb3929e506593052, + limb1: 0x19cc6515cdb29c910ddc0f8a, + limb2: 0xdb73bebde4638102d2c1ae9d, + limb3: 0x158f9db0b6393b5eb8658c30 }, w10: u384 { - limb0: 0x55a0c239dd60af034da86ada, - limb1: 0xc9a090e90e2da5f64af11576, - limb2: 0x434c058222bbada1f053808d, - limb3: 0x12833ea5eb14a65209983ddc + limb0: 0x66b4d5a940a8a75e9c908d02, + limb1: 0x17d31a20a8fa18e0eb20db01, + limb2: 0xfff0eb753b1d852d457e977f, + limb3: 0x851a2d9a5693649993869be }, w11: u384 { - limb0: 0x969e14cf0b7d2e27db21002e, - limb1: 0x55036edf6f576a556de45b8a, - limb2: 0xb0837be57b0d3a731c3dfcd3, - limb3: 0x19ffad7cccc37480985a8741 + limb0: 0x56dd580f25fdee1803ddcb22, + limb1: 0x8466aec0ca6ed7bf089f0449, + limb2: 0x1dd19f9484a47e326b4b321b, + limb3: 0x13d0fdf3fc29a1693008120d } }, E12D { w0: u384 { - limb0: 0x68f210965b72bbd30994fde1, - limb1: 0xe7bfdb7b7cba0437210f7f7c, - limb2: 0xcb1e2d3d54364db85496b6e1, - limb3: 0x666d819c733a2cf06ae23ef + limb0: 0x2547fa5e4b605ed91545a014, + limb1: 0xff004726f1cf325199db09eb, + limb2: 0x23b404d8deb5a6b260301b18, + limb3: 0x4682d2901a306ac658193a2 }, w1: u384 { - limb0: 0x70ee686c08ac1c6d17270c1, - limb1: 0x2f5699f1b545f9c838de2edd, - limb2: 0x6c6eec3a4fe108b2b3286791, - limb3: 0xd885412ffd6e91b9988f229 + limb0: 0xb48d760ca21a1d8979b27963, + limb1: 0x2e8eebcb7dcb3cdaa74db171, + limb2: 0x34646edcc2308b3fb4e26bf8, + limb3: 0x9b361ea1a6fc526f137c796 }, w2: u384 { - limb0: 0xac63a80130d24712bbdd19f, - limb1: 0x8a3fa80b2e76aaf6816d5587, - limb2: 0x2ecc696de217ef44c11daa05, - limb3: 0xf50252e0c172f8f10f0959a + limb0: 0xa7e2e2a3c85b516f07346772, + limb1: 0xf93f347516292538f1ffed1f, + limb2: 0x22d4b4221c76a81b323b190e, + limb3: 0x2c9f055be523726809fc7b9 }, w3: u384 { - limb0: 0xa88dcbef0ae439ed5d5cc4a4, - limb1: 0xeb39bbcf1bc91a15522a16f8, - limb2: 0xbc84c9d646f468dc33ff8469, - limb3: 0x52fd1b9247a6b0fd54baa45 + limb0: 0xf4114419504d3cc4627166dd, + limb1: 0x98485d7fe090bf44680a7a62, + limb2: 0x557a4172a4a247fcb7d44a65, + limb3: 0x13c8557de883b13b87e900bc }, w4: u384 { - limb0: 0xb282f609a28d0e983899716a, - limb1: 0x2dcd6d9ae5ade3ef3cf419bd, - limb2: 0x1eca04a252104aac5e4e7da2, - limb3: 0x187222c70990af943c13e86d + limb0: 0x310737cce3d96f92d177f0d2, + limb1: 0xebf7a4e421b6ac3b2d0a4ac, + limb2: 0x7a2bf2a993d3d23011f58b4a, + limb3: 0x7d47b3c75f9dc005edc5b42 }, w5: u384 { - limb0: 0x83b98c66b53b90d3fb1d1430, - limb1: 0xf548c1612842f1e935e639cb, - limb2: 0xac7d8276e1568213ad7d5f4c, - limb3: 0xf58da90c1f82dc53b23fe34 + limb0: 0xa51a42dc283b4aafdb1e9889, + limb1: 0x274c79f56c6f4659fa6935c4, + limb2: 0x5cdea3768849b8dd5e93f75b, + limb3: 0x199818adc7f23738dbc311d7 }, w6: u384 { - limb0: 0x4f3238f418a74d5936bf69b2, - limb1: 0x41310af8f485940e0419e560, - limb2: 0x2a123134d6e721b902710fd5, - limb3: 0xd7d8cc7a8e8421345359fdd + limb0: 0x73b70e4168a7849d35601455, + limb1: 0x3c0c580cb720db03c9fea435, + limb2: 0x834a0fb77810fdc065803075, + limb3: 0x13c8c2dfe9fb9aa12424d0ac }, w7: u384 { - limb0: 0xf93c59053123a8ea233198ed, - limb1: 0x484935a4c0cfbccff2a59d6a, - limb2: 0x6c800d9bc2f72146feac250a, - limb3: 0x177a88bebf8a1c56eb90c04c + limb0: 0x21955f77af6e5b2254f0f104, + limb1: 0x51c1aff6e8985ede9adf0ddc, + limb2: 0x333b380297b12c8f83a8807b, + limb3: 0x144a553000e0a7611a967ffe }, w8: u384 { - limb0: 0x5395fc7cead9449f06c43135, - limb1: 0x127bc4e231adbc4795cce936, - limb2: 0xdfff043384f2678d84de13e9, - limb3: 0x32e1cdbc44e9ea8781ea0c8 + limb0: 0xfbc243d4246b39c5b3b97237, + limb1: 0x71c0d5041236cb7b56e0a213, + limb2: 0x55e0f0347578d0fd74a98afa, + limb3: 0x1870b9edd0cf999e1d8f94f1 }, w9: u384 { - limb0: 0xc51c361990b4409ccebb0216, - limb1: 0x9a4498462720414093a761cc, - limb2: 0x564a1979d13634385b9f79a9, - limb3: 0x7f0ea1b9ec03991c7184e40 + limb0: 0xc17a922c09b73dbc8f492c5b, + limb1: 0x47abb1ae8ee599e1d8a24939, + limb2: 0xdffe8bb960ef91f76f2d2758, + limb3: 0xc32f4fe2733aa792843980b }, w10: u384 { - limb0: 0x1f8f6a7fba0c1ec64fd2ce7c, - limb1: 0x8704b46ee35b80556d7e2efd, - limb2: 0xb2c1615455e122b7bd25b29f, - limb3: 0x26b8639d1262b92bf6e344a + limb0: 0xcf288bcdd0a436d937f259fa, + limb1: 0xcca040a3e521b3e481c62c79, + limb2: 0x6a3ed848f742dd14cc329cab, + limb3: 0x1856b227019713c9f0e41b82 }, w11: u384 { - limb0: 0x61f9987362430d26c1a453af, - limb1: 0xe84d9eb000f4e2e54ad42830, - limb2: 0xdd8cae2d2ea88ef36a592732, - limb3: 0xc587fbca9868bc8c27b603e + limb0: 0x31976741816105e678ce48e6, + limb1: 0x46fbba7abf6155ebd2055306, + limb2: 0xce0f9052c9838d110dc66c99, + limb3: 0xf526f187f67d5ebad71629 } }, E12D { w0: u384 { - limb0: 0xc1c4b3b9399eb672b44de838, - limb1: 0x3992acc4ce775d056c5da9a9, - limb2: 0xfc22ee5e3edb30a003d9f379, - limb3: 0x13e0e6b5a7e6aa37ae53a9d1 + limb0: 0x145ff3447811d2f68accf821, + limb1: 0x34467e4a6f4414ee7fbb90c7, + limb2: 0x8d758bfef58fcb4750e47b86, + limb3: 0x74d7a778d93a0255f87915 }, w1: u384 { - limb0: 0xf259d259d21aa33ba9d0b1db, - limb1: 0xb9ae3201ab8f45e52d9d9816, - limb2: 0x904c83529d47bde3eba2759c, - limb3: 0x19886d8e895ceae9b6a45126 + limb0: 0xf6156ca9328b637d52d8ede2, + limb1: 0xc1b5b547c12c743d5139dae0, + limb2: 0x9b8fbec1feb7f554fc18d56a, + limb3: 0x78132da46dddaaf5c19b5f }, w2: u384 { - limb0: 0xb4c569ca7f1e80575b5443e4, - limb1: 0x9c806be580161986f372062c, - limb2: 0xb1090316ae8af6684c089f33, - limb3: 0x1401b2bb7c4300aa94e83c91 + limb0: 0xf690e7e76088136a092997b8, + limb1: 0xe34a62f38d8a78f85f7414d6, + limb2: 0x3be2c5cb2e5d8baf41a88242, + limb3: 0x19daa930da62947cf1dde28 }, w3: u384 { - limb0: 0xf1de69fafffa9ee569be42b3, - limb1: 0xbc2e003c6220bc3740b4e096, - limb2: 0xb70b4ac55e2d0bec6749e27a, - limb3: 0x12b8816f615124761bb72698 + limb0: 0x3abe3b87fc59753dc8d157c7, + limb1: 0x866bbe861ff2b7f0c79532e8, + limb2: 0x70de55c180cf2006700e24f5, + limb3: 0xf6064aa3899f3c9a956d45c }, w4: u384 { - limb0: 0xf2259a53ad3b009f2b2a8e1d, - limb1: 0xe0936f28b111b3c25e1042b3, - limb2: 0x46fe8f39d084b1c5ec10486a, - limb3: 0x47848cda9d5a7956b32bf7d + limb0: 0x84d75850dbc5989d7583d68d, + limb1: 0x4dff90ef2663cca1e0edc689, + limb2: 0x7ac55f3a2f6c524beb1fbe44, + limb3: 0x1f2adb0747a3553ee729147 }, w5: u384 { - limb0: 0xabc6730ca3b7f82d09e0c692, - limb1: 0xd4da99d12a57369bf17a7585, - limb2: 0xa080482562544cea2d0ee43a, - limb3: 0x9d65a1300b20de049e3edc + limb0: 0x143e7e5cf705767be94eacb1, + limb1: 0x8b2af708c67269d6fdfcfbb4, + limb2: 0xd1568db70c4518b42b92c78a, + limb3: 0x90b07233e7a45573777c002 }, w6: u384 { - limb0: 0x8530db0fdd22bd7292ab5c54, - limb1: 0xf8b8e4970cd5e9ad10e3e3ad, - limb2: 0x58680bcd496d5a804d19a126, - limb3: 0xab0796f604a69984442335 + limb0: 0x92010024fa3f357ac89f50f3, + limb1: 0x8f9a8117e8d21335fd4db743, + limb2: 0xb8b579e50a25fad60468a41d, + limb3: 0x161db3cda20866a26b913abc }, w7: u384 { - limb0: 0x9076d53857145db1914194c3, - limb1: 0x9bbbe6ab01fc50ee5df0e6db, - limb2: 0x3fbc8692ab0ab86681aa709d, - limb3: 0x15e4d85c84cce052fa7cd2b1 + limb0: 0x55782b1299f1fb62ed911f43, + limb1: 0xaf51a9dc2047108fd32bf35b, + limb2: 0x2e9f07c6d9559534f52141df, + limb3: 0x1448d8501b01629ca04d4faa }, w8: u384 { - limb0: 0x273faab0e06a38ca201aface, - limb1: 0xbb0441decc34c3ee13c78f18, - limb2: 0x6e10440e2aa0ca3c8d7099fd, - limb3: 0x1838c8f1f2c42dff8284c0bb + limb0: 0x19c961a7080000cc337cd92d, + limb1: 0x15c047bceacb549924bb0d06, + limb2: 0x4a882685af58b50c5a8a4a52, + limb3: 0x1fe35b248a9bfedf0fe6f17 }, w9: u384 { - limb0: 0xb28c381278fea0c294e197f8, - limb1: 0x6b1cf70d47367c2064592040, - limb2: 0x2969ecc2fa882bcd5803ed53, - limb3: 0x10f833a02339f8df8840df2f + limb0: 0x908b6eccdb4b9456e7f06eed, + limb1: 0xfce857ad69c67c61f236acc6, + limb2: 0x43391e4e0aef220d5b9dce7c, + limb3: 0x40ebb761b2dc8828c32b9e }, w10: u384 { - limb0: 0xd404a690dd956373de2ba28a, - limb1: 0xb14910e669c703ce5140ee, - limb2: 0x4d86f3c7ce3f4ee51840800f, - limb3: 0x6ac3b7de221faac01642d04 + limb0: 0xa49058b31e40203ed74951b4, + limb1: 0x6830ca95918f301eb7a69b10, + limb2: 0x7e2462dff979160f49407356, + limb3: 0xbe4e3882b37cc36e9d15828 }, w11: u384 { - limb0: 0x2429a1b3248bdc00e49e0ecf, - limb1: 0x88df833134ebb33b41e90b06, - limb2: 0x3c3718e7e4ec1faac72eb8cc, - limb3: 0x2cfa602ee111b10f2e0ebc9 + limb0: 0x50020031862219af1345de0b, + limb1: 0x3284a8df25b1a1eff794af65, + limb2: 0xbdcaae5e2b811d99f8e5720b, + limb3: 0xd051749fb73d9d5e58c85b5 } }, E12D { w0: u384 { - limb0: 0xa823f56be561bd2d37e34ff1, - limb1: 0x21dd11763c0c576398b0d1b, - limb2: 0x6fcef97542fae2c93046a59b, - limb3: 0x50e91fcdd7ac7cb5e765a51 + limb0: 0x8786974b8416dd36af78da30, + limb1: 0x64ae95584d7e87867e67600b, + limb2: 0x7bb37ecec43ae57f117cc9c9, + limb3: 0x40488a5738f9bbb497ba07a }, w1: u384 { - limb0: 0x4790650300a18f460ad55792, - limb1: 0xaaef423be5a1f24d25ee5253, - limb2: 0xccda12835ea7d76cfbad36e4, - limb3: 0x99e9b8952a66fc1db6ae488 + limb0: 0x6a5d0505612a3f04cef5536c, + limb1: 0x6d39a09a6b24836c9e05a04e, + limb2: 0xb2fd5cfdc15fb49473702317, + limb3: 0xc1bbd7203b4d4d542936a6b }, w2: u384 { - limb0: 0x65afa509ca0f13d7736d2145, - limb1: 0x7f5ab9edef13bc98c4a8bd71, - limb2: 0x8599041d90d1e247a926cf47, - limb3: 0xd684db948eddeba7268667d + limb0: 0xd539361464d342ebb6a9ef3a, + limb1: 0xba6fa5d99c7dd036f811109c, + limb2: 0x90feae4736f16a295ddb81b4, + limb3: 0x146fceff729b5dfc165291dd }, w3: u384 { - limb0: 0xd83252c60cff340435be27fa, - limb1: 0xf3dbc67e267d780c36fb4552, - limb2: 0xbed86f8e654cb6fe56ba8630, - limb3: 0x1592bf592394d4515b877a02 + limb0: 0xcfcec74f32e7c43d2b3f9558, + limb1: 0x5af878a75aa566cb3147a9a7, + limb2: 0x6a0f8ef5784947b788b1ce08, + limb3: 0xd4a043b98ce17dc81ac0e04 }, w4: u384 { - limb0: 0xc246af836d163cda3c43fd9f, - limb1: 0x349d760914ddd666f66b1f74, - limb2: 0xe97a203b5854e04c08bef5c, - limb3: 0x15f9d3780224bf1c1ecb4a47 + limb0: 0x3c64ec56d95f3710b0d75c42, + limb1: 0x28f9857c4618aa73c17d231c, + limb2: 0x27e847274132556232dd6c37, + limb3: 0x16fa123973b5b632c1249699 }, w5: u384 { - limb0: 0x4a32e6d8d5d832eb48254fb1, - limb1: 0xd042c9e6a603d5a08d2a24c2, - limb2: 0xa3c1f42c1b420d7498aacaed, - limb3: 0x112accb5a58326849ae3e204 + limb0: 0x74b6dab2f4f30c00316feadd, + limb1: 0x30e3425cb125ba3596784080, + limb2: 0xe36c4ac4f076d38b3bedece8, + limb3: 0x33da3de5b309cef209ce634 }, w6: u384 { - limb0: 0xd2dedce475e02819056e3400, - limb1: 0x118e5ceeaf6b06a1b88d6f0f, - limb2: 0x10ed1cece69b391999461819, - limb3: 0x10c4d2c44a404474d3562f0d + limb0: 0xb4bd4e871d63a71156b83a5c, + limb1: 0xb481d4358b78fc5b12f62379, + limb2: 0x22ff048ac51288b534d390e, + limb3: 0x117b95b091175d9aa8511d3d }, w7: u384 { - limb0: 0x83969f92951c7228b959b430, - limb1: 0x54c180b8f6750dcc507b7aac, - limb2: 0xc33db8361cfe0147efc428fe, - limb3: 0x97b60a9a444ffadf1af3681 + limb0: 0x2da07e5ebc77b49c12e26d08, + limb1: 0x35018fec6dd4f97b94791a27, + limb2: 0x2df155dc346466005f3e45f0, + limb3: 0xf03ec20e49940740bb4e76b }, w8: u384 { - limb0: 0x15ddd8e21f71a94900b7e7ab, - limb1: 0x5ca2bb9788567804d9db6431, - limb2: 0xb9f21e40dbb8a974e8fa836, - limb3: 0x1680a169bd52780afc151120 + limb0: 0xb686d6e8deb830ac983743fb, + limb1: 0xefbb73567b99306cf85fd083, + limb2: 0x4762bfb8c3a54083f457fa06, + limb3: 0x16419e58293c3b5781fd94a7 }, w9: u384 { - limb0: 0xbbb31ffbe6bc2e6a76f60e02, - limb1: 0x581e31d46029ce31d23ea5ae, - limb2: 0x8b013c046a7f16053df256e0, - limb3: 0x14977d1d57d84dccabb5df3e + limb0: 0xf65580c7a108982788c9b89c, + limb1: 0xd121aa15ef03318994883e5, + limb2: 0x11a244c1a5b98fa8b4be0a94, + limb3: 0x63e95ffcb88b94544718d3c }, w10: u384 { - limb0: 0x6f3f92a5d7d5e68f300f8847, - limb1: 0x318f2b6ea3cd64a4f50b20d4, - limb2: 0x73d92ccbca764f29ef05c058, - limb3: 0x151861538fb40c20cfa88e48 + limb0: 0x273ef5dba89034a19c82e19f, + limb1: 0x7141d415ef5b653cb922729a, + limb2: 0x62cd3ed7e4f0b0354bfaeb06, + limb3: 0x189e9b125ef596783f3faaa0 }, w11: u384 { - limb0: 0x5937f884920edbd8d4d6bd90, - limb1: 0xcbd419b9b13b8f12a1659537, - limb2: 0xefd647348482094de9e30b58, - limb3: 0xcc5669534d692e2bcb85c8a + limb0: 0xdeec8e0ee334d6f8373b7dd6, + limb1: 0xfbbf8216178a5c2473632cc0, + limb2: 0x155b7e76295be62cc8ff773a, + limb3: 0x169d630ae67bc5a13c9bbe03 } }, E12D { w0: u384 { - limb0: 0x4356acbf142e451776121f65, - limb1: 0xbec3bf339881efc372522161, - limb2: 0x1b25feab6fe155b806c5a42f, - limb3: 0xb1054adc6cee0c40de41d9a + limb0: 0x463892df326597d03fdc8f23, + limb1: 0x543fafd304d1727d15e54c66, + limb2: 0x3d1af656ffeb2a3f9acadaf5, + limb3: 0x52b652418eb5d55c5ed0876 }, w1: u384 { - limb0: 0xc7242386927361a46aaf3056, - limb1: 0xc4e81415ad4137c824ffa3d0, - limb2: 0xbe4835beb0c2a76bab292309, - limb3: 0x158e56e25491331400642773 + limb0: 0x8dca1c5aa0dbe67dec5f1d99, + limb1: 0x79521377a1260b6f310e89f3, + limb2: 0xfb23354a74be712df9ea02d9, + limb3: 0x4daf67550c61aa6e7f498fa }, w2: u384 { - limb0: 0xb9f1a19f7cb97cefd08c64b1, - limb1: 0xa37dc095f0ce4e455843b6f5, - limb2: 0xe049906a15d943a8f1c2ac70, - limb3: 0xf3300cffcbbedc31fd2f86 + limb0: 0x93ed7d98948221aeb9d7bd26, + limb1: 0x9031611929b07ed58fd5ce61, + limb2: 0xfbf22d50c6426f469b5eedb5, + limb3: 0x45c196bbd4d9f80faf426d8 }, w3: u384 { - limb0: 0x4123fbe9e26257c8485fc902, - limb1: 0x349116a1e1c9d1fa26d6ba4f, - limb2: 0xe2458e35371c6dbbf7773b2a, - limb3: 0xc4a3b62af86f096cfe93c75 + limb0: 0x7191afd5a463e0ccc720dfcb, + limb1: 0xbfb145f8e58df07d4d0e1ea0, + limb2: 0xe706524b225159a4f34eadc9, + limb3: 0x161d9a3dd409dcf6b1fdafd }, w4: u384 { - limb0: 0x347147f491e17221116cf8f2, - limb1: 0x5c2c3a228fa357cc04b3b57a, - limb2: 0x2287ece5e57fd3c03d29cf74, - limb3: 0x3981be013d22d7965696349 + limb0: 0x95a083eb33966dfebfc76c66, + limb1: 0x34483753df6a265061c0faab, + limb2: 0xf6252861d1032d53134d25d2, + limb3: 0xe4239f7618c5eaba0019471 }, w5: u384 { - limb0: 0xdf9dcc2dd73651aac544d9a, - limb1: 0xd1e06e9f2f1b392890222fa2, - limb2: 0x435b405c3f9a9701f6d676a0, - limb3: 0x3aef20529ccce00b8f01513 + limb0: 0xb3b85425d1d9a93ced6649ac, + limb1: 0xb4fb2e22e3dd50d86a173a91, + limb2: 0xa0341406c56024f75d2b7381, + limb3: 0xf0a653502b37844bbb7face }, w6: u384 { - limb0: 0xc45a2df6922c66e034aa7fbf, - limb1: 0x861eb583a76d94234f991479, - limb2: 0xbeea973fe39b57d2dc167011, - limb3: 0x57dbe9287483676b677091a + limb0: 0xdce8d9aa3549aba05edfbae1, + limb1: 0x7a7437046df0bc71d93556c7, + limb2: 0xb8ecad50a3e6fd474abf077a, + limb3: 0xd30e0e2d5f489b969ea1029 }, w7: u384 { - limb0: 0xe00e9b02b98e217c62f36019, - limb1: 0x93656a36744f2b84334e494e, - limb2: 0x3c774c1a0bc3e2909f1fd644, - limb3: 0x12f35c40aaa1a010a59954dd + limb0: 0x348febae86bde0c8c762ee8c, + limb1: 0x4241311d7897f697ea27621e, + limb2: 0x9d6745c158ebb362eb043e8c, + limb3: 0x188ff190799365a083355f9f }, w8: u384 { - limb0: 0xa518aad0c284d4afd30bfa03, - limb1: 0x25ec454a7c9e1a5f058a338, - limb2: 0xc8a5fcc0de4e20d8b278f179, - limb3: 0xd083677718743e7a4715509 + limb0: 0x71bffbe6d26f9b09bfa13a4, + limb1: 0x200ba6c25bac82eae29bd04f, + limb2: 0xc7407af232e2d46071f3dd2b, + limb3: 0xcdafb49bc0b1f282593e73c }, w9: u384 { - limb0: 0x8b167cd52fbd8e15c32e1c53, - limb1: 0x6330c39a7f5262303548b75a, - limb2: 0xd5623a3c309c471a3edaa4b7, - limb3: 0x10b23a7b9cfb4aa480aea008 + limb0: 0x6e047430ea3653e1cfe71b82, + limb1: 0x71e76d4ed1b194d08cb220c3, + limb2: 0xa9e46a2ef339ce7aa2ec2ef8, + limb3: 0x1222294e688d01b955521e5d }, w10: u384 { - limb0: 0xa0169b3617c2389f54a7d9c0, - limb1: 0x6650929e68de50aba15c032b, - limb2: 0x8538db013fc66528067ba5d6, - limb3: 0x3643bf8cf572adb406e032f + limb0: 0x9b5c9b6728bb1f9c46835d1c, + limb1: 0xa8ff534570a0a922678977fa, + limb2: 0x4d26021d1c127a887baa935a, + limb3: 0x135822de55149640f1dec93 }, w11: u384 { - limb0: 0x594ba5856d19601ef191ff4e, - limb1: 0xd2530edbe72546aa690384a9, - limb2: 0xf8a43ee12bee1533a3cdc6e5, - limb3: 0x15295d70391d0f861df17275 + limb0: 0x879891f64561ab48098ac157, + limb1: 0x25eccb084f1fb05333daa22c, + limb2: 0xec91cc8a0cd3299484a8e74e, + limb3: 0x11e64f80250f6a745ed72d0b } }, E12D { w0: u384 { - limb0: 0x9591a1c284ed0b91d1b8c7fc, - limb1: 0x40bbf6e6b4c81e6bbb5d5e29, - limb2: 0xc32e706b0e78cc21e6fc8d6f, - limb3: 0x123c2ae377727b7445878f07 + limb0: 0x8f1e7939c57d19c53ecea3e0, + limb1: 0x6ac4e3454c17025868995106, + limb2: 0xdfee314ff960ccd2fb9e94f7, + limb3: 0x8c51af8779aca97d60f1737 }, w1: u384 { - limb0: 0x2c0c6f328f1f3ca3b0ff051, - limb1: 0xf01bf74adaa77d7ad221ad5a, - limb2: 0xfe20091c21390f69e0e9211d, - limb3: 0xd7205ecf557b0794cb846df + limb0: 0x421675c6fe09d8fb9766e533, + limb1: 0x6db9dc37ae73eea07874b569, + limb2: 0xcaa7ee5415e054f315076d29, + limb3: 0x71feded8c720c8477c37ea7 }, w2: u384 { - limb0: 0x71772442e64302e2f252063f, - limb1: 0x8ac03a874223acd47ac6f780, - limb2: 0x59e3e9931c2e026161e29f02, - limb3: 0xda1bc7463afbdbc56056ac2 + limb0: 0xbffbd7f45db79186976ba453, + limb1: 0xa1c7ad3b3bc88190784c7203, + limb2: 0xaedc0cae18e2a788c3c096dd, + limb3: 0x6f180434c0d31908ef76ea4 }, w3: u384 { - limb0: 0x4b7776292665828624d0f973, - limb1: 0xa84404c392e294e0389a77a4, - limb2: 0x6e6ce059389bd3bca900960b, - limb3: 0x13589bbf03693003bf38cd71 + limb0: 0x88a58e87fdc9551eb4dd800f, + limb1: 0x43ddf467a79f41a734cbdfc1, + limb2: 0xd656833fd1b343d67be6d0be, + limb3: 0x18cb2f55c56903b8d1553f5f }, w4: u384 { - limb0: 0x598aa4e0c1454f3d4f07a55b, - limb1: 0x279dea30b8afd7f5d6986c0e, - limb2: 0x966a24da7366326d72c9d8eb, - limb3: 0x129fcfc345a08cbdbd7b972 + limb0: 0x2b0cd27b7c0fddee2ea55ee9, + limb1: 0x3f2691f5fb63f4b97ea498dc, + limb2: 0xfefc82823fb42ec890e599a9, + limb3: 0x8e135facdb50b9f9951b5f1 }, w5: u384 { - limb0: 0xb9e5797385e8fb4612d97b79, - limb1: 0x47025746d039182623475fab, - limb2: 0xa644fef2a6bd4d8f55d43ba9, - limb3: 0x105db9aef9b73cd2e1341384 + limb0: 0xc9001fffcc2332a66b740fda, + limb1: 0x6fba67a2e4ddc90d7f5ad0a9, + limb2: 0xc557d3690f327910760138c0, + limb3: 0xf9c93a974af9ebc372251af }, w6: u384 { - limb0: 0xbad08bfc4212950b435495c, - limb1: 0x2e3289caf3719c1fc453d6c1, - limb2: 0x7a7c5bb57e532fa4cbf6e299, - limb3: 0x3751351ba6a31ea92f6d7f3 + limb0: 0x7c6cae06e9fbd95103387d28, + limb1: 0xb91f8eae9bc298f123e6f1ff, + limb2: 0xa8110d837733601346409d0e, + limb3: 0x65f338d03f42191cdec46b9 }, w7: u384 { - limb0: 0x6e2845d402893ce3433b9f87, - limb1: 0x379dc25674ff71de0d28872a, - limb2: 0x10ae48b7608babbfd2c3821, - limb3: 0x197bfdfd6d2fc1dc69e4fadc + limb0: 0xef5af7fcd051dddcb5e5d12f, + limb1: 0xb3b67e412eb9d976cac73e30, + limb2: 0xff0bba828afcebed832f8dd3, + limb3: 0xf73c8de343bc96e7aa74f4c }, w8: u384 { - limb0: 0x60dcfa68d97aa7419d9f8d15, - limb1: 0x477d3ea6b877d5b689b6158d, - limb2: 0x9692e4590814d2d74099dae9, - limb3: 0x179f659bbf932f00b1a6a93a + limb0: 0xd035efba76850936be618f2e, + limb1: 0x2e26072578ff96779647015, + limb2: 0x853d9f30ec2fdaad2ed267a6, + limb3: 0x13815aab87da346dc9881fb7 }, w9: u384 { - limb0: 0x1488dbdee8a03f2b135ca98c, - limb1: 0x16aa4d2efa4dd813d1254e46, - limb2: 0x44f1191741cd5f88459d1fff, - limb3: 0x32084c9b37cdbdaab425f14 + limb0: 0x13cc6b0304c52dfd1402d34c, + limb1: 0xc35034b5bd16b8f2d312739a, + limb2: 0xb5f71bc61c480b75dacfd144, + limb3: 0xc107f01b26ae7ba37ea9c6c }, w10: u384 { - limb0: 0xae5df35664036e58a65e0be9, - limb1: 0xd4bbf68a30ecc270d880383a, - limb2: 0x966efd6d94033c791141b56a, - limb3: 0x6895bd9c7838e27db4e1c01 + limb0: 0xf1100381268ee48a669ac673, + limb1: 0x12ac94bea03b9a7838749336, + limb2: 0xe98abca526f9c56b44e71ef0, + limb3: 0x192a158852b00709c8b5130a }, w11: u384 { - limb0: 0x70c8a835c3af6a9e4bb2a935, - limb1: 0xb276a02f5d4f76f3140e4ee2, - limb2: 0xd6f0d411a03528518ee01e78, - limb3: 0x5c1591df180e1d27e5dacef + limb0: 0xbbc1f1c885f47591a6fff59b, + limb1: 0x997cfb0b37f1832c902de19d, + limb2: 0x9ca782ed65e2c5722859992f, + limb3: 0x8c2a2b64de7a6f84e48da15 } }, E12D { w0: u384 { - limb0: 0x853f5219149c0c85f51b9cd9, - limb1: 0x5a740087952638dab1044d0e, - limb2: 0x8683f0a9bcd4a93d5656c9f6, - limb3: 0x19f44eee171ab22747b2c2d7 + limb0: 0x6a112ba2ddedaa4f7ae8c66c, + limb1: 0xa05a4d704370d21371d6a20b, + limb2: 0x5810718c7d3fad479c5eebb3, + limb3: 0x15f7bc0e795be2566953f02c }, w1: u384 { - limb0: 0x686efc5bb9b2f53684a60951, - limb1: 0xc426d679f0dbf4f8b25a14fc, - limb2: 0x17c3d56ba996e0af73457bde, - limb3: 0x46337e27b949b73082e48cb + limb0: 0xb46bb8191c72f41501eaf1dc, + limb1: 0x5632a148603cf1d1751683c4, + limb2: 0x304f6d015b99082c3a818773, + limb3: 0x14b7e1352ec6e804a53eb113 }, w2: u384 { - limb0: 0x16f71cc7ae1fe237896732bd, - limb1: 0x3521ed4ef94193c951d8737b, - limb2: 0x6e1eaf74f0514edd7c952a90, - limb3: 0x1d032559fb67f4b2f4ee455 + limb0: 0x2567b008d6cfdd20b1275642, + limb1: 0xd024a5d367cab58b43deef20, + limb2: 0x258cba1632d260a426d8cfd7, + limb3: 0x11d83faeb2196db61e6c1c2f }, w3: u384 { - limb0: 0xc0782ea70c18da584e6b209f, - limb1: 0xfff27b672ff6c844de69ca5a, - limb2: 0x7b49ef82e3882977c0b987e4, - limb3: 0x6fe9ce50da79d875ad4f9a + limb0: 0x34ff1baefb779e9d02451526, + limb1: 0x43734c384ad3e80ddb0c4d20, + limb2: 0x9e259caf289435cf24eb9c3a, + limb3: 0x197cfd982a139f106b67bb07 }, w4: u384 { - limb0: 0xb8f6c815ff5c5690bcc75236, - limb1: 0x304e462a52066d5ce49c560c, - limb2: 0xd92fcbb1b5e63d47d547e033, - limb3: 0xdc1a677aee2c1c8082cfad + limb0: 0xcebba26851635416cfe9bcf, + limb1: 0xf50a5b08a010716ef3310aa4, + limb2: 0xe86363e9cd0c311e93028dde, + limb3: 0x17c5e840e6f39bcecf2e48eb }, w5: u384 { - limb0: 0xec911eb053a7d248881ed2a1, - limb1: 0x483c565f0606c29ddec4c120, - limb2: 0x6913ffc2b658d00dc419136c, - limb3: 0x28b880670ce90fda6d21737 + limb0: 0xb0c058c7f39fa38aee7be968, + limb1: 0xef52a25bdd84d57d5f3f2be3, + limb2: 0x4870e30ed51cb24b2851f555, + limb3: 0xdb5776a4677e0cc068d9102 }, w6: u384 { - limb0: 0x2e6663f9260aa8f1a8122c48, - limb1: 0xdeba3e95b46667c1863aec0c, - limb2: 0x80632a945d1c7aec2ae741de, - limb3: 0x14f8a6295bbd74efbb197d3 + limb0: 0x64190719c42162352e7b326c, + limb1: 0x4de6bd97971e9499676f59e6, + limb2: 0x2cf519b5acda3db53e352ab1, + limb3: 0xaacb5d1f72575a4d1609068 }, w7: u384 { - limb0: 0xbd74f7ad065c1e213da675c3, - limb1: 0x22da08e231cf1e416a8e579c, - limb2: 0x4c9cb3a9a6026e70cf4cb092, - limb3: 0xd7340f4d0258504c2ef16d2 + limb0: 0x137fc746bd9ae606c52af772, + limb1: 0xbb494dfe998a79523cb6d281, + limb2: 0xe72791e384c62667fa4648e2, + limb3: 0xb4a0babc27754278ac85e24 }, w8: u384 { - limb0: 0xdafd7d793beeca1d04c064fb, - limb1: 0x68e62d173f79a75e9d48a6fe, - limb2: 0xebaecbeec1ed0cfe880febca, - limb3: 0xcafc343d10a8353889d97c9 + limb0: 0x310eb1c3659daaae193c2ec2, + limb1: 0xf83fa1dc70dd71ce7a8a6f0e, + limb2: 0x2bb871cf5c3bc72239201a34, + limb3: 0x10011dc6ac2df0ef1dae7823 }, w9: u384 { - limb0: 0x8376e20472ed66ff5b23a3f4, - limb1: 0xa483dce86048bd3e29cf977d, - limb2: 0xb6316a2a1a0f9369995949f4, - limb3: 0x1194f0f00547908b7eb6ec02 + limb0: 0xd6ac7814bf7f6ec2093b4bc1, + limb1: 0x190d9f1f1f3e1cd596f6d12b, + limb2: 0xc5aa935dd6e127b778dbc1ab, + limb3: 0x18364df17a009212932ade74 }, w10: u384 { - limb0: 0x5c6637ae88632adbb66c581c, - limb1: 0x7243905fd33fe35875ee3e4c, - limb2: 0xed2e1c2bdb7e9f09a23e9d6c, - limb3: 0xb13ae2f092177b119103ad3 + limb0: 0xcc2d3d0628d1123035a32c6c, + limb1: 0x80099ca7d91885697897c623, + limb2: 0xca13de734f004607e606d32f, + limb3: 0x571cada7b282c799a676a37 }, w11: u384 { - limb0: 0xdab7c16bdebc0c95eb356b06, - limb1: 0xeeb4a6112a7607f203a543b3, - limb2: 0x32e7a8f7a95ac5e49247b8d, - limb3: 0x10ba128ca89894dda36c830e + limb0: 0x3d2eb153934209ba76b679be, + limb1: 0x90847cf06e119493635244a, + limb2: 0xe60094ba45fd10ead77b85cc, + limb3: 0x15223a366a5730ba8e3df07d } }, E12D { w0: u384 { - limb0: 0x62cff79adf97169eee75304f, - limb1: 0xb2f92dd6f9b0abf8b2e632dc, - limb2: 0x1732a9067302c386d6867086, - limb3: 0x69f115ac28160a5de3b31a3 + limb0: 0x5948725e1d867457641909a1, + limb1: 0xd7f4858a650508ec02173b8f, + limb2: 0x25d361b814bf1dc5641feff6, + limb3: 0x11588929a1b43faf0a121aba }, w1: u384 { - limb0: 0x3148e2a38517ec7fc7c43237, - limb1: 0x2c23c619cf7093aded349566, - limb2: 0xb8ad0ff51c53e5d96cadb565, - limb3: 0x11fb5fc0822e3cf5ba65b52c + limb0: 0xc2624e57525eaeff3a05d019, + limb1: 0xe67ff59fc4fa1e5fe5da998a, + limb2: 0x74e9ddce957af4449ac0cfb8, + limb3: 0x1588e918bbaa1d6fd366f3ee }, w2: u384 { - limb0: 0x6b97e1263d481879f77fedc2, - limb1: 0xace94c4a4de00297aeb0069a, - limb2: 0x4b3637d39bc5aef56e2d3793, - limb3: 0x146e437f6a8d1dacaa2f9321 + limb0: 0xc23ebab3372d5c82793e9234, + limb1: 0x6981739c06a819d5869d507e, + limb2: 0xdd33a51c8e5fb81eb62927ea, + limb3: 0x19c64a08a8a3a802e3ec8dae }, w3: u384 { - limb0: 0x31bd6cacb64af045523efed0, - limb1: 0x1b9bb55b345048feea6568ec, - limb2: 0x3f06dd6b19ea68ed134a7542, - limb3: 0x245cd7fbb53c98bee1379e8 + limb0: 0xb3bb8a9da972afb55fe55527, + limb1: 0x44df38ef432b6856e099797d, + limb2: 0x6ac6b0f38f2b4cd371af99fb, + limb3: 0xc4a0509b644c3440db6a09a }, w4: u384 { - limb0: 0x558be2a7f75332a90cca922e, - limb1: 0xde35c2e2f419fda0aa807929, - limb2: 0xfdb0e2514e1961eda48b007f, - limb3: 0x44f1cef7965ec96c7e7eda7 + limb0: 0x704939fe36e24d43084b3aa5, + limb1: 0x622690e1c49814c6ccfcf56a, + limb2: 0x50900772969642f27c114564, + limb3: 0xa6f8ba4fb9b04713a20c640 }, w5: u384 { - limb0: 0x48bec780a4519b005ba77592, - limb1: 0x4bce96c59e15a74f02f1a766, - limb2: 0xf305ae8da2c49349e583b0eb, - limb3: 0xf573dc4990a291e524b9d53 + limb0: 0x4e31efa5a212761af772348e, + limb1: 0xf62d26b7cec1ba4699652658, + limb2: 0x6ca5a79fc2fee424d8bf8, + limb3: 0x242680fd7064b67b87d495b }, w6: u384 { - limb0: 0xeb84f61445265291576f6929, - limb1: 0xa0beab99a1389a400ffef1e7, - limb2: 0x94ba6852a4fe61f54b2018e1, - limb3: 0x165f7ec0e59d8e1e78cabcad + limb0: 0xa0fcb0f49d504b10e0433879, + limb1: 0x185d1e99b75465c2749b5e92, + limb2: 0xe42c4f0e9d4bb8c23782e47c, + limb3: 0xc483930cd2439ba08028b24 }, w7: u384 { - limb0: 0xe81769ef5519e96cfbc2ead2, - limb1: 0x453beed7d5a7a5bd345a6f68, - limb2: 0xffa3cd8c5a4cf7b72d599c1c, - limb3: 0x1103bac867beeb85e3aca0e2 + limb0: 0x6d1fe2b775998749b372ae10, + limb1: 0x3c9ecc677acd2dbfd6b44c86, + limb2: 0xc7b2ce1af3d0ecf56b0ed73b, + limb3: 0x82393ff6a24c8b5899af6aa }, w8: u384 { - limb0: 0x8b0b29ea63ec776098d0a7e, - limb1: 0x8e7b9f99e03f17e6b426de8f, - limb2: 0x9bf0670551edaaf9e20b4241, - limb3: 0x19f4368bec976f5db692f235 + limb0: 0x2e68e9082ce797bb98fd8d1f, + limb1: 0xada917b3c3745e76396c0bd3, + limb2: 0x911825f4e998650bc292a325, + limb3: 0x137bef61ebb8af7b9e3e1e93 }, w9: u384 { - limb0: 0x4503624f5cd6c8cbcd48b562, - limb1: 0x29e1e975bc72915c0eae0afd, - limb2: 0xf4f8031121156b29ad0aaefb, - limb3: 0x15514535535cb96ca66ccb72 + limb0: 0x55b02d562d3d5f33a677c903, + limb1: 0x6e0661350461bd11f5147c80, + limb2: 0x1bf3f49c178a44890fe4c176, + limb3: 0xeffe020bd885e497f65b287 }, w10: u384 { - limb0: 0x3aaabc07b2f714b55e1ede80, - limb1: 0xf532a5a0e99848c91e4d2ba5, - limb2: 0xa3ca5ced7b17d00e205b36ad, - limb3: 0x66e6562636d39c8a5946551 + limb0: 0xbfa5377fd2a0948533644b2d, + limb1: 0x7bbe6b59847461892841118f, + limb2: 0x523ea6f90d3f61934a439b52, + limb3: 0x1329058b567b5fccd0526e60 }, w11: u384 { - limb0: 0xc10931e007297c9d63395198, - limb1: 0x557cad33ddd3b99ead56c771, - limb2: 0xa80e60b9440ab21352f790e8, - limb3: 0x10763510e7e9cbce5d7c53f + limb0: 0xe75fe9ed77962e485586b681, + limb1: 0xc8eca398311593cde63bd152, + limb2: 0xb161f06e4185104787b9f4c9, + limb3: 0x2e64bcf33ebad750f23b084 } }, E12D { w0: u384 { - limb0: 0xd57056dacf0c9ad8050650df, - limb1: 0xe1c94e2faea4e7f148f03f34, - limb2: 0xd62b097d57b227e4153598c8, - limb3: 0x19019fb7655e0319499e22fd + limb0: 0xcb05a845b4694c8404fec4df, + limb1: 0xdc312980d17f45710a1ef035, + limb2: 0xea2217cce9bea13aeaa9458f, + limb3: 0x11208b8fe4b5196e7cd5d94a }, w1: u384 { - limb0: 0x6092ea81334ab52e3cb13fe9, - limb1: 0x17248c16871a26c8426e5469, - limb2: 0x259839df445ce5b21bbb4cbd, - limb3: 0x13e3c632aa4af35ad45b1c97 + limb0: 0x90c7b7582ec051969bd72957, + limb1: 0x3d23017e85e95cf01ffabaff, + limb2: 0x72d75edc1fce258e600c13b9, + limb3: 0x1774c37b60b1b2cd7e7ecc73 }, w2: u384 { - limb0: 0x500445f3870f6af2ef7ae08b, - limb1: 0x73f05379dfe5c937db7541cb, - limb2: 0x68a0e8f9d0ba2e9f7034d4d5, - limb3: 0x630d06b26a7316e3b2b0c96 + limb0: 0x837adf418b814e3c769e5c77, + limb1: 0xc634a93993a4fa418b5965c7, + limb2: 0x6cfb67e14ab3081f9471832e, + limb3: 0x57d048b484c780774971a5 }, w3: u384 { - limb0: 0x6b48fc70189ecebb46c0dca0, - limb1: 0x1059d66287ff997d462b010d, - limb2: 0x412d03d889d0830a8059e52c, - limb3: 0x268153e1b0069fa7608933 + limb0: 0x5c16d5bf935b875581594d1e, + limb1: 0x4b7e39106e99649e57c0d01c, + limb2: 0x546e159c018de6221135bccd, + limb3: 0x139a7f5cf52fa816c9fef433 }, w4: u384 { - limb0: 0x38e36fe39e3083d31723de09, - limb1: 0x66f202bf139417c496d19684, - limb2: 0xd7812b667f561d10ea596c99, - limb3: 0x1879ed88b52c6d8b3df49f29 + limb0: 0xce872ed3bad5a4ebd4a7faef, + limb1: 0xbf24cdb0bdf594624afa126c, + limb2: 0xbe37210a0859111d014f8f70, + limb3: 0x47abd2e6ea65179f5090352 }, w5: u384 { - limb0: 0x7d878b1b1c59c5f7b4d2f55c, - limb1: 0xca21789c6d80650fda057cc, - limb2: 0x1b1028747b0ddce15258b715, - limb3: 0x97943038cab187c9b6087d0 + limb0: 0x347040e4f6856f555d668a5d, + limb1: 0xc63a63e018a5ad25ddd0299e, + limb2: 0x4887a7611c7bd2a773cd879a, + limb3: 0x9bb0af1be3722a80df10f80 }, w6: u384 { - limb0: 0x86713243aad445ce95af87e3, - limb1: 0xd0a070ff1057a4d2b2801842, - limb2: 0x74a213e4d8b61ba0919510fe, - limb3: 0x284fce98c3d0be5aa066dac + limb0: 0x2e7362a6b70a707d3bc2e1d0, + limb1: 0x376db1db546577030207cf, + limb2: 0x8082ab99717b3098e298a4b7, + limb3: 0x16fc8315dde33bf9fd0953c3 }, w7: u384 { - limb0: 0xf9f55d94f9619449be1a0466, - limb1: 0xe2d2752ebc774784d2c9b6c9, - limb2: 0x7c39239fae2697b1b800d950, - limb3: 0x15d73ef76681c4990ae964a3 + limb0: 0x5f2e4b10d6f658cd6b95f36a, + limb1: 0x8a53bd48666526b876ae3222, + limb2: 0x5ebe31bee40d83f626c855f, + limb3: 0x14642de33fc009a26889c885 }, w8: u384 { - limb0: 0x207f4edf8fd51f5e3c7d4c89, - limb1: 0x281d3d497445afa76a167c37, - limb2: 0xa8f46d32f3599d1fcc5ed539, - limb3: 0x45fc754a69c8b663a4c46f9 + limb0: 0x1b436fe777453cdf36635830, + limb1: 0x4c6024eea482910d3f2eb5f2, + limb2: 0xf9050cb78e6ae934882e8551, + limb3: 0x2c08b78139a160346fe2ebb }, w9: u384 { - limb0: 0xfa8835e0b4c6864221bc715e, - limb1: 0x5f9989cf04df1cc30bc5f106, - limb2: 0xdc7edc88bb16c5a764b08e2d, - limb3: 0x1988ccf7f7d00bd6a3a72b80 + limb0: 0x645e7ce0138e2b0bec3cd645, + limb1: 0xdee5e358e30449193c5a127, + limb2: 0xf51632d611a278c3adf25f09, + limb3: 0xb01c89091f8dda2c50ea78b }, w10: u384 { - limb0: 0xe91d67e93bfefd4c5909fb5f, - limb1: 0x4cecf36f7599756a89fd6171, - limb2: 0xe8af68ca80558ebc2b36befb, - limb3: 0xa7a6d47e7330e9ad5bff683 + limb0: 0x67fc0fef4490d655256dcd7a, + limb1: 0x58265fb7b434a473a9d6f3b8, + limb2: 0xb587b66299859a039dbe39ca, + limb3: 0xc55f46f0509b43ed995c0db }, w11: u384 { - limb0: 0x7aac56a6cd2055bcf53eb038, - limb1: 0x4002a361d5ac3247bc3f360d, - limb2: 0xdce66f71a76ace05cbdc5000, - limb3: 0x9db4b796b5bc0b5e3110d47 + limb0: 0xd616edc9806b7895ec86c15a, + limb1: 0x83260307f21c23b5951c1c7c, + limb2: 0xcc51dbc9285e4defc54d74bb, + limb3: 0x93af0e751d8ceb1af763ab6 } }, E12D { w0: u384 { - limb0: 0x5cdf10063d8b87c66145a28d, - limb1: 0x734accda101ba2768a2a6968, - limb2: 0xd63ca55c3ad19b2278f8322a, - limb3: 0x36b8512ae071dae282747e8 + limb0: 0x32a18b7a1fc88b7e4bb76c42, + limb1: 0xbed53231c46d5d154c271d7f, + limb2: 0x85d4b510b373238c5a5f7647, + limb3: 0xf8bffb23475f5e1843b7fe2 }, w1: u384 { - limb0: 0x9902320651ae93d13de7c9ae, - limb1: 0xdbf79ec0e25c889eab58a3a2, - limb2: 0xbc116c5e0be5e04e81e2785d, - limb3: 0x183c047795c80f810e68918b + limb0: 0x867fda0f8dfebda90363cfc1, + limb1: 0x3c088084733df1d8f67927cb, + limb2: 0xd803d47616da2113b0015808, + limb3: 0x9c72f92c3a9b643cd6dca73 }, w2: u384 { - limb0: 0x3d7fb7b398e3badfa0e395dd, - limb1: 0x505ea2b151ba88037d8e3736, - limb2: 0x7dec0488e91bc0bb1ee3e30d, - limb3: 0x4972eafadc4b20e22133838 + limb0: 0x4a2214f223e59a981ecd5f81, + limb1: 0xf5c792552acf65b0a8be9d15, + limb2: 0x8e8c0ef01e0c7c8e404bf081, + limb3: 0xfadbbe45d72a46999d19f17 }, w3: u384 { - limb0: 0x362e73beb677750b2a3f545c, - limb1: 0x73a0721332150238a4b0c97e, - limb2: 0xeb13789a2ae019355f2d0601, - limb3: 0xd84ac9ea73793e81f97ccd8 + limb0: 0x4272c39e719f6c20092f8715, + limb1: 0x6eca96aa6dada28460d68110, + limb2: 0x4519249fc8fd64b866e27282, + limb3: 0x117f92ce85b9e1125059baa1 }, w4: u384 { - limb0: 0xbc0868b68a7e506d60631594, - limb1: 0x270ae09707884c9537674cfe, - limb2: 0x8326055126a90bf719086ac5, - limb3: 0x1807ccb61e927e208f49a268 + limb0: 0x83666ab216a24b196bd36717, + limb1: 0xf10d6cc74c348d688139bac7, + limb2: 0xe564850f5a2f9cad74a2b000, + limb3: 0x19a26de5ccaa9a5ee8b7258e }, w5: u384 { - limb0: 0x73530942c6761cf80a742f98, - limb1: 0x7eb71b149276fbda5207691f, - limb2: 0x6160831cc3ed90830dd7aea3, - limb3: 0x19c6767b40391bddf6e06be6 + limb0: 0x5183029a5dc9b31747dc80a6, + limb1: 0x2b182959535b78af04d75db9, + limb2: 0x5cf336384d9785d28efa4b6c, + limb3: 0xa509603c63bdcefcab6978a }, w6: u384 { - limb0: 0x621128e08a8774da4fcb3d50, - limb1: 0x7d681e4f2f2d79e79f27ae58, - limb2: 0x911cb8bd82bba5f51bf4a020, - limb3: 0x9bf9469a170768e1826a184 + limb0: 0xf4a7e22e4c6b99ad7fe5f82d, + limb1: 0xac4f359b9ee8c29c67dfdf1, + limb2: 0xfbd8787d68566058ada6d65e, + limb3: 0xacb5073158dd1d295b17f6a }, w7: u384 { - limb0: 0x9326f421114cbc36ca7ae93e, - limb1: 0xacb53bbe537a08036e25b5ac, - limb2: 0xb0b069dc661265716d098fdc, - limb3: 0x184855aba1da6e04d0ef4189 + limb0: 0x455c911c113c493c330b09ca, + limb1: 0x42a99a6f5befbfb85ad35eef, + limb2: 0x2be7d0556aac7c7976e2f283, + limb3: 0x198d12a1cd832d420a66fa87 }, w8: u384 { - limb0: 0xe7283b1def9b8dba62085658, - limb1: 0x8f94d997205b26fd94af10a4, - limb2: 0xf93eea365093d537ca542ee8, - limb3: 0x61b4fe40a7a3e5851776804 + limb0: 0x7f53a624b70fa2baf7176df1, + limb1: 0xcc6c515ddac717bdd7565a1, + limb2: 0xc0457f52420c033033b1509b, + limb3: 0x95f60395a3a4c4e1926ffaa }, w9: u384 { - limb0: 0x4d5c76fb1f69e17ef374c6d3, - limb1: 0x67210e5779451bad7f9d61e1, - limb2: 0xfb674fab419d99b47b96d3b8, - limb3: 0x15af95edf56fbc930632329d + limb0: 0x2083c0a5c7d00ca3ab4a30ec, + limb1: 0xe21540016ddf62cea9d8c826, + limb2: 0xb492d4990f9e4a28ab429a4c, + limb3: 0x804f831426e06274ab5e72a }, w10: u384 { - limb0: 0xebc1007e2ea6eb2670a2d281, - limb1: 0x5e38b762f1d20bc448ce915f, - limb2: 0x914ef3593387447cecad3dae, - limb3: 0x41f3ee5d29a63aa6b17f0e + limb0: 0x4dc92398176fe586a1b02af4, + limb1: 0x7508595d5c9af06848c6f5cd, + limb2: 0xd6c92556399687f116be1cbe, + limb3: 0x4222baa5e1bcbda6ada93ce }, w11: u384 { - limb0: 0x11de3a91330b9f7622826d73, - limb1: 0xb9a73244bcf063631819c4cb, - limb2: 0xacd6a9ce4ee3872e69b08183, - limb3: 0x13c40a8834da6d5009732be3 + limb0: 0x494dbb899ca917defb002ede, + limb1: 0x61c98ac4add162c1825bd89c, + limb2: 0x987f20c4e2574be599a1acb3, + limb3: 0xc380c0cdf6347f3afe2d54b } }, E12D { w0: u384 { - limb0: 0x5b3af835bfe04b406e085510, - limb1: 0x194498307d0776670572d694, - limb2: 0x67f062d25055ca70f03bd7e9, - limb3: 0x1c34bc01cc7ecce24322566 + limb0: 0x8ab0a0a7e1fde6014f897197, + limb1: 0x334b8557ec31f25df6b47fb3, + limb2: 0xc9c94ff06b294460261bcc53, + limb3: 0x15c56635a12c3dc3ff444856 }, w1: u384 { - limb0: 0x29127431ac4681ec336c57fa, - limb1: 0xb3f71ce4884d8a88c5c25ad5, - limb2: 0x4800984a42676e3addfd888, - limb3: 0x191e67b19bd30ad5bf4d4701 + limb0: 0x4d6be117daa494c0e7de8e46, + limb1: 0x26e34aa07a9bfed51b90d861, + limb2: 0xb94876bc36c6f64d08d2332, + limb3: 0x1708c57aafcde1643d682b1d }, w2: u384 { - limb0: 0x7029afef3537f01b0f7a5a43, - limb1: 0xcd3ddf3f1c8070b6af51cca9, - limb2: 0x960c975856ddc56d5a001c4, - limb3: 0xdec00b0de4e5f6141308867 + limb0: 0x8f669d90dfecf16d4b7fbae5, + limb1: 0x142f92458302a5c0437b013b, + limb2: 0x704acf2e4a1f11142c2638b4, + limb3: 0x67259a40365f1c7dd1b9cad }, w3: u384 { - limb0: 0xa51425afd108f8103ec4310a, - limb1: 0x88a7101dbcf74ccbb900f680, - limb2: 0x5825891afac24a7b431e6378, - limb3: 0xae5592c20dd6b01d7a9a615 + limb0: 0x74f9258d3f02e19bef2c4725, + limb1: 0xfbf7ed1b56bcca05835c406e, + limb2: 0xa6591605f8dfeacbfcce393c, + limb3: 0x8ff9e6be24bb4dc19d93b74 }, w4: u384 { - limb0: 0x4037b529173e5f58cc05d20e, - limb1: 0xc2f07970e25717824add6d9e, - limb2: 0x8f95442be93c8481943ce49e, - limb3: 0x7746598bee6f4e9c22e206e + limb0: 0x1b99aa1c3398d31108f57c6d, + limb1: 0xd5ecc0599216098763a81747, + limb2: 0xab8ad27f28aad944829a3245, + limb3: 0x17378ad77f75ee5b0fd86f62 }, w5: u384 { - limb0: 0x75902efa98820ee326015351, - limb1: 0xe380f7bf2c38a7f986d9fed0, - limb2: 0x7d609d605cb7e628aa6a8dfe, - limb3: 0x71c1fa6406b731aeb826e89 + limb0: 0x35d0eb4e4033724049d4c15a, + limb1: 0xd8887fcd9803015ad80ebe12, + limb2: 0x32e3e05a97056da69b54bfec, + limb3: 0xbce310d3527f03b7815898b }, w6: u384 { - limb0: 0x96803af967570f03473f2135, - limb1: 0x5b044383a5d1d02534072ea4, - limb2: 0xed878646b1704ee49b9c1a15, - limb3: 0x16da834442cb803cc1214c55 + limb0: 0x7b6836403920453a79bd4441, + limb1: 0xe8fa10ce402c9053011e236f, + limb2: 0x3af5fa8057f4cb2d34b22af5, + limb3: 0x5b3ec5998bf709aa3cc4d07 }, w7: u384 { - limb0: 0xe0d9cad74d30a628326e84dc, - limb1: 0x5b396b96e72107faac345e91, - limb2: 0xb32705c70e3f7c667f29c96, - limb3: 0x2addd86eaa9c67266dbcfa4 + limb0: 0x66f5b337ede1b8ee6eaeed19, + limb1: 0x635dd902401c284bf75b5f02, + limb2: 0x72a3bde4fccc5a615d0f95d3, + limb3: 0x3673f3bfc49de95faea7741 }, w8: u384 { - limb0: 0xdb10a5d6a31186fffbdf001, - limb1: 0xf020d9eb4711302528fd40b0, - limb2: 0x763411c1b28be0f849a0c7c, - limb3: 0xc1564a5495bc485bc8cbbf8 + limb0: 0x85b1f683222cb0c5ee6bcc84, + limb1: 0xeb6f000ebd5e3300b726d713, + limb2: 0xff6745580ba6b6be48db1ec6, + limb3: 0xfed7fd49a64491bc8e32c17 }, w9: u384 { - limb0: 0xb7c0151a2e72beccf3330b40, - limb1: 0xad657c4641ede299f07211aa, - limb2: 0x89960732974e5d86cd664606, - limb3: 0x24a53c458b213b954a26908 + limb0: 0x4404114fbb1042dcd953a455, + limb1: 0x35c8283afdf53ee368920901, + limb2: 0x8591c94ca1280cbb0bdd0164, + limb3: 0x54cdaf789922492807cbc7b }, w10: u384 { - limb0: 0xd366b5c489966af7685b51c, - limb1: 0xeaf6ebf5a7bc8be338552be6, - limb2: 0xbd8170ad4eaf01ace86dae48, - limb3: 0x134a66886bc268f89b27e41a + limb0: 0x73555545a3cbd390801cd6bb, + limb1: 0x7a373e84445265cc30c3883c, + limb2: 0x9d6d46a2c601c6d5a30c252e, + limb3: 0x1621045719f0ae7af34da13f }, w11: u384 { - limb0: 0xf05d7ff736a1b72cc577320e, - limb1: 0x56a2cce5e0067b1ad4a1f573, - limb2: 0xec21f25684907ffe8986e7df, - limb3: 0x13a2feb09c870b8aea1b2667 + limb0: 0xf1946543c6df8e810198a873, + limb1: 0xe40834debc80ac45768d825e, + limb2: 0xaf9495fabb07ea22a500f3eb, + limb3: 0x401c2e2e838095447ac1770 } }, E12D { w0: u384 { - limb0: 0xc0192eb9870cda57d5e7dac1, - limb1: 0xb11cad7fd934384982c829b7, - limb2: 0xfb89acd83a36ee00b092bcb, - limb3: 0x3e1493f14f693ee7644dda + limb0: 0x6330abfb9c63d80e65830b58, + limb1: 0x4fcd921ba63b745f908fee87, + limb2: 0x8ef9ecee6dbdfbb851920aba, + limb3: 0x18e41070022f7346f4769b71 }, w1: u384 { - limb0: 0xa18f974808cdbcfb244f60cd, - limb1: 0x1630c9b7c21127bbd4fd8eb0, - limb2: 0xcc307c704cf7b424f21865cd, - limb3: 0x133b544c3ead2492a53767bc + limb0: 0xd18d23efe107e45ab1a41a95, + limb1: 0x8c8ed18843222b79c9f8f3f7, + limb2: 0x13f43ba3bdc848a9e18cdccd, + limb3: 0xb6b700dc043f61435798192 }, w2: u384 { - limb0: 0xea61b7993a3418f8fa2fa92f, - limb1: 0x94a3f5d73b9580f4ca6e290b, - limb2: 0xb749614146b555854774a85, - limb3: 0x18797677b0b42a1cf724015e + limb0: 0x50a3a455da02e76b44e7e970, + limb1: 0x3cfc82a6b9f678282f222135, + limb2: 0xddfadf5d5bd4da8917c33b0b, + limb3: 0x12ad62ed7d1cbfbf8fd9be8a }, w3: u384 { - limb0: 0x95779f29a7cd42d7436f01ca, - limb1: 0x3375e093faa87a5425ccb953, - limb2: 0x435acb39e297248ff04f22fb, - limb3: 0x594d45b1ddebf768c12b9c3 + limb0: 0xf69e3c3c36e6917c0ce25914, + limb1: 0xa441b796a9711192afacfe01, + limb2: 0x20044e4b06ac4fc74fe55e12, + limb3: 0xa097e6097f9de35724d3fc2 }, w4: u384 { - limb0: 0xde84b35ea520afdb36eb3ce7, - limb1: 0xf0fb7c6846e2244bc9233d98, - limb2: 0x34563d0057e94d791bbadc2b, - limb3: 0x14b9e45717f1dbe89a1b9230 + limb0: 0x618c46432bdfd75b7423a8d4, + limb1: 0x44e826bee0e1fe22536d0ab2, + limb2: 0xf3d18e87c398a968c297d07b, + limb3: 0x21e4e1404b8235021ff4eaf }, w5: u384 { - limb0: 0x52c5e7886edb7c244d9cb42b, - limb1: 0x772cb717d25f6681ff1b1e5c, - limb2: 0x52e6391f823a95cfb1777199, - limb3: 0x927c4caa5d3bd55ca026362 + limb0: 0x83fbe9d3c82f5e42e4da0e37, + limb1: 0xd5fd70a9de7d678a1a60963f, + limb2: 0xdc35e447b69b13388aa0ea50, + limb3: 0xcda3a0558ad9d17487b7224 }, w6: u384 { - limb0: 0xf75aadac846026726f966781, - limb1: 0x331bd0b302aa70f0d7fdfa35, - limb2: 0x6a89c0f83b4cbd0c87059cf3, - limb3: 0x1224be8b1617bfc7e370b605 + limb0: 0x55bf7cd75ead5cc3658d10f8, + limb1: 0xed6c39d85197d3e886733f7e, + limb2: 0x693272d8a38c8cbbec2b3202, + limb3: 0x469ecb6d543923d3b184fe9 }, w7: u384 { - limb0: 0x63395d40e3af0106c05bbcdb, - limb1: 0xd4426f39fa2272c26e04b595, - limb2: 0x729ca3ce41e52622cc860072, - limb3: 0x191a27e653f6e187c7c27096 + limb0: 0x43600a41d8cd8e557842a857, + limb1: 0x53260cee22503595e3af0017, + limb2: 0x5203058f647bdaadd6fdaed2, + limb3: 0x7e091bb07df9e610aa722dd }, w8: u384 { - limb0: 0xa4edec466ea943e47f9e340c, - limb1: 0x4657cae78284029987187aaa, - limb2: 0xb0a584c5931053bd44a14143, - limb3: 0x117e8fc98ba52bb39698a09e + limb0: 0x81208faad8ab00bdee725f7c, + limb1: 0xe310894f592b4d447110dce7, + limb2: 0x8edf12296ef3b7dacd51443, + limb3: 0x69bb5fc58595b230ff25c7 }, w9: u384 { - limb0: 0x8a6a2a254223a6a97d4dc0ee, - limb1: 0x71c0c215821396131c8be44d, - limb2: 0xd4c0d7f6ebf6601ccd717cbd, - limb3: 0x215a7231a603b740a074050 + limb0: 0x219695f75b8b6fe2bf1aff27, + limb1: 0xb8a8c364e14f5e5aa5b5494c, + limb2: 0x3c4e1de0757129e0b05c9f23, + limb3: 0x1722b3d5bbbc23acac6054a }, w10: u384 { - limb0: 0xc6821b92533a9b0c09719d15, - limb1: 0xf0fd8d374b6fab53904b0dc8, - limb2: 0x455cb04ca699bce7bc4b9f77, - limb3: 0xb19ab260ef5e5ae97eec101 + limb0: 0xf358aa56816c215900344355, + limb1: 0x1e5c665b09f3df44afc3c92b, + limb2: 0x802a949a2b04783aa6365234, + limb3: 0x186e9fc3966f0cb4c2ce22a4 }, w11: u384 { - limb0: 0xf508b2d359e18a8e47312085, - limb1: 0xcc80a02b899a35d2e398af42, - limb2: 0x7947ddaa5c700c26960e5180, - limb3: 0x1284711c2fef2806e318bab7 + limb0: 0xe7ff0c5c050f6c881b862d9, + limb1: 0xee833ee82659ec54245d7cb8, + limb2: 0x6a031c83a08595c8785bc173, + limb3: 0x2d945ec5b2f7ae172a73c29 } }, E12D { w0: u384 { - limb0: 0x36270a174885085386f83c7a, - limb1: 0x617ba7f26f764afeda78ada0, - limb2: 0x3404cc50a72e202aa2cabc10, - limb3: 0xa5ad3670464423174e661dd + limb0: 0xdcd44aab34561de4d02951b0, + limb1: 0xf764fac8d10fe23c985f95e3, + limb2: 0x97efb6679be322e92b338e24, + limb3: 0xbac5291041f13e8022f49f8 }, w1: u384 { - limb0: 0xfa9a0e3df09610a115bc2428, - limb1: 0x35d9f20c1e5f8b18fce5973a, - limb2: 0xd99e8a697a65628aa10c6afa, - limb3: 0x4a1354504b024515ab0d4e8 + limb0: 0x1766867bfc38c2a9ac9df551, + limb1: 0x3dd794f1ea2055e21674a71c, + limb2: 0x8b2954c9c8ac1a0c2d53f6e7, + limb3: 0x75d1501e3574bc6a256d588 }, w2: u384 { - limb0: 0x42283fb8d70885c1c2a37805, - limb1: 0x942c7f4f088fc6c420b32e08, - limb2: 0xb56e5e7541b78080c542d378, - limb3: 0x187072d2af64d31ad33a4067 + limb0: 0xb71575a9484f502c3d9e6131, + limb1: 0xbbeee43751240a7f475bc76f, + limb2: 0xe44aa532c8b6b7438c9c0c38, + limb3: 0x1978290841c33babb5e2fd20 }, w3: u384 { - limb0: 0x5d7ab54f092b0c8150ee5388, - limb1: 0x3e9e350dd32cbb8ac5aee46c, - limb2: 0x58523a5b4be402d0a4246a6a, - limb3: 0x31f1732094c916f313126a2 + limb0: 0x2f137e7e3e000c08ca21b4c9, + limb1: 0x3b8e807e39f6a5ac4503874a, + limb2: 0xf7f42b32f55845e1da67a948, + limb3: 0x2087d5f7a4c72f5c265b73 }, w4: u384 { - limb0: 0x232331f723dbb9acbc79da20, - limb1: 0xe1c74cf2571d265a76f3ce9e, - limb2: 0x3daf4c68c3413f7879cd744f, - limb3: 0x10a68a639b075b6b40b3a402 + limb0: 0xa2f8aa05c7ddc2eb60360861, + limb1: 0x9820fe278063d70de2482b80, + limb2: 0x3377cd35e3b9da71b921fab9, + limb3: 0x5f3c5f5b5d85052120eff5f }, w5: u384 { - limb0: 0x7bc0bc844cd7408b92eafe1b, - limb1: 0x62582e0c86e09532ed04e4f4, - limb2: 0xa506cc3eed5d4f60ec4796d, - limb3: 0x1e3ee767f151754fd4671a4 + limb0: 0x1ed29c932ffe5cb0715eeafc, + limb1: 0x2bc336b232156f4081b4ba68, + limb2: 0xa5552fb51f4ea3ffc82afb82, + limb3: 0x58dee477faeee4a67c79688 }, w6: u384 { - limb0: 0x84d029808eba784576299877, - limb1: 0x9b3718a85e664e113f1fdcf8, - limb2: 0x2aa7759cb244100381783010, - limb3: 0x7a3bf84ac9bb9e7e6582ef0 + limb0: 0x62489417f1d76bc2b2d1d3db, + limb1: 0x36724c43501674dcc931982b, + limb2: 0x72f45d05b2084b841a0315ff, + limb3: 0xedb1fe5b069fb1eefa25966 }, w7: u384 { - limb0: 0xe5575150a8d0260b58d31239, - limb1: 0xa05bc569dd4467a26297c15c, - limb2: 0xaf66ae25d386c753a4b4f5c0, - limb3: 0xdbc67a1797f1fa0077bc8ad + limb0: 0xc14a46c6e749ef72345364be, + limb1: 0xcd0c67d0599fa19b5d4601d6, + limb2: 0x2d71310ef78c2aba19815dfa, + limb3: 0x17bc3a016b2f7f64011a9319 }, w8: u384 { - limb0: 0xb8940681d8020e987ea2d37a, - limb1: 0x7df8020a42ad9c9ca994c9a7, - limb2: 0x48f42c95c8f5f8514738c0c8, - limb3: 0x1530a75929328c1d34cf5fe + limb0: 0xc3b955aaec0c5f3b63f4125a, + limb1: 0x83af43812bc76adbfeca6cba, + limb2: 0xdbccca79d1df0836bc28ceba, + limb3: 0x17af426b58f8b4aa12bdc82e }, w9: u384 { - limb0: 0xcdcb1b69f4937c042eb124f, - limb1: 0x5a570869f67a22586d49f049, - limb2: 0x34181f8bff9759707281e3c2, - limb3: 0x16f4731e5c4c997c1f0e4fca + limb0: 0x7afa11a63fd42bb2deb53676, + limb1: 0x2675c093b985f9a6dac94ced, + limb2: 0xfab43f61f127db00dba25cda, + limb3: 0xc974425e6c084ff03bee07e }, w10: u384 { - limb0: 0x6535a929badfe32f1e410274, - limb1: 0xa7cd55113550ba082f18dbc, - limb2: 0x5218d25281b919f200f2708b, - limb3: 0x125139fcc9c5a73786b1b1b7 + limb0: 0xcf6c05f35d557879e48fb6ad, + limb1: 0x7588ae3c1a2c4cda40d1be88, + limb2: 0x12dd466535d5c3de8f593c3, + limb3: 0x1026f8fb75530d4b8af73066 }, w11: u384 { - limb0: 0x1a758bd3d7bd740c238330b9, - limb1: 0x6b2a9d716aec953ef07ee1cf, - limb2: 0x8bc7bc05d8e0938286f9daff, - limb3: 0x1330a0604430471dc926af74 + limb0: 0xb294e2cc540cdd2303341e7, + limb1: 0x8bd5a040688a8df5d439a4ff, + limb2: 0x243fabdd2a76cabfe91859b, + limb3: 0x468d66edc2f31370d12e9ca } }, E12D { w0: u384 { - limb0: 0xd130f1119ba3e3716ad9906, - limb1: 0x338b898bf2294df8535870ec, - limb2: 0x738a0b388fd8a35bcf6f29ae, - limb3: 0x4c39db2c922c17354534025 + limb0: 0x53440a298ecbca3fbc37386c, + limb1: 0xf00c6c591d88c42fb884b8a0, + limb2: 0x495bd2ee24a12858ee5c030d, + limb3: 0xdfc7f7f9570c71f750085b9 }, w1: u384 { - limb0: 0x5bc2905959ece4993810dd05, - limb1: 0x2bcb7b1fd5c8108ba9ca02ff, - limb2: 0xf4f9c0fba6c0a42f07f71499, - limb3: 0x15f9c95729aabd6b8b398d0c + limb0: 0x8ca3e35927383bbdfbe4ffe0, + limb1: 0x6ad61bb53d176080628d5d90, + limb2: 0xb052483812426cface6e11e5, + limb3: 0x663cb7b179c851752f69262 }, w2: u384 { - limb0: 0x6ca395170dd9511228d2b287, - limb1: 0x2ddd6a0e5455325b5dab7a79, - limb2: 0x5e23cec5b610eba2f941b00c, - limb3: 0xcf21dff6748e1b54e3cda80 + limb0: 0x77be9610b07ea3d0b048f1d3, + limb1: 0x9404080d29f31e1314de790, + limb2: 0x9f8c352d7713b75b5a56dfaa, + limb3: 0xc8df445cf5f1112f08e8374 }, w3: u384 { - limb0: 0x59a44cdd34a06ffdab5d2620, - limb1: 0xed60524ab88963a6b9a26374, - limb2: 0x30b284208d87f3457397da17, - limb3: 0x1238b8021bcacf4f00431085 + limb0: 0x72590887ecd6b2371a640618, + limb1: 0x2785282cdbe7d7f176057dce, + limb2: 0x8c17b01385c095fc3f3b50aa, + limb3: 0xa337d076671f900e8b75a06 }, w4: u384 { - limb0: 0xe54d2a914c42399f6676a013, - limb1: 0xaa8320730f23bab96e8ef992, - limb2: 0x96b12a9d8ea4fe62b4668bdc, - limb3: 0xf109b3cce0b214043b888d7 + limb0: 0xaf0c2c439dd3d174a3436965, + limb1: 0x8ae52d0aa255c1b5f650e7fa, + limb2: 0xb9714ab1e40a8623ae38130c, + limb3: 0xf082ae42847988851ccad64 }, w5: u384 { - limb0: 0xd932afc8a23157e0c8152266, - limb1: 0xe9808a73aaa7371d3438388c, - limb2: 0xb9ee476d9fcc6604e67bc076, - limb3: 0x16d25f08a5019d4840fe2b0b + limb0: 0xfc4c43573f6b14760c975cb1, + limb1: 0x45b5abce156e08efb5ff5921, + limb2: 0xd59e9f80354536b329aeea41, + limb3: 0x13de37e0db87495d0718d54f }, w6: u384 { - limb0: 0xa6d19a85dd7eb1798bf900cb, - limb1: 0xeb72a0168a2a3d28bf5cdea3, - limb2: 0x6771442d46ebe055960abb7d, - limb3: 0x2033d28eb038c598998f41e + limb0: 0xce9bfedeaff527084353773d, + limb1: 0x784fee1767ebc4133121a983, + limb2: 0x8eeaf4d2380ba682387dbe18, + limb3: 0x156e7821eaaa1a0de05c013d }, w7: u384 { - limb0: 0x12ad73d996a8391e4f7332ce, - limb1: 0xb157edb87316b8db26a2f4a2, - limb2: 0x552762c3b42e6dce77424a35, - limb3: 0xb64cf57ef63f3ad7a7822c0 + limb0: 0x5cde06d820de78ef8dce1784, + limb1: 0x417f652a4284894cd47671c4, + limb2: 0x90a3f586cdc35f7d5347057b, + limb3: 0x16be8e6d8da96c9746e7eeab }, w8: u384 { - limb0: 0x6ea1ee5ad8bf04ba13bf92e4, - limb1: 0x96567fd7d105a470bd373b5e, - limb2: 0x51b030998f0d272a828840ed, - limb3: 0xd186236ee84871a55c2f58d + limb0: 0xef10325a902dc8edd2972707, + limb1: 0x4853fbaf20c994d39be523cc, + limb2: 0xd9364b835250b8da531978c8, + limb3: 0x16959380030f303cd58ebbbc }, w9: u384 { - limb0: 0xf4bb164477215162a40bf082, - limb1: 0xd8d7446aa3b8fe4a0a728c8a, - limb2: 0xb912611efd7c691f3c9fd6e9, - limb3: 0xe362e7b0a9c70fe6bf5d689 + limb0: 0xc5ca9b9a8d260d1ece95016b, + limb1: 0xce2677626ab65cf2ef7e4345, + limb2: 0x900bc538142487481df553d9, + limb3: 0x31d2f3864cd3cdd273fab68 }, w10: u384 { - limb0: 0x805b29e46ef651865d867133, - limb1: 0xd2a2861f4f07e1efcba1d6be, - limb2: 0xf1980639dfb484a646a986ed, - limb3: 0x10f690412e850100350134d7 + limb0: 0x408844ecaefe2ce2f376457b, + limb1: 0x497faedd96b90752259fbcda, + limb2: 0x8c22de4d653bf4e624cd7a0f, + limb3: 0x949f2321b9a6787f54dc680 }, w11: u384 { - limb0: 0x6e3d0166f7abb44ea21eaa3d, - limb1: 0x6c05ab00ded3b79aac6c50a6, - limb2: 0xc2d2332dc11d788cfac7f998, - limb3: 0x15733c24044a928106ed211c + limb0: 0x3d80637c861483fc10923950, + limb1: 0x1e967c337654d0f4785768ae, + limb2: 0x481b72702d9103dcb4e43781, + limb3: 0x5333aab7260bc64dc7b0c43 } }, E12D { w0: u384 { - limb0: 0x8b3addcfca5e6417d81a69bc, - limb1: 0xa64129b5ec85cca8c65f3849, - limb2: 0x4c726961ba417d36a4c892fb, - limb3: 0x822578588d72c297a188c2c + limb0: 0x38310333cdefedb4cbbdd387, + limb1: 0xe6b26f886d9c9653b2bbfe8a, + limb2: 0xb9d35f863c9f4a2f8fb4c268, + limb3: 0x1704b1182471bba9fffe9b2c }, w1: u384 { - limb0: 0xb597a12c8c8baa54486ada0, - limb1: 0x6b00a972dd640ef2a919f0bf, - limb2: 0x765e6042ad88757cba84a7e9, - limb3: 0x2ece28cafaa9d4ad66f0964 + limb0: 0x2f265bef4a3e85db94108c08, + limb1: 0x3c696d4e098accea9610661d, + limb2: 0xd5c7476731fad0754e2f7464, + limb3: 0x19c1461585a2ed5cfb8e29b3 }, w2: u384 { - limb0: 0xc2bf95c6b8a51e67d8a6e62f, - limb1: 0x895427c7010d7a272c535bd5, - limb2: 0xdb98daa7bf4ad3344320a33a, - limb3: 0xb6a2f441ba861f05b40ca4a + limb0: 0x8ddae3fee367964ddc51aca4, + limb1: 0x3c783b044ad80f5ff5ee47b, + limb2: 0x21fe26975324c5a72e3d8565, + limb3: 0xaad681192ba5d299a585a5d }, w3: u384 { - limb0: 0x66e81527d0a3d4ca8f30ddb2, - limb1: 0x9c37956daa11899a3fc2340e, - limb2: 0xcfb739b50e666b8f0fb7432d, - limb3: 0xa2d4ecabaadd3022531972a + limb0: 0xb5a4f92d186f3de7774bf466, + limb1: 0x47399c41c7fbe1b809d68b65, + limb2: 0xfebe186619588872bbdb398d, + limb3: 0x12027639f4c191a164a4f692 }, w4: u384 { - limb0: 0x56b978a2f67452fb493bd2f2, - limb1: 0xcd1cc0f72531aa9642608989, - limb2: 0xd29ddce1c9ae677ead47ccdb, - limb3: 0x13f56d3b9370277af5385970 + limb0: 0x1ed3eb45d160fb1373412355, + limb1: 0x831078097c20872dd057144a, + limb2: 0x244cb8f1817d780639d6efcc, + limb3: 0x19c7a9b513c9b7cb16f2fbe4 }, w5: u384 { - limb0: 0xa89f2b5c93c05ef88ea60509, - limb1: 0x88d6cf51dbc0261fb64dd3d0, - limb2: 0xd770b7af72e169463732cf47, - limb3: 0xfc513356127308b45d4aa3 + limb0: 0xc7fa1a75f2f6457efee6288d, + limb1: 0x6d9981199907ede67d377826, + limb2: 0x7017f14801a7642e0ccec35f, + limb3: 0x79340fa253776b7f9ad54b7 }, w6: u384 { - limb0: 0x43d938b5a3b10bc3932a4369, - limb1: 0x1d0bc261f945f3a30a4cc93b, - limb2: 0x5055294658f5388ea715f262, - limb3: 0x13d35e47c6581c3a9471eb6d + limb0: 0x1951605d4cb399fafda19b14, + limb1: 0xe29688e261e873fbff9416c4, + limb2: 0xce7343a650a1837798c5cb42, + limb3: 0x5b8145c2335c829e52f88f1 }, w7: u384 { - limb0: 0x4b34ee996b5f717e49588928, - limb1: 0x2e0d01f5e493b2dbe16f12fa, - limb2: 0xb3c13436b3572f3bd4b2699c, - limb3: 0xef5b6043dfa0f9a9d43476 + limb0: 0xba5d797f60560986e01ba818, + limb1: 0x7ae11273ee16502bea96d552, + limb2: 0x95bb618261fb7366448a57f6, + limb3: 0x101d67f331304802104efa13 }, w8: u384 { - limb0: 0x40f0209a67b8ff819cd9813b, - limb1: 0xf547c360c5bdcd9e54ca62cc, - limb2: 0x4ba481c89ecdb96a42aa1006, - limb3: 0xbf4c97a90125569b016245e + limb0: 0xb413d3b78382cc0394fa2549, + limb1: 0x5a060fb17c807ab2ef281cb5, + limb2: 0xe5fd89b52a969cfc97721f17, + limb3: 0x2acd817f32ac7f3595b1453 }, w9: u384 { - limb0: 0x12bb58021ea45e1ac4a00b98, - limb1: 0xee2eaf973626f518972879b5, - limb2: 0xa4f8298e183606ef675f424a, - limb3: 0x661ccda4a9395065e6931d + limb0: 0x575cfb2ef28e2be2082645ae, + limb1: 0x3f9eafe2f376a88b2699bbb3, + limb2: 0x532bccae3fa1edd9ef536d7e, + limb3: 0x8267ac24a0a7b0422993f5 }, w10: u384 { - limb0: 0x26e98c7f3b34719260494b7a, - limb1: 0x38194984ebdeb8b90ac7e8fa, - limb2: 0x58ad43e1837521e577d65c65, - limb3: 0x176751c60256a0f08ea4ce1 + limb0: 0x5f095ab985987db60530add0, + limb1: 0x13cef29a9be08c4cd7beac5a, + limb2: 0x712cdcbe419a912868ee92d9, + limb3: 0x8252dc744fa3ff31de07fb2 }, w11: u384 { - limb0: 0x851987f0c57bbaf55a262de7, - limb1: 0x7f6e92c8826eaae2b7ba67d2, - limb2: 0xd0070e32813547da55015c94, - limb3: 0xe343007cab6e4b3b3623c37 + limb0: 0x8913a803c4f8cd1d4360121f, + limb1: 0x7873ac2af02bc0f1f25b928c, + limb2: 0x395ae004546d19ce7704521b, + limb3: 0x9dfa0414c0921fba7c9c42a } }, E12D { w0: u384 { - limb0: 0xf0c4e6c0a7a971a44b85471d, - limb1: 0x1295ab0170bfc82d9c28cce6, - limb2: 0x58978e898e906d9453bee0b1, - limb3: 0x12f0563b74d5003d648fedd6 + limb0: 0xa923158bc54ed6f76eb96ff, + limb1: 0xf4571d97a4761ef7bf43d5c5, + limb2: 0xe1d3f3e9ee22a4d98f35bcb3, + limb3: 0xef8cf555ff1d8d25c7d56cd }, w1: u384 { - limb0: 0x5657ebc0164299db5a6eaef8, - limb1: 0xc237664b9143ea43f65acac8, - limb2: 0x87860ae7fb343395d1f1c271, - limb3: 0x17df723160a5d556ed96d99b + limb0: 0xfed2c2ad537b642c979cbd5e, + limb1: 0x17e58604ccfe4cbcdaeca45a, + limb2: 0x915939656a561a1260e44ee6, + limb3: 0x1900f056b2c9aafbcd081d99 }, w2: u384 { - limb0: 0x98cff2a1c4d164bda830399a, - limb1: 0x12ffd085385c082c6d842ac0, - limb2: 0xca243c8e79d70ae2cc18f89b, - limb3: 0xda8af35d11969354108f0a3 + limb0: 0xcb4e904d4f5ac5fe8afc4997, + limb1: 0x2eabc17ad63462e1c7b0d176, + limb2: 0x5011312bd36e6beea161aaf9, + limb3: 0x1244aad45ee33757d7cc87bf }, w3: u384 { - limb0: 0xde6eb472c9dbc1359e02f3ba, - limb1: 0x672557a17c50616b44f40282, - limb2: 0xd6ab68848d990ea5648a09fe, - limb3: 0x13feec38f4d0a8964da1fdd + limb0: 0x8047d5095daadaa85cd9dda9, + limb1: 0xf1dfdfa6dc8d2403f7964f29, + limb2: 0xe7d9bc7d135e75b9d99c5434, + limb3: 0x406715513ddb56404eafdc2 }, w4: u384 { - limb0: 0x115497ed2a13b4625515e141, - limb1: 0x8016ddadca0ac245e993931d, - limb2: 0xf329f298db2d83aa6c29a52d, - limb3: 0x1951ac47bd2624d420aa418f + limb0: 0x28dde8c0867143497351dac2, + limb1: 0x75f6390c3979c0917e095446, + limb2: 0x34095437dd9acb8e9bc45a48, + limb3: 0x1bd8bab1135530bf2c181d0 }, w5: u384 { - limb0: 0x7b05610d4b5d589b9110362d, - limb1: 0x9f2130d638935f68ea1f669b, - limb2: 0xf273df67684a54c3cce61c37, - limb3: 0x15791268297c52d708973f6c + limb0: 0x164f5b0e678364897aefca16, + limb1: 0x78a0feca96d2e0b20a5d4c11, + limb2: 0x727ff759aa944f78ed2fbdbf, + limb3: 0x123e77c3f35d90d06b086d6d }, w6: u384 { - limb0: 0xb61f7ac5b4d2f23927110de9, - limb1: 0x38e31641a7efc9c30f66ae25, - limb2: 0xaa2da3dcbbaf0c9d04ede3ea, - limb3: 0x12bb2d1c932fc1515d93576c + limb0: 0x2a6be40a423b3fa514f4d916, + limb1: 0x4be4b92757c334fee5e2f398, + limb2: 0x9becdb97a43d57849a9ad260, + limb3: 0x129099d923e82bc861e8c4c6 }, w7: u384 { - limb0: 0x93c9be9701eec6b9fd97866f, - limb1: 0x2d1054fcd0fdbec94cca2f05, - limb2: 0x75a20e29f56bcbd6cc0f1aa8, - limb3: 0xddf588605755abb0f707370 + limb0: 0x26e9ca3a04fde1c3d69bd8c9, + limb1: 0x8b4964a7be1e03b160bba757, + limb2: 0xa22534a3fac973c730a0a401, + limb3: 0xe839bc982ad845c9fb8e02c }, w8: u384 { - limb0: 0x922bce211ad60d3ff509cd37, - limb1: 0xfb216327b96142dbce66cca, - limb2: 0x9063d809745f9a62df259dbc, - limb3: 0x173f36ee37c9bb894969baba + limb0: 0x3078ea008feda109fdbddb63, + limb1: 0x6c1958823ae8e68b29e8f4b2, + limb2: 0xf4f1f78c7b6c6cf78dd7069f, + limb3: 0x14852c2d4e359cb7eec856a0 }, w9: u384 { - limb0: 0x54ee90d143cf1fe405b27f24, - limb1: 0x6fe3cdc46ef2b1e1bc9f24ce, - limb2: 0x2304a37573fbd8f189afbdd6, - limb3: 0x269f5d916fe3b13f2c4a45 + limb0: 0xaa0f10ea7ab4118bb208f5f5, + limb1: 0x4773b62fc26c63b85ee53613, + limb2: 0xd537974a7cdc1022be53a074, + limb3: 0x2898ef4bddb080e659bbf8c }, w10: u384 { - limb0: 0xeb9e0332a363ab29c0c6ec9c, - limb1: 0x6c5d4d7b7b5ef8b1723af0af, - limb2: 0x58611666bcb97219223ef907, - limb3: 0x138e9b1577a7eae8d8481ed + limb0: 0x197fa158b545488e426cbf01, + limb1: 0x52fc1bee944314f6140c0ebd, + limb2: 0xfe1cd5d3e12aac6eebc4a32c, + limb3: 0xa36f0fdc2a4c17ce8d5d0c6 }, w11: u384 { - limb0: 0x86d2bd0c4697b9861b702ff3, - limb1: 0x55f78a04ec394dc18cdc4cc4, - limb2: 0x7c9c1ed43f5dfd3749de35f3, - limb3: 0x4cb249bfc5af312ecb00915 + limb0: 0xd2c41c0cf9dc7be039e94753, + limb1: 0x117f9cb0b4845287d5b0d11c, + limb2: 0xb016165f9cd347e6f7398324, + limb3: 0x197863c4057bf209b92ae1d4 } }, E12D { w0: u384 { - limb0: 0x83f3bfa5fa1f03d027863618, - limb1: 0x933415f4c004f59a757ccbab, - limb2: 0x3ebbad5c896221120545a44, - limb3: 0xab8f0255f1cafbb50aedf00 + limb0: 0xcca3ab9b573789dc6ef8d475, + limb1: 0x38a9f63e38c78281e5c4ad87, + limb2: 0x5e6748b62da71c1ac4dfd90d, + limb3: 0xac18ae8f04555513ac35865 }, w1: u384 { - limb0: 0x3ad3dc94913663d9d467fce4, - limb1: 0x4396c5ace5d31aa01a21d5fb, - limb2: 0x5b3979c766bb235fb728ab11, - limb3: 0x9665ee488817be89b0f639d + limb0: 0x9f96a44ea475215bb8513ecc, + limb1: 0xd090717e6e6f897901dfd7f6, + limb2: 0x69f5adc9f7bb2ae5c0803fe9, + limb3: 0x16eda2e54abef2535229b249 }, w2: u384 { - limb0: 0x8a7d53cdf4fa86536acde8c4, - limb1: 0x9330025c8e03619f2350994, - limb2: 0xfc5c6e80a0da82b55649cb01, - limb3: 0x128106879e1e9f4a4eefd6f2 + limb0: 0x43333249007bdd9fa21fb0c, + limb1: 0x2aeb3fcf82be8e375a879c6f, + limb2: 0x743b2c1eda2a2b27db150101, + limb3: 0x549339dc026aa4f00220499 }, w3: u384 { - limb0: 0x89a4ab5a907c1962d982db16, - limb1: 0x3a2a32df03a1f61d87fb92bd, - limb2: 0x61aa0f6759e39d1485138b08, - limb3: 0x118c7ff2de5e7eedfa0515ca + limb0: 0x90ea731b3601705d6a234162, + limb1: 0xe3aa9fea8773d6f8c07060db, + limb2: 0xabdecc58e9216415240ccd13, + limb3: 0xed4f27f840624b323d206bd }, w4: u384 { - limb0: 0x3907095a6ea1e9900741a63a, - limb1: 0xbbc254f4566c91440b6a140d, - limb2: 0x4e601b208fe395e0deaf3a8d, - limb3: 0x9c3432e07ed3c5a079f0e8f + limb0: 0x4a4d92a788ed63ab944a17a1, + limb1: 0xcf0091b7c4acbd5597d5d7d1, + limb2: 0xde220007c26314d78d7de26b, + limb3: 0x194dea69377c7d9f4b7b363e }, w5: u384 { - limb0: 0xbe0b9657bc8a941cd375f3e9, - limb1: 0x8c650bfe511cd4b7a6d5274f, - limb2: 0x45cb65665fc240f9a2f309d3, - limb3: 0x50e588d672132573683d358 + limb0: 0x41954480f9839fb695c00880, + limb1: 0x2d5f4b8954f60f369251e9b8, + limb2: 0x5f3f3ea9d976a70bd3f26ee0, + limb3: 0x10c997d6dbf7810a63e77920 }, w6: u384 { - limb0: 0x218875ceac4b4295ad48c7ab, - limb1: 0xe14fc95bee23a8ba0dd3e813, - limb2: 0x60cf060cda422d27b9331c4e, - limb3: 0x14dc2ad547332d91c149b33b + limb0: 0xb00900df4384240ec1edc1d0, + limb1: 0x535a2d537099a09c0ce5544a, + limb2: 0x8cff571d5ec670dae7e222f9, + limb3: 0x35eae2ed4e0bb480dc53bd3 }, w7: u384 { - limb0: 0x201a30fd50088ee7cd568779, - limb1: 0x7dbca81df86938c309215c0b, - limb2: 0xdf6b3106e89d2e075520367e, - limb3: 0x985360e52b7607a67dbb7e0 + limb0: 0x8f3a17d841f8ca94940dbbea, + limb1: 0xd1046fbb3fb130afd57edcf4, + limb2: 0xd52689b88af3a7b8450de6a, + limb3: 0x71201fa7ef06b260b860a88 }, w8: u384 { - limb0: 0x77925aecc9fe8a9e7751f9dc, - limb1: 0xf5b17d9b845fdd8e1cea2ef6, - limb2: 0xa7a7de08f00f753519485d39, - limb3: 0x4c29993fa6060fadff8d598 + limb0: 0x53994ad8591fd43d56c7a784, + limb1: 0xd5f8910c17ecc1aec86781a9, + limb2: 0x7df06cdb61c770d7d22146ef, + limb3: 0x2edab2de5730774bcc43003 }, w9: u384 { - limb0: 0xb2e3a782f8c9b33cf9a46b08, - limb1: 0xd5b61308445c355e866f11ec, - limb2: 0x18b7296a7417c78b44f25392, - limb3: 0xa31b579c23c9b59db0054b9 + limb0: 0x96da8f3ee13df33ea1137442, + limb1: 0xdc4aa80c88730971f87f48d, + limb2: 0xa0d108164692c40bf79c541f, + limb3: 0xfecb916e757b90dfdb31f4d }, w10: u384 { - limb0: 0x68167d011c6578e79039387, - limb1: 0xfacc32d417cccf148f26bdd9, - limb2: 0x88a620fa78d73b4ccf295718, - limb3: 0xdeb8104ad97d2c69ed17cbb + limb0: 0xa6004d282fa5a7276fc45f63, + limb1: 0xebd7e5f3470e98f4d7bfa54d, + limb2: 0x3e9118f4de2bc01cf6c08b96, + limb3: 0xa2a5dd020c74ea2a80996ab }, w11: u384 { - limb0: 0x1ae0e4110fea0f8c1d524979, - limb1: 0x5be13f6f52213018d68ae7b4, - limb2: 0xaaa11f179a9c8a0498636fd1, - limb3: 0x14fe2a7c56c2658a828fe10f + limb0: 0x15e11736d83c8100ca388139, + limb1: 0xe32b8711e63ebe91ab7c55e0, + limb2: 0xf8fa0b6335e49ab2b6676c41, + limb3: 0x79de740f719f79cca91408c } }, E12D { w0: u384 { - limb0: 0x65bdcb676840601ab827cd16, - limb1: 0x50b46f4f0220108826961bd9, - limb2: 0xdc5021f94a9a84ec61f949fc, - limb3: 0x102c3b09149213ba41077abf + limb0: 0x881bde69c9572f0f57de2768, + limb1: 0x46981161b79ac135dbb8cf77, + limb2: 0x8841fbb97fa4f045168f0d0c, + limb3: 0x634b6561fbf2348942c5650 }, w1: u384 { - limb0: 0xaa3a1d6a45717a7a5c000fad, - limb1: 0x7987467fc516261535eaf5c, - limb2: 0x56e9b0602eacf2a400c987d8, - limb3: 0xac229145b0a03167b1f37f1 + limb0: 0x7dcf964b10d7dc72c41f49c9, + limb1: 0x3a00f4bfa0781a12180dbd51, + limb2: 0x74ef7613027625af8bd8775a, + limb3: 0x110110ebb35ce6e83104000c }, w2: u384 { - limb0: 0x47b5e5890b3447680cd37bc, - limb1: 0x6df3be7fa01231c7277c3bc8, - limb2: 0xfc477fcef1dff2d324881ba4, - limb3: 0x3e9240eac496fc617f9a5d + limb0: 0x36ae887ab0038a1666d861dc, + limb1: 0x8935bfdcad1a9b520efd311, + limb2: 0xa40c47d8a588003f1a9449dc, + limb3: 0x9366d8db0a14d758b859eed }, w3: u384 { - limb0: 0xb46e71744c2eb75112c26b33, - limb1: 0x1956353c83bf9a65a988f01d, - limb2: 0xb54497fdf8d32355a9f3f1da, - limb3: 0x1793c6f36faf52e3cae26226 + limb0: 0x94744feac95248f5e5fe8716, + limb1: 0x83bec3dbaa9d3958c5360005, + limb2: 0x1cb32938878402bc31374320, + limb3: 0x5f102de79d5b917bf3770c6 }, w4: u384 { - limb0: 0x206f58ede6394030be82680a, - limb1: 0x34a8c88e8d014d20a4896f24, - limb2: 0x392a28e4e3dbb04d4abc3157, - limb3: 0x152a34a94d9f41a75eb2517c + limb0: 0x6df85236c54d08c9e01d7c49, + limb1: 0xdb282cc69e0ae095f0687977, + limb2: 0x204e2e9aa42c3d85449cdfba, + limb3: 0x132a68f13a25b2bad029a9dd }, w5: u384 { - limb0: 0x5d76cfabda842344072524a0, - limb1: 0xfe2336d2198163bce60555c, - limb2: 0xb7bae171cc1f78173e3e192c, - limb3: 0xe154e671060fa259cf377e7 + limb0: 0x95264aee44b2f2fe3bcd0f43, + limb1: 0x9b79efdb41d907f1dd78274a, + limb2: 0x2c20b91aa226f1a741075feb, + limb3: 0xe31e1912b5f20044da40635 }, w6: u384 { - limb0: 0x154667603c774383c9aa60c6, - limb1: 0xa72a8e82eef4225dcd8d6571, - limb2: 0x2f0d2797e3a5059cb0c2bf1, - limb3: 0x12febf4370d63c270de79ea8 + limb0: 0xcd8e50839d711b1f947217f9, + limb1: 0x5317f0b7dd7215548951e63c, + limb2: 0xf238dddadf780ba322cbc69f, + limb3: 0x918b5cabbc825881582ff5d }, w7: u384 { - limb0: 0x92f230cfc06a66868ddc8231, - limb1: 0x73d031acfbf81a7e84a3e904, - limb2: 0x27324163ff91564b238f9207, - limb3: 0x9b15747952338fbb78d2d70 + limb0: 0xf296b6f4bdadcd3887e3c9ba, + limb1: 0x938fa50ad38ca7e253fcdf2f, + limb2: 0x1fedb03426901bdafdfae547, + limb3: 0x33bd7a802e6dafe8731bf4a }, w8: u384 { - limb0: 0x82752cd8cd0214defffc1410, - limb1: 0x40574521bf1a3172ea9812f, - limb2: 0x997997bd1e46f85caea26cc9, - limb3: 0xc6d5744cf83921c95ff644b + limb0: 0x65c68f3122b4f9692575edca, + limb1: 0xf144c423abb72cd5867bbf4d, + limb2: 0x69be1886056f086776f9fe20, + limb3: 0x11eafeb7ca14afb4370fbede }, w9: u384 { - limb0: 0x4a646c206a6fcce37fa8642f, - limb1: 0x6d6a80d444830cca3d37fd74, - limb2: 0xccba014fe86a21caa23746f3, - limb3: 0x634a23a6e6278206880cec5 + limb0: 0x2438ca97f5b5564ce6917781, + limb1: 0x1c3e3dd9e29b879cb6a4537c, + limb2: 0x9f8f087b5eb40f73bb7f1d73, + limb3: 0xa8a57d916912aa469ced9e8 }, w10: u384 { - limb0: 0x19c850fa58d42a92a8bbd660, - limb1: 0x6c225ca97ec597314988d9f1, - limb2: 0xf8aec81360689bc5aecb75a6, - limb3: 0x1597b4f34e072d4f03465377 + limb0: 0xa369faa9b8bcf0c090ae7022, + limb1: 0x18eade62e6e39a3c9b3ed60f, + limb2: 0x705e283785bde4b14d6df7bf, + limb3: 0x9991d9e0a73f87400e6dbe3 }, w11: u384 { - limb0: 0x4d530480c52afe715022790, - limb1: 0x1c736368a1f837e76e2315f9, - limb2: 0x561de549d8aa08e1aa2f1318, - limb3: 0x8cf00cc2c3f3f81d9f4d396 + limb0: 0x41585dda44b68ab870a5ca3d, + limb1: 0x4c8de608db6854704c2fc78c, + limb2: 0x2d9119f1c1a1d2c8ebb71cf9, + limb3: 0x19fc499e173681d26c713aed } }, E12D { w0: u384 { - limb0: 0x8d6284d9c1a9218510ad8b35, - limb1: 0x78f0e59c430bcd1bdf2656a1, - limb2: 0x355f70df944952ba583dd78, - limb3: 0x1976486bf7a98b6fbb099c9e + limb0: 0x3d4fab7f1eec905380d7383, + limb1: 0x50d6606118a7091eaf7ad8a6, + limb2: 0xdf8a9431113f3fbcaacda50f, + limb3: 0x1033a30fc72ffc5e80c77f5 }, w1: u384 { - limb0: 0x4ff34f0df813b0decd2cf1e5, - limb1: 0x9e617344fb8a53a132600f36, - limb2: 0x3055a61d0a907c5bb46e9396, - limb3: 0x18259a60f3e5086b409b51ca + limb0: 0xbfd7dc81619cccee6b62b0a4, + limb1: 0x29068e6b11917e19b7a74c1e, + limb2: 0xe54e1c092abea90621bc50dd, + limb3: 0x9783dba050195fb6ac0ee1e }, w2: u384 { - limb0: 0x69d333c59f7d452faaf128c5, - limb1: 0x90df74f5cbedeb2a3f443531, - limb2: 0x27a97d189b9a868fc82f8099, - limb3: 0xe0be3338458fdfd7c6546c2 + limb0: 0x9e98c114c90ca0812b44cced, + limb1: 0xe92596b921606a567b2409ff, + limb2: 0x2fcd1db06208bbd35c98e795, + limb3: 0x20b8baab1403ef5ff1ed990 }, w3: u384 { - limb0: 0xc62af252f9b20c94622d53e3, - limb1: 0x17dec3ca3c48489b45a088a7, - limb2: 0x4bd931722d6ef059dd2698c1, - limb3: 0x6116879a288551198139908 + limb0: 0xc10a2c207bcc7207594f7f43, + limb1: 0x665ce0372be520c13d063ef9, + limb2: 0xc2e7e81a38b69355da9d728d, + limb3: 0xf0291a0efa4c27bac28bce5 }, w4: u384 { - limb0: 0xe4d3c223f994b0023fa7462e, - limb1: 0x68ea049e4c57c57c14cb04b0, - limb2: 0xc96266d53e11d39297d2702f, - limb3: 0x1305a8e7d0989fe029f6a31b + limb0: 0xb71d822f7e35ab570af8ea4a, + limb1: 0xf3202846e1a7f5a4f6688697, + limb2: 0xbc0e4e9b38b37b9dac8f3ca, + limb3: 0xe8b085f74f00bc3fc62b92e }, w5: u384 { - limb0: 0xf195a6263aa744a85af8854f, - limb1: 0x4c11d53b6be85ef4350951d9, - limb2: 0xd58ce23ce0e81b935ed0252c, - limb3: 0x16a2a513da60fd72ffe4226d + limb0: 0x2ea8047d045f212dbb9a458b, + limb1: 0x88e6c5194d266120e17f84d6, + limb2: 0x90df7fb5286dc16395695d52, + limb3: 0xa20a35ee605204218631fba }, w6: u384 { - limb0: 0x2191b16c598351b3a4190298, - limb1: 0x15013fa34a0bca2282b712dc, - limb2: 0x90abf9d7e153554d0fd4607c, - limb3: 0xd74bfdbe1a66adb30e2adcb + limb0: 0xe8e8c8ef066a7497eea2627f, + limb1: 0x63347682a942c56b3e42ee58, + limb2: 0x9c9add5889e21d887a808d8c, + limb3: 0x5f6ab96c69ff8eaf8130581 }, w7: u384 { - limb0: 0x41ac157c2f44e85fe9e7ead2, - limb1: 0xc543b726d34273fc0aba0db9, - limb2: 0x5330a9020e39c3e112cab6d1, - limb3: 0x65a091565cc6a221cbbdbbc + limb0: 0xa252bb4aa5b6f8da7ccd9cc8, + limb1: 0xf24310d1ad15011ddbb92097, + limb2: 0xee6fa692bfc5684719562cfd, + limb3: 0x13df59b3371521359a5d2256 }, w8: u384 { - limb0: 0xbdf399bdfce877a4e4136214, - limb1: 0x134b5a0c57d1d402d29a3e47, - limb2: 0x6dfbb98f6ae0b1768960e3f3, - limb3: 0x7f91b79f7397394fccc0be9 + limb0: 0x10ae8a37f343067f95a2d190, + limb1: 0xdffd58f908815a6fcedc0e67, + limb2: 0x26c3463913954da1474a6d88, + limb3: 0x128761be8b9e4e617f874c75 }, w9: u384 { - limb0: 0xa2b7e3c79cc0669db1374513, - limb1: 0x6076eddea43d55f6c7b130db, - limb2: 0x9074ae88ee8ac540b5f5afe6, - limb3: 0x1120e0ee0e890b8e401bcfb1 + limb0: 0x7549dfbe49e13f05f633e170, + limb1: 0x7c80bb404ebcc168bdf72086, + limb2: 0x78c112da43edce0fafb94524, + limb3: 0x952afdc9271fa9a55431b54 }, w10: u384 { - limb0: 0xac0e1da67c424fdd4f1427b1, - limb1: 0x88685d2d2575c1b8831869ff, - limb2: 0xbbc50c24875e962202e9a592, - limb3: 0xece89f4b4d9bde11a2e4f3e + limb0: 0x59335b33fcddcf4e0687cd5, + limb1: 0x1cb9c04e349ab716ff559e5c, + limb2: 0x1434db167b206fcca9de5ff0, + limb3: 0x4d26fcd3277406376876fe }, w11: u384 { - limb0: 0xfee392ff5c48c36f57d040b7, - limb1: 0xe210be72645e877590b7192, - limb2: 0x9efbbbb65e5036083e7c127a, - limb3: 0x5b759cffd16fd5631501056 + limb0: 0xc3c02dbc72f194031e241dd7, + limb1: 0xbc607df0f7e7cdb0be687e26, + limb2: 0xcfdf9345b7c89733a8185b9d, + limb3: 0x951630eda9ce29d44c6cb9a } }, E12D { w0: u384 { - limb0: 0x87cc8e73d9617d38ec1c63e8, - limb1: 0x8dbd5c64a3a233c05b9fe777, - limb2: 0xfadbb8508bf7b88f6988fa10, - limb3: 0xa3cb16e4a1d252e1ec20132 + limb0: 0x7795c8f6d8199bf9b1b9e2b6, + limb1: 0xa7146e712cd4f60c196cd5fb, + limb2: 0x8538974939b8ca9e164240e3, + limb3: 0xc8ccc585ff767afdd56da4a }, w1: u384 { - limb0: 0x456120a8a29cb83d015f482b, - limb1: 0x65e50cb2a09d1d5919c34c6d, - limb2: 0x8b5b7e402c96b43c9e3df8d9, - limb3: 0x12f4378ef4c0a61381a978ed + limb0: 0x848a616117708616beedfa99, + limb1: 0xbe3711376afb6a102cd49b16, + limb2: 0xc8988d23b93263ffb65cf804, + limb3: 0x427f45d4151b37a5c88d97c }, w2: u384 { - limb0: 0xebfb93b4412c0abf769c3e5b, - limb1: 0xcdbfee756fb8341ba06b7ae4, - limb2: 0x2e5abb8a75362ab9fca91cbe, - limb3: 0x156154a0357f83b4ada4fab0 + limb0: 0x79ab3b038012688a8481c3a1, + limb1: 0x2ae734fbef2954493c54d54d, + limb2: 0xb6176e8cec0912db250b08b0, + limb3: 0x2915b090de6ed24f5f091fb }, w3: u384 { - limb0: 0x2e26225e2fbd8fd2da57307b, - limb1: 0x6dd210255dd354bf4ca57a05, - limb2: 0x5b6e12cdef423a9e6a089062, - limb3: 0x16b15b3a8d99a4d2d822b4d9 + limb0: 0x71512c13ba4b283251f8d13d, + limb1: 0x8cc513a7f4afccae0f95a0b6, + limb2: 0xde6d0ff508ed8c85aaaf0d5f, + limb3: 0x601722395f0ed254ab52b7d }, w4: u384 { - limb0: 0x31a5b3d35deb3a6ed4b4a78d, - limb1: 0x5a70535c5c5d037c82c988c0, - limb2: 0xea6003fd5607dd4f037095a0, - limb3: 0x4faf594f89beceb6643762b + limb0: 0xecf06e472bf7a0a731b8e47, + limb1: 0x8ebbe0fcc7d2640d75cc2164, + limb2: 0x70fd31a625ac8a9760996091, + limb3: 0x184d3efa60a05c43f2b1db49 }, w5: u384 { - limb0: 0x56d340dd1d9753c2b2e0b8ba, - limb1: 0xd429f8268ca127c686c733ee, - limb2: 0x3dc68f3b6e544531ad303e77, - limb3: 0x1619237bf81adb1b854022e0 + limb0: 0x77f76b05184f04da90d263e6, + limb1: 0xfdba03d23e1c94a9f96a9c0a, + limb2: 0x4fafeff9689f30880388c0e8, + limb3: 0x305c7e41ae24c65257eaef1 }, w6: u384 { - limb0: 0x2fe3834557502dda52e20e35, - limb1: 0xc0880144b80e30b4d5fa3c0b, - limb2: 0x218ebb6b88e7248f0a28c0a8, - limb3: 0x188aa68280793a0263659762 + limb0: 0x71bd0bae7d092f00bdc66953, + limb1: 0x7de0f83e9221a7e4c53fd3d5, + limb2: 0xb98265106e102bd3d0a4e369, + limb3: 0xc0d95b39ece8958f3c5d658 }, w7: u384 { - limb0: 0x7c3dc51ae55b0ebe49c6391f, - limb1: 0x4e0449a767cc2cc1ea4374f6, - limb2: 0xfe05b22134b945d829df2e47, - limb3: 0xd405dd40916f687242073ea + limb0: 0xe00914bc2bc882a97fd3d276, + limb1: 0x576aed9d8d7db9c897a4eb87, + limb2: 0x558c2db577905d3d32b4805d, + limb3: 0x393addadf028c3b3f2b33a3 }, w8: u384 { - limb0: 0xb9ff5d9f23caefda5f014272, - limb1: 0xca96d08da37c913934182c9d, - limb2: 0x6042734ce65d10334d3188e6, - limb3: 0x1284f66db47931b96cc29351 + limb0: 0xb5bb2d4c7e234eedd0ba3984, + limb1: 0xa4b4daadeb29bfcefa3cf2a0, + limb2: 0x808827a7b199286ab46d2fe0, + limb3: 0x94387bf5df9090b24f48cff }, w9: u384 { - limb0: 0x2552101c3a694ae4eab34791, - limb1: 0xf4f718babac746e4498c140b, - limb2: 0xee73abd6dcac688669d26ced, - limb3: 0x15c629127108321ced922392 + limb0: 0x640e3b2f49e5ca7b666a24c3, + limb1: 0x623eabfc0226c6a6c42e4525, + limb2: 0xb2f73296207f8de782134eb7, + limb3: 0x9bc6f8da7d87bb6eb4e374f }, w10: u384 { - limb0: 0xd44d2dcf924e1bb542fd1e4a, - limb1: 0x4732fdb90e21f52ca78cc64, - limb2: 0x284279fb626caed3da8d342c, - limb3: 0xba5ce35105a3664c5e360ad + limb0: 0x6eca873e66cf3c658fa00a81, + limb1: 0x1e14571a8d2ca8d4c9e8dd10, + limb2: 0xb9576cc641f6ec670d53522d, + limb3: 0x6bba9c06e3002c4469264fc }, w11: u384 { - limb0: 0x192ac23cbb1db74ac3e256e5, - limb1: 0xaf71edee696536df2d71e20, - limb2: 0x4d92542c0834baf0e801edaa, - limb3: 0xed9b8c235e6f0d05ffce76 + limb0: 0x36f878519bf9cc0ad6142d97, + limb1: 0x149c4f0f877368fecfb19388, + limb2: 0xea9ed899f5e5d831dc91b76a, + limb3: 0x112bcdf8af0cc9b954851076 } }, ] .span(), big_Q: array![ u384 { - limb0: 0xbc647949782b1d1ac49db81b, - limb1: 0xca1912d56b59b203fc670a3f, - limb2: 0x40a2f2f9f3ef675ec6f3cbc6, - limb3: 0x7e614eee317093613d5d8df + limb0: 0x118e401377d707f112547232, + limb1: 0x9724e2680da8febf0afbabd0, + limb2: 0xd4ab49d36423636661b238e, + limb3: 0x19d2597eeb3d38904e217f3a }, u384 { - limb0: 0xe3eb79f309ae027a4eeaa76, - limb1: 0xbc75b1617496ef9b1da0547, - limb2: 0xde98eb5cd6e07d60770fd206, - limb3: 0x652b1762c2bc97983b69a6c + limb0: 0x171f1f075ec89b56489441c0, + limb1: 0x5bba0ec87eac2f517b0ad587, + limb2: 0xd51ff69f3f73aef1e3df837c, + limb3: 0x802c7dec838bfe5bcdbc604 }, u384 { - limb0: 0x18770042b9f9cf4d7208f005, - limb1: 0xafb6a8f26be8d1c15cd1d3aa, - limb2: 0xdc330908ec735c8c18c02537, - limb3: 0x9ca8e81a3af3e55ca47802 + limb0: 0x743a242575f29bfd680b08af, + limb1: 0xd718a230c95d1a0e61037cda, + limb2: 0x8fb08d590e7ab2eeeab27958, + limb3: 0x148731247e8ae1edd38f321a }, u384 { - limb0: 0xa85e8372cd6eb511532f17e0, - limb1: 0x5853cbcfbd5b1392b26ed69e, - limb2: 0x59be7ed7d5dff1cdb0cbd373, - limb3: 0x9f73c845de00e15052400b4 + limb0: 0xa7cdaed75cde526fd0092f62, + limb1: 0x3454226d1ced0d616c0edcea, + limb2: 0x3caacb72dc44869eb6dafa65, + limb3: 0x3e5e81bbecf8150457f8c9d }, u384 { - limb0: 0xdeb2e3e60abc5484e76df002, - limb1: 0xafed8100b6f5b01faadfccff, - limb2: 0x521f6b5d4f7423ab2e3e8634, - limb3: 0x14347c9fb622bdd10ffc0522 + limb0: 0x1449ca09d196202ac5b7faa3, + limb1: 0xcd27f932a68c37dd2deb211c, + limb2: 0xed0cde73530c4920822c8355, + limb3: 0x126cefecdc1ecd73af3c2e39 }, u384 { - limb0: 0x248c57f02c2f269b0c20651f, - limb1: 0x2d89b4a35a60207ebd1a624c, - limb2: 0xa2bd75f4c39d1e02a1d66986, - limb3: 0x946aac2921c84b8b893add6 + limb0: 0x2014db6405e5363005af611, + limb1: 0xac1f9d989f7105fd4748e4f3, + limb2: 0x1df4a3c87e2bb8de328302ff, + limb3: 0x2970f491bb156029800ba29 }, u384 { - limb0: 0xc85c5b31c69da88986cee7fa, - limb1: 0x4ddea7ed1be11696f160efca, - limb2: 0xd9033f8f3ed9d56ff9f3c1a6, - limb3: 0x1310b452ac2589fd038d37eb + limb0: 0xea544e4cdb7b887f26bba03f, + limb1: 0x9096aba89e386d578c1e268d, + limb2: 0x7fd347c4b89f9bb57a6578, + limb3: 0x7b7992f9ca47dfac9c81e72 }, u384 { - limb0: 0x740e656f979c6b1cfdcc0e5b, - limb1: 0x6b20e39104820a4912b1e0f9, - limb2: 0xa0fa4cb5bcc16d8e20a056c5, - limb3: 0xbc9101d56f6345c75f945b2 + limb0: 0xa7e8dfe1be0ab5a0d4d98955, + limb1: 0xbc932d648760b8c4673ad790, + limb2: 0xe9e29b5b33984b229b1efc6d, + limb3: 0x808af6bc2792374c28fa40d }, u384 { - limb0: 0x5ff096c3891dc0829bc6655, - limb1: 0x38392e0a319271b7aedfd861, - limb2: 0xa64848e043ddfd28201ac511, - limb3: 0x13bf597d90d4d41342ca830f + limb0: 0x770d2aabbad353125b8c4d5f, + limb1: 0x933c911f438695c7b436209b, + limb2: 0x387518cc1ea409d04f38b310, + limb3: 0x11ebaff6e40c2776316c1ab4 }, u384 { - limb0: 0x9f9609c646e0addb835498dc, - limb1: 0x384773c34eec4b32cdf9f4a3, - limb2: 0x3a49c2ef0a819a0d1e0888e8, - limb3: 0x8aa9f47d401e4dd2619529e + limb0: 0xd5cbba8e3ab6e7fb00bafcb3, + limb1: 0xfba4b052d0e00701fb5ab2a9, + limb2: 0x53e1bdb98b109c7760792361, + limb3: 0x988bff48e6cb3c165414c74 }, u384 { - limb0: 0xf92ada6d7c88d9d0ba061ffa, - limb1: 0x1521c45303421b3c0d668833, - limb2: 0xe151c103896172c88331de9, - limb3: 0xb5ed944c1dbf3510f53aea9 + limb0: 0xb8e4db19e5e275a5b33a3cc, + limb1: 0xb14ed1a4dda2ab7f481080cf, + limb2: 0xfbe9a2a13bd23855f8326fa, + limb3: 0xc2d11fb7f379eb41bb485c }, u384 { - limb0: 0xb5bece15cd44d699d29511a9, - limb1: 0x564073b3c4442ce0b0f3d0ad, - limb2: 0x36f3503775117826393be8d7, - limb3: 0x170628fe6e47b0c6fa7fffa7 + limb0: 0xc7700975d5b08afec7fa0107, + limb1: 0xd973a31d8fee09132852686, + limb2: 0x7921cfad71d18550776dd0dc, + limb3: 0xe334afdd892b6b38e94d2e8 }, u384 { - limb0: 0x65f7ee27c0b68b65c6024e2c, - limb1: 0xc5ac28ea19daa03ddb10f95b, - limb2: 0x3cab3eb003cf8aab66653f6c, - limb3: 0xf156659b852e87c1818d78d + limb0: 0x1faa97839ad5bf83703f7729, + limb1: 0xf45d5b8cb2caab03b10268d5, + limb2: 0x763c9a8c9545677c17fe7b69, + limb3: 0xb9416d06c18d5533b9274ee }, u384 { - limb0: 0x4bb85ea63e77f0dfa1407ead, - limb1: 0xe2af8c38b4e66524f7783579, - limb2: 0x468f070cb4d5936c1995b9a6, - limb3: 0x1031f4864f8ed5d2ad5e28d3 + limb0: 0x83a228871e1076daade61a14, + limb1: 0x8538a808cb48d52efee3604a, + limb2: 0x8baffd6e935bf66cfb3bb0b4, + limb3: 0x11ffdccbe46066885113c52d }, u384 { - limb0: 0x672812aa3085d81c82c8ea49, - limb1: 0x90c321ca3f577de2edb845a4, - limb2: 0x25b4847abec98647dfea1fb6, - limb3: 0x5536fb4228cee145fd13b32 + limb0: 0xb1d629a0c3dd6f7ce67f71a9, + limb1: 0x2aaff5c837400cec9712c452, + limb2: 0xb720ef82575a732227bd3ee7, + limb3: 0xcef5df68cd9bc48990e2383 }, u384 { - limb0: 0xa6dbb05031b44632a85f0e9f, - limb1: 0xf389bed2d74c46c790b90002, - limb2: 0x62a7fbed686230b0fec6171b, - limb3: 0x20296b07c942b8806904236 + limb0: 0xb597ceaecea6b3431bc99622, + limb1: 0xfd2e23197a4ccec6ce358b33, + limb2: 0x634fe9a259a2b0161b71e567, + limb3: 0x131be3152fc2a6ee7d893283 }, u384 { - limb0: 0xf9e2d763eb12d499ad5054b8, - limb1: 0x9da322bda107999c96ac2cdc, - limb2: 0x9eea811495d4c4931cb2a1a3, - limb3: 0xa40274f6e58cf9854e54ddb + limb0: 0x829524039d55838a589a8ea5, + limb1: 0x8902cb47d6ce6f60eb3ab6c, + limb2: 0x31015c307db9fa84e01ec8c1, + limb3: 0x11eecc090586ad9a458f41f9 }, u384 { - limb0: 0x7daabf1868be96556b87424a, - limb1: 0xdb7f75f8e44c4220ae3f31ac, - limb2: 0x1a6843593a63049f623fa945, - limb3: 0x23920bc12afbe768554460b + limb0: 0x509e9718fa93e11b17d13ab3, + limb1: 0x93832511f4e73c72b2960a98, + limb2: 0x4f0eaee404ef5da1e3ba6c7d, + limb3: 0x19bb75d23deae5f123f1675e }, u384 { - limb0: 0x316b0f49df02e14ba58cad89, - limb1: 0xe856dcd6db2fcaeefb037318, - limb2: 0x1aa6a0da3dcf75038c61fca3, - limb3: 0x266c51c7997c06f478f82ac + limb0: 0xf2d2d7c07d6748314ab02a9, + limb1: 0xea4df545f5cdddd6d78182a9, + limb2: 0x8acf1e5417c68dea88b381c3, + limb3: 0x86c47323d784dba9ad5b101 }, u384 { - limb0: 0x9b0a704c4e2631c7c39e4e5d, - limb1: 0x6ce1ed63e7e5c70534b9de2d, - limb2: 0xcef4e37523daed21964bfa91, - limb3: 0x17eccd9074b98482258f8c93 + limb0: 0x338d8e40e9fda52427cdfd77, + limb1: 0x6960c19d3b0039baa426f701, + limb2: 0x5378022d76ce9e32deac6c6a, + limb3: 0x13a96ffd043f934f6f500f5 }, u384 { - limb0: 0x7286d2fbf514a2182b0722d9, - limb1: 0xb5f3705c13380f116759a0d0, - limb2: 0xd7824611cc69a15ba46e6d87, - limb3: 0x16eeb945fcaca4e491962ef5 + limb0: 0x5fc15e5a81b49a4f2ca1bd07, + limb1: 0x162a066e714efd6dc6a2847c, + limb2: 0x5bd88b86e373b23163aaf64, + limb3: 0x19a48e9a731c3e9bce419e28 }, u384 { - limb0: 0xf07bca1f6978364866d6b06, - limb1: 0x3e58be9df3736f2d63df8960, - limb2: 0x6ec90bfa1315823aabf1fe3f, - limb3: 0x103e1bd764b3ee8d74d3d04e + limb0: 0x73cfcec41e988aeab5a0df56, + limb1: 0x6831f9e7ae3c74cb2c052e17, + limb2: 0x8961b232e701ec9344e17547, + limb3: 0x45e52338dc63e0e7bb6041a }, u384 { - limb0: 0xbfd2122c99cbb8cc8f5fda47, - limb1: 0x5a0b2587fb9480c034da59ef, - limb2: 0xc912b9c571b6df5af1a291b, - limb3: 0x14f44270c04afc2fcee072a4 + limb0: 0xf6720738bce821e23e96db3b, + limb1: 0xd9897454b58f16e45d3f98c6, + limb2: 0xe965a05553aa7690c4429c0b, + limb3: 0xea6158c3c0b3b2b75c12d4d }, u384 { - limb0: 0xa0095c4f02892a7f81421b19, - limb1: 0xe86befa3207861ad290712e5, - limb2: 0xf97171c0423798572e3a741a, - limb3: 0x2d0bae320d6c61295c0663d + limb0: 0x6fc7931f345f667d9ddcb54c, + limb1: 0xcd49f839361272a8e8ce16a8, + limb2: 0x26dfc3caf0c750dfa3b2d1e5, + limb3: 0x147fca61a5678199914abc5c }, u384 { - limb0: 0x575b190f6aad1a46a5f1096f, - limb1: 0x235702567ceb41d6f477795e, - limb2: 0x69f1d0f0a2fdcbcc7fc795f9, - limb3: 0x8b0bdfe77190ac514ff9d3c + limb0: 0x62c88210f88492914acad32b, + limb1: 0xd311baa896b7315739190a47, + limb2: 0xcd03a13a244de75748aaee4b, + limb3: 0x6b6ac62837ab017e4ec0a6 }, u384 { - limb0: 0x9f6ea6a2a752e0cb6b3dbd0f, - limb1: 0xbfbc2824142a578450c835a6, - limb2: 0xce5c8e0340bfdd9d1c179357, - limb3: 0x10e18dd4a7540c06eecc1561 + limb0: 0x1fd7c535b51d45585c67758b, + limb1: 0x6f99901f92f63ec75a1d8132, + limb2: 0xebf1ac0daf44a2dba60330e6, + limb3: 0x90b57a420f80630b683c5b7 }, u384 { - limb0: 0x3a50b960411085d4f75a12dd, - limb1: 0x342b420146986c4869a3c54, - limb2: 0x31f0288cca3496e656b0f203, - limb3: 0x17eb27ee2cbff047baeea2e2 + limb0: 0x2ff65a3aae87aa715cf36203, + limb1: 0x37a8541891faddb66316127a, + limb2: 0xf0de5fe67971ffae780bf019, + limb3: 0x6708df91b7ca03e3a6d76a8 }, u384 { - limb0: 0x8a5635399003a6a488b2c9b5, - limb1: 0x1f890c5d4edb6892940d2962, - limb2: 0xa1e0ae46404ef0f41e6b234b, - limb3: 0x5c35293120932851625171e + limb0: 0xd7120130892a54daca3f910d, + limb1: 0x11583f85008fc30c17ec5608, + limb2: 0x83f2620866c96a195829ce0e, + limb3: 0x5934094c25aed7d6be700d3 }, u384 { - limb0: 0x54d1ac641cf5bc37d72ff8ed, - limb1: 0xa2ba312ac93bf889ac050aa0, - limb2: 0x13091d540f8c16e97284cedf, - limb3: 0x14687011333741186c683225 + limb0: 0xcfbae6ffed1c72ed4e998faf, + limb1: 0xa907bbb3668e178e21ad9fae, + limb2: 0x57bfb6fbcf3f951f8cfc5de9, + limb3: 0x140822d486c0b834f65f6ac2 }, u384 { - limb0: 0xdbdf4836759e4849356a7d4d, - limb1: 0x885ff250c2a8ef1311c38aba, - limb2: 0xb20ebdf7e6b0e7782ed38484, - limb3: 0xbb0627099da932b2e280991 + limb0: 0x60789a3f779ecd714f71d74, + limb1: 0xd12a0e6c4ced893c6e93ee75, + limb2: 0xcdb5776896a666bf6d81fdfd, + limb3: 0x5d1d9b6cad3c91dc62a82c }, u384 { - limb0: 0xc953c6890d6eec452e342eea, - limb1: 0x7c004ff0879bb10ef2ff1596, - limb2: 0x100757cc274535eeb629ab7a, - limb3: 0x181ad413ce89bcc9fc083dbb + limb0: 0xb1e40dcac918a2d42e410ad7, + limb1: 0x4dea56ff231a56c12e264ce, + limb2: 0xfd7f53d3a63993cb4b607e18, + limb3: 0xe391f7ecd1db0588e3e118f }, u384 { - limb0: 0x21422584ed6220b0be7cb275, - limb1: 0xe781857d861b774d64cb2ac0, - limb2: 0x157e2b33e993987c588fbd24, - limb3: 0xb78fe706a9f29e75cfc8992 + limb0: 0x7b9cb771b3d82a2bf9855d74, + limb1: 0xe426519f5332146fcfd0d523, + limb2: 0x1c65b1c2a3b66919727c7099, + limb3: 0x1168cb16019beb095c9fe065 }, u384 { - limb0: 0x45fa8c4ed1feb3d225484a6d, - limb1: 0xe3097f7fb1f11aed6686a664, - limb2: 0xf714bc4a955c01e561d1cf94, - limb3: 0x15f2695949a7e5326b9d25a2 + limb0: 0xf883bb4482bcdbb53ad7ecf5, + limb1: 0x6ba8ed9c163e777f5cd6d835, + limb2: 0xe66bb45d284e4db4db324813, + limb3: 0xbea8bc6499f6b1a04982b1f }, u384 { - limb0: 0x6595ebe11afeca0f3cf26f2d, - limb1: 0xc8f531d3526114d02d6b68f8, - limb2: 0x705a5b7cd88d99a7beab314, - limb3: 0x190b87b7fed1ec9917e0d077 + limb0: 0x720379c206f5b3788486e88e, + limb1: 0xd1c73a1a9dfd5aad7ef250f, + limb2: 0xc4d046032e75f0033a1a41df, + limb3: 0x117132e8eda315415888052c }, u384 { - limb0: 0xa446e53899d50bb0e33da4d5, - limb1: 0x184391bddef3a089080985b6, - limb2: 0x1946ab9e45f00699e2e5a79a, - limb3: 0x128e505b2007447148f2427e + limb0: 0xc704f84fb0da0248ddcdc565, + limb1: 0x878a264e541dc906054e65b7, + limb2: 0x3dda82c9db159314ca2bb1da, + limb3: 0xeacc7202c0784d18704def2 }, u384 { - limb0: 0xddede5fb22e9929740c1af21, - limb1: 0xc49722ea30de4c9fdaf99b12, - limb2: 0x53b25d5c8d8ea5ebc9fcb43d, - limb3: 0x12a9e8863b59dc7cd5eb5c79 + limb0: 0xfa833ea20262504a64e265ac, + limb1: 0x2debf207fde0d5708fd21299, + limb2: 0xf789a770da0b0ae52664552e, + limb3: 0xb729c6e00d5089092e57eca }, u384 { - limb0: 0x55d4a27473b99404923d872c, - limb1: 0x4a96d89563b7471d263b5985, - limb2: 0xc48029a61ffb0c632e3c8612, - limb3: 0x173a4a79a560dfe3941c47a2 + limb0: 0xc89056ec9b9588e7fd5b74fa, + limb1: 0x60886dae4808a67d92e440ab, + limb2: 0xb20b05758f21244b220cf288, + limb3: 0xa5f0904e99c4e02ae3b1357 }, u384 { - limb0: 0x17ac64147bb1c7ed5bb295e8, - limb1: 0x36c7bfd1fd7359fdc9e2d1f4, - limb2: 0xf4076ae1b85fde54320db163, - limb3: 0x16a2aa0f84e9f4a39028b63 + limb0: 0x9bfd7adfab5b3a7839187840, + limb1: 0xf1024685c53be4c3f3e5a224, + limb2: 0x3bf0ce14a3b14a45acfa0ee6, + limb3: 0x14532ccbfaa37667f8c4a757 }, u384 { - limb0: 0x4a546b120bbafd68ecda9fab, - limb1: 0x1039939fb626963f83d7e1e2, - limb2: 0x2d6bcc8530e5d449537cc036, - limb3: 0x103c47cca1b0c27d98ec1183 + limb0: 0x718cee9aa865bc61639d7271, + limb1: 0x2378269cb80f1a11a3349986, + limb2: 0xfdaa096c4b3b3b6464cb957e, + limb3: 0x17886d2145376c01b8287b2 }, u384 { - limb0: 0xcb71c921526b0f1b6c70e51c, - limb1: 0x6f7ff79fa2c6b23a208739a9, - limb2: 0x615436faaba59bafeccad154, - limb3: 0x1098ee6dcdbc59145582cc1e + limb0: 0xfc29219c280e03de6b6c3cd1, + limb1: 0x5992564d263f34dc0cfb7be5, + limb2: 0xe700a219f48b84c4a71f9378, + limb3: 0x1284a8bdb9ca705934ab15fc }, u384 { - limb0: 0x6e49d090712dd4d33c431a2, - limb1: 0x15ba3b7245377aa43df88572, - limb2: 0xd05e1ea9e865783f77126b23, - limb3: 0x1aabcbed0321c635161b3b0 + limb0: 0xcc5d09ccffaa55d8b4e61f48, + limb1: 0x4c4b74571cd256f4393219c2, + limb2: 0xde39a5ea0977b5b83cb75fbf, + limb3: 0x752c0e4ed2cb68ea9f9c0a3 }, u384 { - limb0: 0x9a45ad9091d4e33006bca28b, - limb1: 0x931854b6c4f628406e607381, - limb2: 0xf0e31147247ea908ac68dee1, - limb3: 0x147e77084016ea5d516b9dad + limb0: 0x53668ebd0986a797188a8c58, + limb1: 0x187d953f4fba108444562cff, + limb2: 0x686628e9764add37f0d2d260, + limb3: 0xc88d6a0972fc4b6efdc8b6f }, u384 { - limb0: 0x182fc237d1a0aff6d3d5be79, - limb1: 0x7bdd6d70bde99fb41ad137ea, - limb2: 0x5e67d140bc3704a4fc25c50b, - limb3: 0xe5db4de27d1f768c87a8a42 + limb0: 0x5b75b5a7ab5b0911e1a4f491, + limb1: 0x368b15073a0d16d6bf854dd9, + limb2: 0x7bfe851501d59b9f68e9f4c, + limb3: 0x10f190c17f14d344d81c5bc1 }, u384 { - limb0: 0xcb2f46636cec39db98bb521d, - limb1: 0x3ba9813ca83ff0c52a740bca, - limb2: 0xc008d4e52c249bc01ffc8fb1, - limb3: 0x12c3e21ac97172394735d24f + limb0: 0xb46a7a67ebed23fb773f2537, + limb1: 0xee2d02b811e0bc438a478e0b, + limb2: 0xa6a905327d15b4fb4ee24ae5, + limb3: 0xb369e21ff78ff191a72cf5c }, u384 { - limb0: 0x75457e7c916ad50a6366d06c, - limb1: 0x96e3fce46dcb2aed4ec345fe, - limb2: 0x5cd614cedd9542f26e3e5cd2, - limb3: 0x577c3816982a09cfecc1721 + limb0: 0x3ebdf3a1bb742a56dbe93353, + limb1: 0x40c3206ce20c8cd16f9289f6, + limb2: 0x9568c6ed074eb8419638746c, + limb3: 0xac6260cdb1135715523b63a }, u384 { - limb0: 0x7f1331a1c7c0703cff4f979a, - limb1: 0xdd2698238f182f9f6898f889, - limb2: 0x143bd480349c50d428be6663, - limb3: 0x148e365e51a44aec4dde20a8 + limb0: 0xed1cc0e88a62824219b37ce9, + limb1: 0xfbab7cf8c624fada47d23532, + limb2: 0xb8b675edc60578261d9983b3, + limb3: 0x683177205d0f2c0f70ef93d }, u384 { - limb0: 0x110694cc258c903dd87b2458, - limb1: 0x2432fc494d931ec73461d598, - limb2: 0x9789449624dc3b3d98dfdbad, - limb3: 0x19d848421e8f64895a35ace1 + limb0: 0x5cbd140a0ebc581801dd3cc5, + limb1: 0xb7178446392a3cf67866926d, + limb2: 0xfbeedb1a33a7e1e233aab6d5, + limb3: 0x111938ca775937a325574621 }, u384 { - limb0: 0xcb1cda9dce1a4e1b58b5266e, - limb1: 0xf2c636af58eaab6bc2bc1113, - limb2: 0x938aa890217aa2ed9cf2c102, - limb3: 0x9559a6de353576da83d63b8 + limb0: 0xba5811a4201f261ca010aac4, + limb1: 0xe299d2589750a5d3fd3c91cb, + limb2: 0xa422ba9a191172cec5b31243, + limb3: 0xeddf9184d5361c6238d709b }, u384 { - limb0: 0x542cda91eb1b3d0a19ff68dc, - limb1: 0x228b2525922e988704cc0bd1, - limb2: 0x87373ec23207bf2ac863cdcd, - limb3: 0x35261c415573cc231c97079 + limb0: 0xa36f31a114dfd552cdb52cc7, + limb1: 0xd8783484525b7017eeef6372, + limb2: 0x915d965d91b58a9f33b10d43, + limb3: 0x6e99df6a8bbe328860c37eb }, u384 { - limb0: 0xb879bb091a031b6da701102d, - limb1: 0x6d18a29516a4058502f4250a, - limb2: 0xb68cec07b7965028b37830ea, - limb3: 0x3712713928fc33ab2679415 + limb0: 0x5af4af1c79dc37d29a622481, + limb1: 0x2b594d9a2064b60f0c818bf8, + limb2: 0x85dc0a9928ad28b7c3707572, + limb3: 0xe8b36fb38cf63e0a16c337d }, u384 { - limb0: 0x1d5b4755b6c65d1f73457fc, - limb1: 0x542a4ccfd1de4ff3724f9491, - limb2: 0xe312e0bd05683d13cdd61d49, - limb3: 0x18704ef11a88a02e185cecad + limb0: 0xb16fe478937ed200ee88a5f1, + limb1: 0x23721f4aef711093965adbb2, + limb2: 0x799bfda9d6158e9dcc858883, + limb3: 0x7aee0921e50015a2f45816d }, u384 { - limb0: 0xbb5e2525fd9dee497f042f83, - limb1: 0x7e1746e1ad68dedf94415a14, - limb2: 0x13370a033a2783c1d3a16617, - limb3: 0x166fc35047873f6633d31bfc + limb0: 0x807a23bf28a32f6cfa0fd240, + limb1: 0x285b34c82bb6d893de8ca8a2, + limb2: 0x96acc0c37c4b43e49f4503de, + limb3: 0x16e1692a695260af2f957caa }, u384 { - limb0: 0xb7aff77ee2bc9824aad1c64c, - limb1: 0x715b2ab5233afe272ce8a25b, - limb2: 0xcfb468b3de61b859afe5129, - limb3: 0x728d429663f08cd42469b74 + limb0: 0x1b83d801fa11ec67510926a1, + limb1: 0x816e41d754be686517f60b06, + limb2: 0x912cbba9e7877d63079f4a95, + limb3: 0x13400b977035b80dd2eabb2e }, u384 { - limb0: 0xdfe241eb6b9e4a73831e0492, - limb1: 0xf9d7014988b7d8ffaf9d16da, - limb2: 0x174eb1486f5b19d58e94d5ef, - limb3: 0xd3358614636550c60c4dc1c + limb0: 0xfa661370be0ce6438f9c5633, + limb1: 0x79a8a4264e55108e9ff97071, + limb2: 0x34aa95b856cf7427a5b22e40, + limb3: 0xe166b2391a7dbe375c6e87f }, u384 { - limb0: 0xae5609d3c2440d0175dd75c6, - limb1: 0x1bd6e717a620f286c7a51708, - limb2: 0x63734ee84e580bf9414a934d, - limb3: 0x13c929412cc4d39191c184e5 + limb0: 0xcc9c9c02aa4fcceb45cac653, + limb1: 0xf26fa055d3adf708c4695e30, + limb2: 0x5d8c15d9c54a5b0966fb2e19, + limb3: 0xd13fda42ea21e67414ff528 }, u384 { - limb0: 0x4707a208d23aee218a22c568, - limb1: 0x39a32b2ceb61574e46be9d90, - limb2: 0xb1c70d85527dec6d0cfbe493, - limb3: 0xb961b92d3518c70eb9b817c + limb0: 0x1a190b895b564cb329d817ae, + limb1: 0xe12c63ef2374c66a03dff86c, + limb2: 0xf9d7b50b1ad606b2c32a53c, + limb3: 0x1616d02af14de1cfbd17cbf4 }, u384 { - limb0: 0x5ff698cafdaf9a1beb2587bd, - limb1: 0x6af204e4d7543562eed53a2c, - limb2: 0x2cb234332a538b7bae943f78, - limb3: 0x137a1cf91cd76d5e7bbb7c78 + limb0: 0xac63f77c75adfb405357d1ff, + limb1: 0x5762481b3acc9c6761bb1e6e, + limb2: 0xc70d4436ed2fadce03b68fe6, + limb3: 0x10e215f9665f15493a7ff38b }, u384 { - limb0: 0xfec017975c1e8ab4ec3da002, - limb1: 0xfc70c49927697c62973c9488, - limb2: 0x23a5342d3458dc604fe5b422, - limb3: 0x63d527612b457a2b732aae6 + limb0: 0x68e5625f46f0635021c24d8c, + limb1: 0x3da4efe4b23cd8e2bac9eb49, + limb2: 0xb3f3b4fb7770b19ca6cc3679, + limb3: 0x96ca561e6c83c32660393e3 }, u384 { - limb0: 0x3ead708f3ac1c028b9516fde, - limb1: 0x943f1b7843c0a87a78686014, - limb2: 0x2a3fe5874e3883aac671e062, - limb3: 0x15c4a1f5020ab675f312c14c + limb0: 0xe2458af2162d26bbf03ef75d, + limb1: 0x8039fc346565b2106a24f2c5, + limb2: 0x7c64e6dfed9ff4ffc81abecb, + limb3: 0x10134026fe0c3141058a1643 }, u384 { - limb0: 0x96f261a1e588183b6eedb39, - limb1: 0x48bae30d1c5c714c29a90286, - limb2: 0x772162f4d0450b5b347c2c84, - limb3: 0x14c877d001a6aed7bb464975 + limb0: 0xe42f2552cbb1a5f4cfbc69e4, + limb1: 0x12633655eae263852780da86, + limb2: 0x5742f1e9c7b5d97673c8f836, + limb3: 0x1ee1eeddfc78bbd5159ebe7 }, u384 { - limb0: 0x4aeac9c6c87441c6b65ad8be, - limb1: 0xbce7565e659940a4af6537cc, - limb2: 0x736f52697187eece31dbca7b, - limb3: 0x38a8d718a720ccadce70cc7 + limb0: 0xec78e6bb5af14117750e653e, + limb1: 0x3c41f1d83d49db79a8815faa, + limb2: 0x629e03b5b6e9874cc6341404, + limb3: 0x10ed7ac754606cbf631c615a }, u384 { - limb0: 0xecf7386ac6a8f110db008ed8, - limb1: 0x939a3cd90ce8f305b2f24de0, - limb2: 0xbeab671790842c9a1e18be7c, - limb3: 0x11fd468dc7672cfbe29f390e + limb0: 0x94d198ce8eff42461a55652a, + limb1: 0x9d82c6b2d4fcb8a0274fc4a6, + limb2: 0x7feeffbc22aaee9c18142f06, + limb3: 0xd300465af02c09217a51938 }, u384 { - limb0: 0x273b68d3106f3ee0431d6ba5, - limb1: 0xa07f7307f172cf81b7bf706c, - limb2: 0xe945bc098c988adb91e4b15c, - limb3: 0xae4abaefed1f2f5abb8112c + limb0: 0x324f4bea6004951ad2d0f4a7, + limb1: 0x88c8fa48691711e4f1af5be2, + limb2: 0x3cdcf7cc70ab57c04b60e3dc, + limb3: 0x3d268b3c886aac48e921d62 }, u384 { - limb0: 0xac27c2d2f2705d8e3b601dd8, - limb1: 0xd016b3a4d5eb581ff878becb, - limb2: 0x39f061404721e46cf0612d2b, - limb3: 0x87b717a9e6b8d0e2f70e432 + limb0: 0x22dc808c72565b3493f6b424, + limb1: 0x4d4d1a5ffc2d0429f9541eb8, + limb2: 0xd1c97618b8dde6bbb54f1682, + limb3: 0x549be90142d42df0734648f }, u384 { - limb0: 0x3f27873583926bfb831e0c11, - limb1: 0xa954563a6e6c04357f892961, - limb2: 0x27adf8077e86937fc03712bb, - limb3: 0x78d43d81d70551be614a0be + limb0: 0xf81b80827f32425294142640, + limb1: 0x5ce0835cc176d4c00d609ad5, + limb2: 0x285811fb5646a5732faa8f52, + limb3: 0x16bf60572f21a1884e17ce20 }, u384 { - limb0: 0x21fac1acc9867f1fa3542f7b, - limb1: 0x98294e9ed48d9b675a63463d, - limb2: 0xcc7916edc923b12f8344d664, - limb3: 0x196fbc78d602676777a10a2f + limb0: 0xebcee2561ee4f0745381b866, + limb1: 0xae8acd76dfa181f9186ebb8c, + limb2: 0x1b2a0a3d2198159d98bf07ab, + limb3: 0x6b4b13478ebeafa41673e59 }, u384 { - limb0: 0x1454591c1605e4ec8c47693b, - limb1: 0x6c424a9ee5933d75a3469f5f, - limb2: 0x55e25dd113fe95958b195731, - limb3: 0xc10fdf9e67714e790905217 + limb0: 0x9d30da1a8eb3156d4fc0e676, + limb1: 0xc2d66c0476719a58448acdfe, + limb2: 0x85240efc9de4e79df662c4bd, + limb3: 0x93128ef0a4b420ad4c2cd90 }, u384 { - limb0: 0x4512c7dc24ec2f1bb389c8db, - limb1: 0x26491d25ece5c8c3c4545469, - limb2: 0x7bee21cf5093f87d5824b931, - limb3: 0x920bed2289644a37d7e6f6e + limb0: 0x6153d2167b3feb8d84fb6d30, + limb1: 0x9d64bc42e8cb04771e83e48b, + limb2: 0xe626508a7b0e4ae2208c2c30, + limb3: 0x11bd065931b7afe59b2fdb5a }, u384 { - limb0: 0x871e740c62ba1d729e7e364b, - limb1: 0x33531089bbbc9d23d399a99, - limb2: 0xcc5039ce9485a908a5c3e808, - limb3: 0x50c8ed3eeb232b0a998f482 + limb0: 0x5798092bb3b71a3451ef7728, + limb1: 0x9190b3bcbe38c01155bbfabc, + limb2: 0xcb6132c9a2d5b4125789a13f, + limb3: 0x96bd69d52e32f0a8f9b137a }, u384 { - limb0: 0x2db306f5e096f3c664040f71, - limb1: 0xaae828ba10b3fea9084d91bb, - limb2: 0x67f4046059a6de97dd31d6e0, - limb3: 0xaa55a2d43b89558b749c9b5 + limb0: 0x140a37451bc6a9bf3196f720, + limb1: 0xff23e62d36d50b18d5e4c53b, + limb2: 0x2bc6eb609faae235cf44254f, + limb3: 0x1a78ba99a88793c7596c4c3 }, u384 { - limb0: 0xfb721c35cfbef1950b4d0734, - limb1: 0x3ec6df6676a51c4ce052d91d, - limb2: 0xb8a52c3c405876e79c65a4a6, - limb3: 0x620baad86449a054fefed0a + limb0: 0xdf8ccbd43ffa8b1467bd5499, + limb1: 0xb35b759eac45b01ea2a587eb, + limb2: 0x8bf9a412372c2dfd47fbf8a4, + limb3: 0xbcf88c244e6dc971db4676e }, u384 { - limb0: 0xcd3054214a697787c51b96c7, - limb1: 0x1c499a21974d3c96241dad34, - limb2: 0xedc44ebdd8776dd6d8c8fe5f, - limb3: 0x16e127e9ab3288a93cd35d52 + limb0: 0xb107d67d65d3c7af09a8dded, + limb1: 0x602e5efc56d80d8dc6dea2e6, + limb2: 0x2220382f8a86fd745b5f0e1f, + limb3: 0x4e7a8510c25b8d7d6b84d14 }, u384 { - limb0: 0x2c00adb523ea0fc06a4f3f70, - limb1: 0x2e869470c9dc91314d680234, - limb2: 0xb5650b12c6f9dca846a74167, - limb3: 0x188b9b87e515fc976f3a6dd + limb0: 0x25318a82e6a1fb8d2eae38d1, + limb1: 0x1c54f4d35830029349588170, + limb2: 0xa535935db561a8982bb7393f, + limb3: 0x18392765938f8aa81a56575e }, u384 { - limb0: 0xe90ddb8884ad9ff16b159749, - limb1: 0x4baba030c87515503d856f7e, - limb2: 0x1d3d156e7fd9b4da1ec30a4c, - limb3: 0x600b30c8c7806bb461ba50c + limb0: 0x30d15320b43b6c989c70a2e8, + limb1: 0x25efc501bd346f41dd38882c, + limb2: 0x3e0582669719c193d7e61842, + limb3: 0xd03f4317a4cefa9e8387292 }, u384 { - limb0: 0x6b360f94c82d41cd0fa7f34c, - limb1: 0x5202695635562e02e1c89f6f, - limb2: 0xf2d97e30975f43f9530a271a, - limb3: 0x525947a9ed6274dd41764dd + limb0: 0x1fb16390713b6677a3a3ec06, + limb1: 0x6ec3cdce847587ad7d2babcb, + limb2: 0xe9e85740dd77d07edf17886a, + limb3: 0x3185801d6333ba1e3c6a664 }, u384 { - limb0: 0x863ffdcc0a74633bcfff37f3, - limb1: 0x20bf31c44c6ae8c5e95f4429, - limb2: 0xbec6daf20a8a1bd2dc93a48b, - limb3: 0x124556ae6e09b9194faee547 + limb0: 0x3776c1f556cea07d9a1e1d46, + limb1: 0x91960644e9735a8eb3ec26e0, + limb2: 0x78b7154fd2345075e424cbc7, + limb3: 0xbe7fb4b5b2da6b01816aa04 }, u384 { - limb0: 0x2cbdde1a0b6a89f7292b9649, - limb1: 0xe4226139084133e1394a27c4, - limb2: 0x6637588d86d10160ebeec7dd, - limb3: 0x32679e454c452ddebe3babb + limb0: 0xf46b7ae210dd247dcfe9bd48, + limb1: 0x3a4737743a3033b0cd894067, + limb2: 0xe8e086afb3f0d45c67bc2cd6, + limb3: 0xb2e407915f7b7e26edc66eb }, u384 { - limb0: 0xab0ffaa9968a4546c9753304, - limb1: 0xeecfac64b800b1ef06422ba7, - limb2: 0x62d0f0d6c832e366afb61ec4, - limb3: 0xf485044d3fb5c49c88d8858 + limb0: 0x206fa51f548ce80a9f0c3d3d, + limb1: 0xa7433ee2e7b29ba9f8817da2, + limb2: 0xa7a7f14af39392eb797618f3, + limb3: 0xe232613e7dcf41478b13af }, u384 { - limb0: 0x40e6748f8464fc34d88e694a, - limb1: 0x78a9fc6c65817f0de4b3c253, - limb2: 0x233e8ec0cb2da87ac7bcd63d, - limb3: 0x4130e3436b20e4e3cd95323 + limb0: 0x93a64c8f0b1439b433e6386c, + limb1: 0x7031f8dc83c5e408867b1917, + limb2: 0x1d2e5084c86ad7e849e3b1a5, + limb3: 0xfd7cb89f91b7f805261f846 }, u384 { - limb0: 0x45fa2979d28e54e95da8ad9, - limb1: 0x3923926286cbecdba8d60bef, - limb2: 0x9ca9576e74253292a6558401, - limb3: 0xe4c454353f454f4ef62bc9 + limb0: 0x9a6b004b0fcbd773cde2617f, + limb1: 0xa87f08e8b644e5f8ec0dfe4a, + limb2: 0x7575e96a8710424e01fc81dc, + limb3: 0x15973cdd108b86956e8ab76c }, u384 { - limb0: 0xa97e5876932ac351d56c7c79, - limb1: 0xae03a45422d996f6ddb99430, - limb2: 0xad26de5e8cdbc04a4b10662, - limb3: 0x6625625efc9c7f3ade384b5 + limb0: 0xcef000bb0600a0a6a17938b4, + limb1: 0xc6ea3a5994eb00d8a4a151ea, + limb2: 0x7f931b7f1f19ccfa71b2c8cd, + limb3: 0xeabca6c41857c23d6737118 }, u384 { - limb0: 0x3da03a2567addf17ac7b9ae6, - limb1: 0x3147d7c1f7d971c3e28ccedb, - limb2: 0x32ef9f14567e7e5afb341140, - limb3: 0x12cf6aefa3d3e139f05ba171 + limb0: 0xf8829eacb2e61726f78c18dc, + limb1: 0x1edfda4a839f1dc4ba5d5539, + limb2: 0xb045b4d071fcd0e9af75d7f1, + limb3: 0x17cefc4c23083de8e10bec74 }, u384 { - limb0: 0x3db4e6e5b101ee435c9775ba, - limb1: 0x41281b8f01e34282951c2445, - limb2: 0x4c4fbb1d5492d5dbd7cd4df0, - limb3: 0xc693fd53cd8b35b3a05faf9 + limb0: 0x215a0be02f92a05934ea861e, + limb1: 0xf24189b5dbab581a9832cce4, + limb2: 0x31940a4cfe967ecb1407e933, + limb3: 0x14680801d9dd6c63b9681569 }, u384 { - limb0: 0x1bb37ec4ad416de00ca24774, - limb1: 0x346779b95c0ca30fe265afc6, - limb2: 0x71784b20caa81997f645c4e, - limb3: 0x3618f2df63565bb7768d2c5 + limb0: 0x99542fb90ad27f0baee06dff, + limb1: 0xe15d3a93ef7253e99f402a64, + limb2: 0xee5906abb9ef9a9497d11970, + limb3: 0x6d33b9f446dcc56d98c7993 }, u384 { - limb0: 0x28f590fee9fa96421a1fd02f, - limb1: 0xf30e70f013a8521340b9b1a6, - limb2: 0x2bd4eb87c1953aaded319339, - limb3: 0x3fe9b51230ba65953cb7e8a + limb0: 0x377f9c8f5cf821477f68133a, + limb1: 0xd2d40482582f2acd5e0a7de5, + limb2: 0xc2a22b864cc6d931c948c2b8, + limb3: 0x5220c280a7511e25ea626d6 }, u384 { - limb0: 0xf49a89742f79df202a8a4f8c, - limb1: 0x444bafd8eca788cb21349c8c, - limb2: 0x26f1a2346ead27158d8bdf06, - limb3: 0xf4e3e83900e24271e160c1 + limb0: 0xd61bebce4a9615becfa9e522, + limb1: 0xdd2aec184ce7cad415e75db9, + limb2: 0x66a810c2b169bda05c9cc193, + limb3: 0x1381c0c0e334c3f063225dbb }, u384 { - limb0: 0xa812524fcfa79220e14df0c7, - limb1: 0x3bcb203f6ce04ade401fa270, - limb2: 0x20becdd3b550961d2d0595e2, - limb3: 0x4b93079f07900057a42fd33 + limb0: 0xc43b346ccc9878e9e6e108a5, + limb1: 0x2e967ea607885f2bda79d156, + limb2: 0x530e9b71f0ef8d169684d2f8, + limb3: 0x144b000bf975c9d65965e0e }, u384 { - limb0: 0x94902b72bfb81cfa01c3f7ce, - limb1: 0x58b70db8e210418bb502148a, - limb2: 0x398fbab4dd1c4802465cbfb0, - limb3: 0xbaaf6aff83905a654f8be68 + limb0: 0x7eca88a44cf10f40ab7eb07f, + limb1: 0xafab2ff50a0e2a8762910f65, + limb2: 0x4ffda398e315c33ab1e0bc02, + limb3: 0x12ccc1866a085023418854de }, u384 { - limb0: 0x2bd2ab1b5b78833c23a5ad04, - limb1: 0x17fdb453bd9ff9bb74a956a9, - limb2: 0xb9665fb31b7ef567a9d40ec6, - limb3: 0x3f43b8bf5a54d3d61b54b3d + limb0: 0x826a78d48e7c25d3e2b75002, + limb1: 0xc41ee223ae689110106d0e1a, + limb2: 0x2f52e52eecd737135c1bb5f0, + limb3: 0x15cb41178de119573b49aea2 }, u384 { - limb0: 0x3f405d228282750ac9d647d5, - limb1: 0x421b7e5acfbd5e320f784f04, - limb2: 0x37de45ff5d7e7941a0fb0d9b, - limb3: 0x5479040e4684dce59347c02 + limb0: 0xc298c07e2c1945321293e713, + limb1: 0xf8bf8e519a292ec5d8eb6567, + limb2: 0x667c0b3be5ebd609c94ffc6f, + limb3: 0xc82eb6310059099a453790d }, u384 { - limb0: 0x71a97ea1e6c7bba93aed76ac, - limb1: 0x9cec97c3b8127e625ad7ecae, - limb2: 0x58e2d9deee1b3680d3d3024f, - limb3: 0xbd8dabca200ade3473fece3 + limb0: 0x5061f1d0a15e98a9f964bf6f, + limb1: 0x6712f7e71d80a548f13cb408, + limb2: 0x4ab5632f7ceff2df5cc789b2, + limb3: 0x73f7495b6e2a3f67c4a008e }, u384 { - limb0: 0xbe69f6b383521ff2ae089258, - limb1: 0xd7b27ce9d87177a339c341, - limb2: 0x9d1cb3470548f1732cfe26f5, - limb3: 0x31450febde86a5dcc0a7872 + limb0: 0x856730d9a7be7832c63a4171, + limb1: 0x41c7491590dfbb638c3bbb6a, + limb2: 0x5fb2fbe2cea6f47ba6a6d828, + limb3: 0xe1b4321baf3b20c6171572c }, u384 { - limb0: 0x7096b62c3d9d43d549dea130, - limb1: 0xd328b7e1783101e826afbf94, - limb2: 0xb18dc7785c5dab954bdd131d, - limb3: 0x90a49f042c838d53e165d71 + limb0: 0xd0960609e7235c4511cdf659, + limb1: 0x836e49031fa64769dd139244, + limb2: 0x314d9efe9de50541fcb70827, + limb3: 0x17f9e35052465f428076e19a }, u384 { - limb0: 0x3df04887067ace8e2f5e1e41, - limb1: 0x32d199c483accb9109a9f167, - limb2: 0xf85d48abad4d10ff9e9639d9, - limb3: 0x170b0e6511b32204b0ac5697 + limb0: 0x8baff5b9586c561f670af4a2, + limb1: 0x52644a91e094b69e14748f88, + limb2: 0x9f33d360c0882aae1b5707c5, + limb3: 0x84c9915b931b6c68e0adc73 }, u384 { - limb0: 0x9beb3f3a440838277b0fd237, - limb1: 0x1dc9eff8908a83023ba93f01, - limb2: 0x725d4522f0a429d4392622e3, - limb3: 0xaa7601096dacc1d0ca1e78a + limb0: 0xdc8dec693ecc7b36c01e99b6, + limb1: 0x6512a29bae26632173aab3c0, + limb2: 0x23ae9ec17beee0000c998a19, + limb3: 0x19235b42db96341ff1bb0c2d }, u384 { - limb0: 0x27ce73293dbeabcb049a39c9, - limb1: 0x49619a4b88c9ef9a4f26a148, - limb2: 0x22732c38e79f956f6d29ccc6, - limb3: 0x50ef3f573ca6946ca24d98f + limb0: 0xa12faf13e256b86244ac042, + limb1: 0x2f75fec3f90a46f42be458ef, + limb2: 0xd588c65bbc47bd0562516bae, + limb3: 0x26832fcaa5c358be0d71678 }, u384 { - limb0: 0x374b5af4c981fb93fa63bae6, - limb1: 0x9076eb2a6da40832f010c849, - limb2: 0x421b528edd7e83c2291475bd, - limb3: 0x44fd3f6f2ee29e686a5cf4b + limb0: 0x9d1a0e464d6bf101ce19e6e, + limb1: 0x98098dfcd2a2d1719b827024, + limb2: 0xbe02afd1240bb182d419e435, + limb3: 0x10f3433acfcbd5a3144b8223 }, u384 { - limb0: 0xad15e9f7ca932b9f13b20cdd, - limb1: 0xa5c66b761a7e37084ab06e68, - limb2: 0x99f8fefc4fa53a98084a1bc6, - limb3: 0x1495fa89fa0681358feecad5 + limb0: 0x8c78b7b22f4cda38bac41014, + limb1: 0x125de1b41b13c148edaa5f1c, + limb2: 0x74b3ac2006bbb2c88ad35758, + limb3: 0x135bb697fa4fa445236ec20e }, u384 { - limb0: 0x804f4d42524d301f0493f135, - limb1: 0xa5a1eb9dbde3264e9d4d8be5, - limb2: 0xf1f61fad44743bc3e1558dd0, - limb3: 0x119cd05a7348fe78e5f0c09 + limb0: 0x651e9617d526b5fcf5c9e962, + limb1: 0x5080a8d79558f88566493047, + limb2: 0xf060169339192b5da0a2d3c7, + limb3: 0x18318efbb37e75066584cd1 }, u384 { - limb0: 0xe1d3ab60114328804a8c62b4, - limb1: 0x9495ae10b5749cd4d8892527, - limb2: 0x3206cbbdac42eaff29b83b44, - limb3: 0x146d5e5ab6c98f8b5d141ac + limb0: 0x43d02c716a389a0d341789dc, + limb1: 0xcdb29e5f56cff7f320bba40c, + limb2: 0xc37677a3474f6c05ceb371f5, + limb3: 0xce7da946a8aae44779cad0f }, u384 { - limb0: 0x3cc9ecd602c3b88cfa41c884, - limb1: 0xd0a4aba55367bec6d7b5f8da, - limb2: 0x4a14811a5317ce74434b7939, - limb3: 0x6aab9b5fa35becb0320f918 + limb0: 0x75025637ad1a29944c8b9bf7, + limb1: 0x91bfda3ab8d5b354b216e82c, + limb2: 0x2171ca5014cafa6f126a1f73, + limb3: 0x8cc2a71924fd636d71957f0 }, u384 { - limb0: 0x3ab047d7d51615f9c9d8cd3, - limb1: 0x8c5c55c9abba06a67277ee76, - limb2: 0x96a10193e87998f5108d9f73, - limb3: 0xd3bc36d285676b7d0ee8956 + limb0: 0xacb8aba85a0b514c9775cac7, + limb1: 0xed006fd645955d9627ce2cdc, + limb2: 0x8dc3a07d7914fc5b65476c9c, + limb3: 0x137ab563b011dc31b3fda33a }, u384 { - limb0: 0xeb7033df0ce4a901e5bfe447, - limb1: 0x431930c2e2f34bc3db8aee5a, - limb2: 0x445c7faf0a1f4094fc33036, - limb3: 0x195d821debd90ca2e696c68d + limb0: 0x40966f39d54dc1f71c464384, + limb1: 0xfca25cd327c161879a6949ad, + limb2: 0x7f2329cb2337eb5cf2232dfa, + limb3: 0x7be7e820d4e617e9e610788 }, u384 { - limb0: 0x9137535633b5795d8a27ddd6, - limb1: 0x9a3542f78c69c3bdefd23c5, - limb2: 0x6242c58916e43fb7fe074e4e, - limb3: 0xb3176896436708bf98a4743 + limb0: 0x450e35745301254912765eb8, + limb1: 0x56d97bedfec1e55bb8baeb86, + limb2: 0xc3cbb9f70c38c9189c8c2bdd, + limb3: 0x9d02cd6fc6b99873cc8ac30 }, u384 { - limb0: 0xe15d02e79361fbd0911f6024, - limb1: 0xc116d432cb489ba81df98202, - limb2: 0x6ebb5cd950c8a6567279699a, - limb3: 0xbecacd22e59bd0c8a4c851f + limb0: 0xbef258c2248143e16d25a4e1, + limb1: 0x95b763368c5e54711df7242f, + limb2: 0x5ce08447662734e8c12b29cd, + limb3: 0xaf252f0df08c1fb1ee2d160 } ], }; let small_Q = E12DMulQuotient { w0: u384 { - limb0: 0x7fb549c7d48dad5dd14efbb8, - limb1: 0x79d9ddc918657d3be35e9794, - limb2: 0x5e92e667d64155e029046ec1, - limb3: 0x6cd88bfa78b8327f0735388 + limb0: 0xfb9fb94a15b9029dcd558d38, + limb1: 0x21009460b02b31cdd28c64ee, + limb2: 0x38ab781d1596eff210c40edd, + limb3: 0x17f59bc6618fca8ec3b9bebd }, w1: u384 { - limb0: 0xa2283376e692daa7c9098f39, - limb1: 0xd3b4c3a79a124ecb5f95026b, - limb2: 0x83e626642034b5c83b9a2f74, - limb3: 0x112d43d8578b0277401818f9 + limb0: 0x7d1f39435d49006a0024e0e3, + limb1: 0x37b0a5c39482bee3a12a5cf1, + limb2: 0xf48a49bb15c505cda1a02276, + limb3: 0xe0cbcda6a8c9cb593e77e96 }, w2: u384 { - limb0: 0x9ca56b6a5af7a2afc9ad8711, - limb1: 0x297c054e3cf077eaae9b28f2, - limb2: 0x21262255daae549892368058, - limb3: 0x1731f681e8bf7b7fd1cbb61c + limb0: 0xa1826fd7e2942e2c05a4d806, + limb1: 0xa7d6c728dd3a81a5cb7caa6d, + limb2: 0xbc74e8dc5a15bfbde9884e7a, + limb3: 0x310d4fb81dde42922fc187 }, w3: u384 { - limb0: 0x47c3a9034d177cf298bdc042, - limb1: 0xb46902aa806564cdcb7dbe54, - limb2: 0x7d8a0beafd0ab8d50a2fa7b2, - limb3: 0x140d5da7707b02316683c873 + limb0: 0xd65487363cef0153a56b15b8, + limb1: 0x7cae72d5086f88dc4615601e, + limb2: 0xe133c91216f0594c1500d97d, + limb3: 0x10ba969ab9b693a03b91d434 }, w4: u384 { - limb0: 0xaf481c91d1a0847152cab3f7, - limb1: 0xdb6df602631043b2f7d11592, - limb2: 0x3bb035a2d5392396544dc902, - limb3: 0xceea874c285b7452fb6c290 + limb0: 0x14202a9fdc3bca81353f9b5c, + limb1: 0x8ac24a84727eb4630e3ff326, + limb2: 0xea98c21ced719ae51adb7899, + limb3: 0x33fc5bf4b736a3d2a8d9db0 }, w5: u384 { - limb0: 0x9de51f33af946aae0bb794c2, - limb1: 0x62008056d3c22ceab52241c8, - limb2: 0x3be3bffae3eac812a7972ca7, - limb3: 0x13cbe13fe3ed04f9990f1e7c + limb0: 0x7b6d71aef47a3e42f765e691, + limb1: 0xe9bb5cfb54f2948b0883e714, + limb2: 0xabe7f0fc7ddd602f690544f2, + limb3: 0x410b28b8c371332541bc64d }, w6: u384 { - limb0: 0xde44ea6943c4cc56c0b714fa, - limb1: 0x3f55c08b927dbeb222cef4b4, - limb2: 0x63528c4387232022750cccea, - limb3: 0xb916b01f8192f49319311e8 + limb0: 0x85b05a1e7cb09258190b57f, + limb1: 0x8530f42f5f1d28d2aa46f025, + limb2: 0xb5e224bbc7d0a8f8cb440baa, + limb3: 0xddeca6b357f36824d1da30 }, w7: u384 { - limb0: 0xfec4065a0419d887cf0fa884, - limb1: 0xf0d604ffddb4267df33f7f98, - limb2: 0x5b12b744f3cb21b31d3eec0c, - limb3: 0x498fa43b017d6cd92f8c7d7 + limb0: 0x7204c0a867b29807885291f0, + limb1: 0xd1088a8ceb2bc599fce1b2d7, + limb2: 0xbcc9665fc37dc06413fa3069, + limb3: 0xe99d09953e33c6f2ab2f692 }, w8: u384 { - limb0: 0x3c1a592a27602106d480a471, - limb1: 0xf943898b9a6e08d868e8074f, - limb2: 0xbdba3b37961cd4e199d719b6, - limb3: 0x8104c52e804a45b3e8e7d89 + limb0: 0x602740892ea03c99059d0b2a, + limb1: 0x4eda4fd58ac84b7f0a30036b, + limb2: 0x5607e188fbbc773f211b336b, + limb3: 0x1844b0d0a85c391350226bfb }, w9: u384 { - limb0: 0xf56ec9a8ee95112bb5f2309e, - limb1: 0xdb4ee4073fb1741ca72f6a67, - limb2: 0x79dfb6a694bd5c1325a1e789, - limb3: 0x15e62d6b644d5805d34a91a6 + limb0: 0xced4fc9e9cef50d8ede1e3da, + limb1: 0x3c85dd33a989fe61611de981, + limb2: 0x6fe41ecf134d4aa90afd72bb, + limb3: 0x133c3837e32ea03a2793a5da }, w10: u384 { - limb0: 0x7d107a2f66f5fa5c1cf856b, - limb1: 0x2da57a7a1f0fed9e87cea336, - limb2: 0x8002017a9bdaccea8ae75b57, - limb3: 0xb9202fd95203bf54562e951 + limb0: 0xbe6e990c0e386d4937fc17bf, + limb1: 0xaf018f13a1a2f1b9e3370d61, + limb2: 0xb2a2793589c9d877e9b85b11, + limb3: 0xe547ddb6343ab85ed814ef3 } }; diff --git a/tools/starknet/e2e_tests_writer/mpcheck.py b/tools/starknet/e2e_tests_writer/mpcheck.py index 4b21b938..4be66d9c 100644 --- a/tools/starknet/e2e_tests_writer/mpcheck.py +++ b/tools/starknet/e2e_tests_writer/mpcheck.py @@ -301,6 +301,9 @@ def _get_input_structs(self) -> list[structs.Cairo1SerializableStruct]: return inputs def to_cairo_1_test(self): + print( + f"Generating MPCheck test for {self.curve_id.name} with {len(self.pairs)} pairs and {self.n_fixed_g2} fixed G2 points, using extra Miller loop result: {self.include_miller_loop_result}" + ) with_extra = ( "_with_extra_miller_loop_result" if self.include_miller_loop_result else "" ) @@ -311,7 +314,6 @@ def to_cairo_1_test(self): input_code = "" for struct in inputs: - print(f"struct : {struct.name}") input_code += struct.serialize() code = f""" diff --git a/tools/starknet/e2e_tests_writer/msm.py b/tools/starknet/e2e_tests_writer/msm.py index 47936b20..34e2416c 100644 --- a/tools/starknet/e2e_tests_writer/msm.py +++ b/tools/starknet/e2e_tests_writer/msm.py @@ -247,12 +247,12 @@ def _get_input_structs(self): return inputs def to_cairo_1_test(self): + print(f"Generating MSM test for {self.curve_id.name} with {len(self.scalars)} points") test_name = f"test_msm_{self.curve_id.name}_{len(self.scalars)}P" inputs = self._get_input_structs() input_code = "" for struct in inputs: - print(f"struct : {struct.name}") if struct.name == "scalars_digits_decompositions": input_code += struct.serialize(is_option=True) else: diff --git a/tools/starknet/e2e_tests_writer/test_writer.py b/tools/starknet/e2e_tests_writer/test_writer.py index a8f18a37..3d804acd 100644 --- a/tools/starknet/e2e_tests_writer/test_writer.py +++ b/tools/starknet/e2e_tests_writer/test_writer.py @@ -5,6 +5,34 @@ import random import subprocess +import concurrent.futures + + +def generate_pairing_test(curve_id, n_pairs, n_fixed_g2, include_m, seed): + random.seed(seed) + pairs, public_pair = get_pairing_check_input( + curve_id=curve_id, + n_pairs=n_pairs, + include_m=include_m, + return_pairs=True, + ) + builder = MPCheckCalldataBuilder( + curve_id=curve_id, + pairs=pairs, + n_fixed_g2=n_fixed_g2, + public_pair=public_pair, + ) + return builder.to_cairo_1_test() + + +def generate_msm_test(curve_id, n_points, seed): + random.seed(seed) + builder = MSMCalldataBuilder( + curve_id=curve_id, + points=[G1Point.gen_random_point(curve_id) for _ in range(n_points)], + scalars=[random.randint(0, CURVES[curve_id.value].n) for _ in range(n_points)], + ) + return builder.to_cairo_1_test() def write_all_tests(): @@ -31,25 +59,23 @@ def write_all_tests(): """ with open("src/cairo/src/tests/pairing_tests.cairo", "w") as f: f.write(pairing_test_header) - for curve_id in pairing_curve_ids: - for n_pairs, n_fixed_g2, include_m in params: - print( - f"\n Generating pairing test for curve_id: {curve_id}, n_pairs: {n_pairs}, include_m: {include_m}" - ) - pairs, public_pair = get_pairing_check_input( - curve_id=curve_id, - n_pairs=n_pairs, - include_m=include_m, - return_pairs=True, + with concurrent.futures.ProcessPoolExecutor() as executor: + futures = [ + executor.submit( + generate_pairing_test, + curve_id, + n_pairs, + n_fixed_g2, + include_m, + hash((curve_id, n_pairs, n_fixed_g2, include_m)), ) - builder = MPCheckCalldataBuilder( - curve_id=curve_id, - pairs=pairs, - n_fixed_g2=n_fixed_g2, - public_pair=public_pair, - ) - f.write(builder.to_cairo_1_test()) - f.write("\n") # Add some spacing between tests + for curve_id in pairing_curve_ids + for n_pairs, n_fixed_g2, include_m in params + ] + results = [future.result() for future in futures] + for result in results: + f.write(result) + f.write("\n") f.write("}") subprocess.run(["scarb", "fmt"], check=True, cwd="src/cairo/src/tests/") @@ -71,22 +97,17 @@ def write_all_tests(): """ with open("src/cairo/src/tests/msm_tests.cairo", "w") as f: f.write(msm_test_header) - for curve_id in msm_curve_ids: - for n_points in msm_sizes: - print( - f"\nGenerating msm test for curve_id: {curve_id}, n_points: {n_points}" + with concurrent.futures.ProcessPoolExecutor() as executor: + futures = [ + executor.submit( + generate_msm_test, curve_id, n_points, hash((curve_id, n_points)) ) - builder = MSMCalldataBuilder( - curve_id=curve_id, - points=[ - G1Point.gen_random_point(curve_id) for _ in range(n_points) - ], - scalars=[ - random.randint(0, CURVES[curve_id.value].n) - for _ in range(n_points) - ], - ) - f.write(builder.to_cairo_1_test()) + for curve_id in msm_curve_ids + for n_points in msm_sizes + ] + results = [future.result() for future in futures] + for result in results: + f.write(result) f.write("\n") f.write("}") @@ -94,4 +115,9 @@ def write_all_tests(): if __name__ == "__main__": + import time + + start = time.time() write_all_tests() + end = time.time() + print(f"Time taken: {end - start} seconds")