diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e4c161921f..e9e6c51b4d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -47,7 +47,7 @@ jobs: - uses: dtolnay/rust-toolchain@master with: components: rustfmt - toolchain: nightly-2024-01-12 + toolchain: nightly-2024-04-29 - uses: Swatinem/rust-cache@v2 with: prefix-key: "v0-rust-ubuntu-20.04" diff --git a/.github/workflows/compiled_cairo.yml b/.github/workflows/compiled_cairo.yml index 6957cdfeb2..847eb30b79 100644 --- a/.github/workflows/compiled_cairo.yml +++ b/.github/workflows/compiled_cairo.yml @@ -20,10 +20,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: dtolnay/rust-toolchain@master - with: - components: rustfmt - toolchain: nightly-2024-01-12 + - uses: dtolnay/rust-toolchain@stable - uses: Swatinem/rust-cache@v2 with: prefix-key: "v0-rust-ubuntu-20.04" diff --git a/crates/blockifier/feature_contracts/cairo1/compiled/test_contract.casm.json b/crates/blockifier/feature_contracts/cairo1/compiled/test_contract.casm.json index 3eaba533bd..079f592d59 100644 --- a/crates/blockifier/feature_contracts/cairo1/compiled/test_contract.casm.json +++ b/crates/blockifier/feature_contracts/cairo1/compiled/test_contract.casm.json @@ -100,9 +100,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3d30", + "0x4506", "0x482480017fff8000", - "0x3d2f", + "0x4505", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -275,9 +275,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3c81", + "0x4457", "0x482480017fff8000", - "0x3c80", + "0x4456", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -536,7 +536,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x1548", + "0x15c8", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -588,9 +588,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3b48", + "0x431e", "0x482480017fff8000", - "0x3b47", + "0x431d", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -805,7 +805,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x143b", + "0x14bb", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -870,7 +870,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x13fa", + "0x147a", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -922,9 +922,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x39fa", + "0x41d0", "0x482480017fff8000", - "0x39f9", + "0x41cf", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -950,7 +950,7 @@ "0x48127ff07fff8000", "0x48127ff07fff8000", "0x1104800180018000", - "0x1406", + "0x1486", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -1128,9 +1128,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x392c", + "0x4102", "0x482480017fff8000", - "0x392b", + "0x4101", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -1245,7 +1245,7 @@ "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", - "0x1349", + "0x13c9", "0x20680017fff7ffc", "0xf2", "0x48127ff97fff8000", @@ -1256,7 +1256,7 @@ "0x40137ffa7fff8001", "0x40137ffb7fff8002", "0x1104800180018000", - "0x140b", + "0x148b", "0x20680017fff7feb", "0xdf", "0x20680017fff7fee", @@ -1344,9 +1344,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3854", + "0x402a", "0x482480017fff8000", - "0x3853", + "0x4029", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -1388,7 +1388,7 @@ "0x48127fdb7fff8000", "0x48127fdf7fff8000", "0x1104800180018000", - "0x183c", + "0x18bc", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -1630,7 +1630,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x1102", + "0x1182", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -1682,9 +1682,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3702", + "0x3ed8", "0x482480017fff8000", - "0x3701", + "0x3ed7", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -1969,9 +1969,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x35e3", + "0x3db9", "0x482480017fff8000", - "0x35e2", + "0x3db8", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -1993,7 +1993,7 @@ "0x48127fee7fff8000", "0x48127ff27fff8000", "0x1104800180018000", - "0x174f", + "0x17cf", "0x482480017fc88000", "0x1", "0x48127ffa7fff8000", @@ -2186,9 +2186,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x350a", + "0x3ce0", "0x482480017fff8000", - "0x3509", + "0x3cdf", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -2350,7 +2350,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0xe32", + "0xeb2", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -2402,9 +2402,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3432", + "0x3c08", "0x482480017fff8000", - "0x3431", + "0x3c07", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -2541,9 +2541,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x33a7", + "0x3b7d", "0x482480017fff8000", - "0x33a6", + "0x3b7c", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -2575,7 +2575,7 @@ "0x48127ff77fff8000", "0x480080007ffc8000", "0x1104800180018000", - "0x1551", + "0x15d1", "0x40780017fff7fff", "0x1", "0x48127ffa7fff8000", @@ -2732,7 +2732,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0xcb4", + "0xd34", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -2814,9 +2814,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3296", + "0x3a6c", "0x482480017fff8000", - "0x3295", + "0x3a6b", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -2992,9 +2992,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x31e4", + "0x39ba", "0x482480017fff8000", - "0x31e3", + "0x39b9", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3013,7 +3013,7 @@ "0x48127ffe7fff8000", "0x480a7ffb7fff8000", "0x1104800180018000", - "0x1459", + "0x14d9", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -3096,28 +3096,28 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x317c", + "0x3952", "0x482480017fff8000", - "0x317b", + "0x3951", "0x480080007fff8000", "0xa0680017fff8000", "0x9", "0x4824800180007ff8", - "0x399e", + "0x3a02", "0x482480017fff8000", "0x100000000000000000000000000000000", "0x400080007ff77fff", "0x10780017fff7fff", "0x1f", "0x4824800180007ff8", - "0x399e", + "0x3a02", "0x400080007ff87fff", "0x482480017ff88000", "0x1", "0x48127ffe7fff8000", "0x480a7ffb7fff8000", "0x1104800180018000", - "0x14c5", + "0x1545", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -3201,9 +3201,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3113", + "0x38e9", "0x482480017fff8000", - "0x3112", + "0x38e8", "0x480080007fff8000", "0x480080017fff8000", "0x484480017fff8000", @@ -3226,7 +3226,7 @@ "0x480a7ff97fff8000", "0x480a7ffb7fff8000", "0x1104800180018000", - "0x14ac", + "0x152b", "0x20680017fff7ffd", "0xd", "0x40780017fff7fff", @@ -3313,9 +3313,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x30a3", + "0x3879", "0x482480017fff8000", - "0x30a2", + "0x3878", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3334,7 +3334,7 @@ "0x48127ffe7fff8000", "0x480a7ffb7fff8000", "0x1104800180018000", - "0x15a0", + "0x161f", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -3459,9 +3459,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x3011", + "0x37e7", "0x482480017fff8000", - "0x3010", + "0x37e6", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3609,7 +3609,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x947", + "0x9c7", "0x20680017fff7ffa", "0xb", "0x48127ff87fff8000", @@ -3661,9 +3661,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2f47", + "0x371d", "0x482480017fff8000", - "0x2f46", + "0x371c", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3684,7 +3684,7 @@ "0x48127ff47fff8000", "0x48127ff47fff8000", "0x1104800180018000", - "0x15cb", + "0x164a", "0x20680017fff7ffd", "0xe", "0x40780017fff7fff", @@ -3783,9 +3783,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2ecd", + "0x36a3", "0x482480017fff8000", - "0x2ecc", + "0x36a2", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3897,9 +3897,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2e5b", + "0x3631", "0x482480017fff8000", - "0x2e5a", + "0x3630", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -3918,7 +3918,7 @@ "0x48127ffe7fff8000", "0x48127ff67fff8000", "0x1104800180018000", - "0x1630", + "0x16af", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -4036,9 +4036,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2dd0", + "0x35a6", "0x482480017fff8000", - "0x2dcf", + "0x35a5", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -4057,7 +4057,7 @@ "0x48127ffe7fff8000", "0x48127ff67fff8000", "0x1104800180018000", - "0x15d5", + "0x1654", "0x20680017fff7ffd", "0xc", "0x40780017fff7fff", @@ -4241,9 +4241,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2d03", + "0x34d9", "0x482480017fff8000", - "0x2d02", + "0x34d8", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -4485,9 +4485,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2c0f", + "0x33e5", "0x482480017fff8000", - "0x2c0e", + "0x33e4", "0x480080007fff8000", "0x480080007fff8000", "0x484480017fff8000", @@ -4513,7 +4513,7 @@ "0x48127feb7fff8000", "0x48127fef7fff8000", "0x1104800180018000", - "0x1439", + "0x14b8", "0x20680017fff7ffd", "0xd", "0x40780017fff7fff", @@ -4628,7 +4628,7 @@ "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x1104800180018000", - "0x1489", + "0x1508", "0x20680017fff7ffc", "0x63", "0x48307ffa80007ffb", @@ -4653,9 +4653,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2b67", + "0x333d", "0x482480017fff8000", - "0x2b66", + "0x333c", "0x480080007fff8000", "0x480080007fff8000", "0x484480017fff8000", @@ -4686,7 +4686,7 @@ "0x48127feb7fff8000", "0x48127feb7fff8000", "0x1104800180018000", - "0x1513", + "0x1592", "0x20680017fff7ffd", "0xe", "0x40780017fff7fff", @@ -4821,7 +4821,7 @@ "0x48127ff67fff8000", "0x48127ff67fff8000", "0x1104800180018000", - "0x13c8", + "0x1447", "0x20680017fff7ffc", "0x60", "0x48307ffa80007ffb", @@ -4844,9 +4844,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2aa8", + "0x327e", "0x482480017fff8000", - "0x2aa7", + "0x327d", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -5001,13 +5001,13 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2a0b", + "0x31e1", "0x482480017fff8000", - "0x2a0a", + "0x31e0", "0x480080007fff8000", "0x480080027fff8000", "0x482480017fff8000", - "0x6a68", + "0x6acc", "0xa0680017fff8000", "0x8", "0x48307ffe80007ff6", @@ -5018,34 +5018,34 @@ "0x21", "0x48307ffe80007ff6", "0x400080007ff67fff", + "0x482480017ff68000", + "0x1", "0x480a7ff97fff8000", - "0x48127ffe7fff8000", + "0x48127ffd7fff8000", "0x480a7ffb7fff8000", "0x1104800180018000", - "0x14e5", - "0x482480017f838000", - "0x1", - "0x20680017fff7ffc", + "0x1562", + "0x20680017fff7ffd", "0xd", "0x40780017fff7fff", "0x1", - "0x48127ffe7fff8000", - "0x48127ff77fff8000", - "0x48127ff77fff8000", - "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", "0x480680017fff8000", "0x0", "0x48127ffa7fff8000", "0x48127ff97fff8000", "0x208b7fff7fff7ffe", - "0x48127fff7fff8000", - "0x48127ff87fff8000", - "0x48127ff87fff8000", - "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", "0x480680017fff8000", "0x1", - "0x48127ff87fff8000", - "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x1", @@ -5133,9 +5133,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2987", + "0x315d", "0x482480017fff8000", - "0x2986", + "0x315c", "0x480080007fff8000", "0x480080007fff8000", "0x484480017fff8000", @@ -5159,7 +5159,7 @@ "0x480a7ffb7fff8000", "0x48127ff17fff8000", "0x1104800180018000", - "0x1579", + "0x15fd", "0x20680017fff7ffd", "0xd", "0x40780017fff7fff", @@ -5282,9 +5282,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x28f2", + "0x30c8", "0x482480017fff8000", - "0x28f1", + "0x30c7", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -5389,6 +5389,134 @@ "0x7", "0x482680017ffa8000", "0x100000000000000000000000000000000", + "0x400280007ff67fff", + "0x10780017fff7fff", + "0x69", + "0x4825800180007ffa", + "0x0", + "0x400280007ff67fff", + "0x482680017ff68000", + "0x1", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x482480017ff68000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x303e", + "0x482480017fff8000", + "0x303d", + "0x480080007fff8000", + "0x480080047fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x141b0", + "0x480080057ffc8000", + "0x484480017fff8000", + "0x4", + "0x48307ffd7fff8000", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007ff2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff17fff", + "0x10780017fff7fff", + "0x26", + "0x48307ffe80007ff2", + "0x400080007ff27fff", + "0x482480017ff28000", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1608", + "0x20680017fff7ffd", + "0xf", + "0x40780017fff7fff", + "0x1", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fef8000", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127fea7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x482480017ff68000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff68000", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x482480017ff68000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", "0x400280007ff97fff", "0x10780017fff7fff", "0x8d", @@ -5459,9 +5587,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2841", + "0x2f97", "0x482480017fff8000", - "0x2840", + "0x2f96", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -5665,9 +5793,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x2773", + "0x2ec9", "0x482480017fff8000", - "0x2772", + "0x2ec8", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -5870,9 +5998,9 @@ "0x1", "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x26a6", + "0x2dfc", "0x482480017fff8000", - "0x26a5", + "0x2dfb", "0x480080007fff8000", "0xa0680017fff8000", "0x9", @@ -6506,7 +6634,7 @@ "0x48127ffa7fff8000", "0x48127ffa7fff8000", "0x1104800180018000", - "0x1164", + "0x138d", "0x20680017fff7ffa", "0x384", "0x20680017fff7ffd", @@ -6610,7 +6738,7 @@ "0x48127ffa7fff8000", "0x480080007ff88000", "0x1104800180018000", - "0x11b5", + "0x13de", "0x20680017fff7ffa", "0x1a", "0x20680017fff7ffd", @@ -6742,7 +6870,7 @@ "0x48127ff97fff8000", "0x48127ff97fff8000", "0x1104800180018000", - "0x1078", + "0x12a1", "0x20680017fff7ffa", "0x165", "0x20680017fff7ffd", @@ -6842,7 +6970,7 @@ "0x48127ff87fff8000", "0x48127ff87fff8000", "0x1104800180018000", - "0x1014", + "0x123d", "0x20680017fff7ffa", "0x49", "0x20680017fff7ffd", @@ -7681,7 +7809,7 @@ "0x480a7fed7fff8000", "0x480a7fee7fff8000", "0x1104800180018000", - "0xdd6", + "0xfff", "0x20680017fff7ffa", "0xdc", "0x20680017fff7fff", @@ -7721,7 +7849,7 @@ "0x480a7ff27fff8000", "0x480a7ff37fff8000", "0x1104800180018000", - "0xe2f", + "0x1058", "0x20680017fff7ffa", "0xa2", "0x20680017fff7fff", @@ -7757,7 +7885,7 @@ "0x480a7ff57fff8000", "0x480a7ff67fff8000", "0x1104800180018000", - "0xd8a", + "0xfb3", "0x20680017fff7ffa", "0x78", "0x20680017fff7fff", @@ -7802,7 +7930,7 @@ "0x480a7ff97fff8000", "0x480a7ffa7fff8000", "0x1104800180018000", - "0xd5d", + "0xf86", "0x20680017fff7ffa", "0x45", "0x20680017fff7fff", @@ -8239,7 +8367,7 @@ "0x48127ffb7fff8000", "0x48127ffa7fff8000", "0x1104800180018000", - "0xcc0", + "0xee9", "0x20680017fff7ffb", "0xb4", "0x48127ff97fff8000", @@ -8251,7 +8379,7 @@ "0x480680017fff8000", "0x0", "0x1104800180018000", - "0xd0d", + "0xf36", "0x20680017fff7ffd", "0xa1", "0x480680017fff8000", @@ -8447,26 +8575,25 @@ "0x480680017fff8000", "0x0", "0x1104800180018000", - "0xd7b", + "0xfa4", "0x20680017fff7ffd", - "0x38", + "0x37", "0x1104800180018000", - "0x1c88", + "0x23cb", "0x482480017fff8000", - "0x1c87", + "0x23ca", "0x48127ff97fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", - "0x480680017fff8000", - "0x0", - "0x48127ff77fff8000", - "0x48127ff77fff8000", - "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", "0x1104800180018000", - "0xe6d", - "0x20680017fff7ffd", - "0x21", - "0x480080007ffe8000", + "0x1098", + "0x20680017fff7ffc", + "0x22", + "0x48127fff7fff8000", + "0x480080007fff8000", "0x4824800180007fff", "0x61be55a8", "0x20680017fff7fff", @@ -8478,18 +8605,18 @@ "0x480680017fff8000", "0x57726f6e6720686173682076616c7565", "0x400080007ffe7fff", - "0x48127ff67fff8000", - "0x48127ff67fff8000", - "0x48127ff67fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", "0x480680017fff8000", "0x1", "0x48127ffa7fff8000", "0x482480017ff98000", "0x1", "0x208b7fff7fff7ffe", - "0x48127ff87fff8000", - "0x48127ff87fff8000", - "0x48127ff87fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", "0x480680017fff8000", "0x0", "0x480680017fff8000", @@ -8497,9 +8624,9 @@ "0x480680017fff8000", "0x0", "0x208b7fff7fff7ffe", - "0x48127ffa7fff8000", - "0x48127ffa7fff8000", - "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", "0x48127ffb7fff8000", "0x48127ffb7fff8000", "0x10780017fff7fff", @@ -8756,7 +8883,7 @@ "0x482480017ff48000", "0xbb448978bd42b984d7de5970bcaf5c43", "0x1104800180018000", - "0xde3", + "0xfd3", "0x20680017fff7ffd", "0x17", "0x20680017fff7ffe", @@ -9132,7 +9259,7 @@ "0x177e60492c5a8242f76f07bfe3661bd", "0x48127ff47fff8000", "0x1104800180018000", - "0xd47", + "0xf37", "0x20680017fff7ffd", "0xc", "0x48127ffa7fff8000", @@ -10382,7 +10509,7 @@ "0x483080007fff7ffd", "0x48307ffc80007ffb", "0x20680017fff7fff", - "0x102", + "0x106", "0x48127ff87fff8000", "0x48127ff87fff8000", "0x480680017fff8000", @@ -10397,7 +10524,7 @@ "0x483080007fff7ffd", "0x48307ffc80007ffb", "0x20680017fff7fff", - "0xe3", + "0xe6", "0x48127ff87fff8000", "0x48127ff87fff8000", "0x20680017fff7fff", @@ -10540,7 +10667,7 @@ "0x480680017fff8000", "0x0", "0x20680017fff7fff", - "0x12", + "0x13", "0x40780017fff7fff", "0xc", "0x40780017fff7fff", @@ -10548,13 +10675,14 @@ "0x480680017fff8000", "0x4f7074696f6e3a3a756e77726170206661696c65642e", "0x400080007ffe7fff", - "0x48127fc37fff8000", + "0x480a7ffa7fff8000", + "0x48127fc27fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x480680017fff8000", "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", + "0x48127ff97fff8000", + "0x482480017ff88000", "0x1", "0x208b7fff7fff7ffe", "0x480680017fff8000", @@ -10570,7 +10698,7 @@ "0x400280047ffd7ffb", "0x480280067ffd8000", "0x20680017fff7fff", - "0x27", + "0x28", "0x480680017fff8000", "0x161bc82433cf4a92809836390ccd14921dfc4dc410cf3d2adbfee5e21ecfec8", "0x480280057ffd8000", @@ -10587,10 +10715,11 @@ "0x4002800b7ffd7ff6", "0x4802800d7ffd8000", "0x20680017fff7fff", - "0xf", + "0x10", "0x40780017fff7fff", "0x4", - "0x48127fc37fff8000", + "0x480a7ffa7fff8000", + "0x48127fc27fff8000", "0x4802800c7ffd8000", "0x482680017ffd8000", "0xe", @@ -10615,13 +10744,14 @@ "0x9", "0x480280077ffd8000", "0x480280087ffd8000", - "0x48127fc37fff8000", - "0x48127ffb7fff8000", - "0x48127ffb7fff8000", - "0x480680017fff8000", - "0x1", + "0x480a7ffa7fff8000", + "0x48127fc27fff8000", "0x48127ffa7fff8000", "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x54", @@ -10630,13 +10760,14 @@ "0x480680017fff8000", "0x4f7074696f6e3a3a756e77726170206661696c65642e", "0x400080007ffe7fff", + "0x480a7ffa7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x480680017fff8000", "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", + "0x48127ff97fff8000", + "0x482480017ff88000", "0x1", "0x208b7fff7fff7ffe", "0x40780017fff7fff", @@ -10646,13 +10777,14 @@ "0x480680017fff8000", "0x4f7074696f6e3a3a756e77726170206661696c65642e", "0x400080007ffe7fff", + "0x480a7ffa7fff8000", "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x480a7ffd7fff8000", "0x480680017fff8000", "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", + "0x48127ff97fff8000", + "0x482480017ff88000", "0x1", "0x208b7fff7fff7ffe", "0x480680017fff8000", @@ -10957,246 +11089,374 @@ "0x480280047ffc8000", "0x480280057ffc8000", "0x208b7fff7fff7ffe", - "0x48297ffc80007ffd", + "0x40780017fff7fff", + "0x10", + "0x480680017fff8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0xa0680017fff7fff", + "0x10", + "0x20680017fff7ffd", + "0xe", + "0x20680017fff7ffc", + "0xc", + "0x20680017fff7ffb", + "0x4", + "0x10780017fff7fff", + "0x203", + "0x402480017fff7ffb", + "0x1", "0x20680017fff7fff", "0x4", "0x10780017fff7fff", - "0xa", + "0x1fd", "0x482680017ffc8000", - "0x1", - "0x480a7ffd7fff8000", + "0x4", + "0x482680017ffc8000", + "0xc", + "0x480680017fff8000", + "0x3", "0x480680017fff8000", "0x0", - "0x480a7ffc7fff8000", - "0x10780017fff7fff", - "0x8", - "0x480a7ffc7fff8000", - "0x480a7ffd7fff8000", "0x480680017fff8000", - "0x1", + "0x0", "0x480680017fff8000", "0x0", - "0x20680017fff7ffe", - "0x98", - "0x480080007fff8000", - "0xa0680017fff8000", - "0x12", - "0x4824800180007ffe", - "0x100000000", - "0x4844800180008002", - "0x8000000000000110000000000000000", - "0x4830800080017ffe", - "0x480280007ffb7fff", - "0x482480017ffe8000", - "0xefffffffffffffde00000000ffffffff", - "0x480280017ffb7fff", - "0x400280027ffb7ffb", - "0x402480017fff7ffb", - "0xffffffffffffffffffffffffffffffff", + "0x402780017ffc8004", + "0x24", + "0x400080007ffa7ffc", + "0x400080017ffa7ffd", + "0x400080027ffa7ffe", + "0x400080037ffa7fff", + "0x482480017ffa8000", + "0x4", + "0x48307fff80007ffa", "0x20680017fff7fff", - "0x78", - "0x402780017fff7fff", + "0x46", + "0x40780017fff7fff", "0x1", - "0x400280007ffb7ffe", - "0x482480017ffe8000", - "0xffffffffffffffffffffffff00000000", - "0x400280017ffb7fff", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", "0x480680017fff8000", "0x0", - "0x48307ff880007ff9", - "0x48307ffb7ffe8000", - "0xa0680017fff8000", - "0x8", - "0x482480017ffd8000", - "0x1", - "0x48307fff80007ffd", - "0x400280027ffb7fff", - "0x10780017fff7fff", - "0x51", - "0x48307ffe80007ffd", - "0x400280027ffb7fff", - "0x48307ff480007ff5", - "0x48307ffa7ff38000", - "0x48307ffb7ff28000", - "0x48307ff580017ffd", - "0xa0680017fff7fff", - "0x7", - "0x482480017fff8000", - "0x100000000000000000000000000000000", - "0x400280037ffb7fff", - "0x10780017fff7fff", - "0x2f", - "0x400280037ffb7fff", - "0x48307fef80007ff0", - "0x48307ffe7ff28000", - "0xa0680017fff8000", - "0x8", - "0x482480017ffd8000", - "0x1", - "0x48307fff80007ffd", - "0x400280047ffb7fff", - "0x10780017fff7fff", - "0x11", - "0x48307ffe80007ffd", - "0x400280047ffb7fff", - "0x40780017fff7fff", - "0x3", - "0x482680017ffb8000", - "0x5", "0x480680017fff8000", "0x0", - "0x48307fea7fe68000", - "0x48307ff77fe58000", "0x480680017fff8000", - "0x0", - "0x48127ff07fff8000", - "0x48127ff07fff8000", - "0x208b7fff7fff7ffe", + "0x416c6c20696e707574732068617665206265656e2066696c6c6564", + "0x480680017fff8000", + "0x1b", + "0x1104800180018000", + "0xae9", + "0x20680017fff7ffb", + "0x27", "0x40780017fff7fff", "0x1", "0x480680017fff8000", - "0x496e646578206f7574206f6620626f756e6473", + "0x46a6158a16a947e5916b2a2ca68501a45e93d7110e81aa2d6438b1c57c879a3", "0x400080007ffe7fff", - "0x482680017ffb8000", - "0x5", + "0x40137ffa7fff800c", + "0x40137ffb7fff800d", + "0x40137ffc7fff800e", + "0x40137ffd7fff800f", + "0x4829800c8000800d", + "0x400080017ffd7fff", + "0x48127ff77fff8000", + "0x480a7ffd7fff8000", + "0x480a800c7fff8000", + "0x480a800d7fff8000", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x2", + "0x1104800180018000", + "0xf43", + "0x20680017fff7ffd", + "0x9", + "0x400180007fff800e", + "0x400180017fff800f", + "0x48127ffe7fff8000", + "0x482480017ffe8000", + "0x2", + "0x10780017fff7fff", + "0x4", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x6", + "0x48127ffa7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a80047fff8000", + "0x48127ff97fff8000", "0x480680017fff8000", "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", "0x480680017fff8000", - "0x0", + "0x6", "0x480680017fff8000", "0x0", "0x480680017fff8000", "0x0", - "0x48127ff97fff8000", - "0x482480017ff88000", - "0x1", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x4", - "0x40780017fff7fff", - "0x1", "0x480680017fff8000", - "0x7533325f737562204f766572666c6f77", - "0x400080007ffe7fff", - "0x482680017ffb8000", + "0x0", + "0x400080007ffa7ffc", + "0x400080017ffa7ffd", + "0x400080027ffa7ffe", + "0x400080037ffa7fff", + "0x482480017ffa8000", "0x4", + "0x48307fff80007ff4", + "0x20680017fff7fff", + "0x14d", + "0x1104800180018000", + "0x197f", + "0x482480017fff8000", + "0x197e", "0x480680017fff8000", - "0x1", + "0x2", + "0x482480017ffe8000", + "0x6", "0x480680017fff8000", - "0x0", + "0x4", "0x480680017fff8000", "0x0", "0x480680017fff8000", - "0x0", - "0x48127ff97fff8000", - "0x482480017ff88000", "0x1", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x9", + "0x4824800180007feb", + "0xc", + "0x400080007fff7ffe", + "0x400080017fff7ffd", + "0x400080027fff7ffd", + "0x400080037fff7ffd", + "0x400280007ffa7fe4", + "0x400280017ffa7fe5", + "0x400280027ffa7fe6", + "0x400280037ffa7fe7", + "0x400280047ffa7fff", + "0x400280057ffa7ff9", + "0x400280067ffa7ffa", + "0x400280007ffb7fe4", + "0x400280017ffb7fe5", + "0x400280027ffb7fe6", + "0x400280037ffb7fe7", + "0x400280047ffb7fff", + "0x400280057ffb7ffb", + "0x480280067ffb8000", + "0x484480017fff8000", + "0x7", + "0x48307ffe80007ffa", + "0x20680017fff7fff", + "0xca", + "0x482480017ffc8000", + "0x20", + "0x480080007fff8000", + "0x480080017ffe8000", + "0x480080027ffd8000", + "0x480080037ffc8000", + "0x402780017ffa8005", + "0xe", + "0x40337ff97ffb800b", + "0x48307fff80007fdf", + "0x20680017fff7fff", + "0x13", + "0x48307ffd80007fdd", + "0x20680017fff7fff", + "0xb", + "0x48307ffb80007fdb", + "0x20680017fff7fff", + "0x5", + "0x48307ff980007fd9", + "0x10780017fff7fff", + "0xd", + "0x48127fff7fff8000", + "0x10780017fff7fff", + "0xa", "0x40780017fff7fff", "0x1", + "0x48127ffe7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x2", + "0x48127ffd7fff8000", + "0x4002800080047fff", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", "0x480680017fff8000", - "0x496e646578206f7574206f6620626f756e6473", - "0x400080007ffe7fff", - "0x482680017ffb8000", - "0x3", - "0x480680017fff8000", - "0x1", + "0x6", "0x480680017fff8000", "0x0", "0x480680017fff8000", "0x0", "0x480680017fff8000", "0x0", - "0x48127ff97fff8000", - "0x482480017ff88000", + "0x1104800180018000", + "0xeff", + "0x402780018004800a", "0x1", - "0x208b7fff7fff7ffe", + "0x20680017fff7fff", + "0x8b", "0x40780017fff7fff", - "0xc", - "0x482680017ffb8000", - "0x3", - "0x480680017fff8000", - "0x0", - "0x48127fe67fff8000", - "0x48127fe67fff8000", - "0x480680017fff8000", "0x1", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", "0x480680017fff8000", "0x0", "0x480680017fff8000", "0x0", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x14", - "0x480a7ffb7fff8000", "0x480680017fff8000", - "0x0", - "0x48127fe67fff8000", - "0x48127fe67fff8000", + "0x617373657274696f6e206661696c65643a20606f7574707574732e6765745f", "0x480680017fff8000", - "0x1", + "0x1f", + "0x1104800180018000", + "0xa3a", + "0x20680017fff7ffb", + "0x70", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", "0x480680017fff8000", - "0x0", + "0x6f7574707574286d756c29203d3d2075333834207b206c696d62303a20362c", "0x480680017fff8000", - "0x0", - "0x208b7fff7fff7ffe", - "0xa0680017fff8000", - "0x7", - "0x482680017ff88000", - "0xffffffffffffffffffffffffffffe1d8", - "0x400280007ff77fff", - "0x10780017fff7fff", - "0x37", - "0x4825800180007ff8", - "0x1e28", - "0x400280007ff77fff", - "0x482680017ff78000", - "0x1", - "0x20780017fff7ffd", - "0xd", - "0x48127fff7fff8000", - "0x48127ffd7fff8000", + "0x1f", + "0x1104800180018000", + "0xa2d", + "0x20680017fff7ffb", + "0x59", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", "0x480680017fff8000", - "0x0", - "0x480a7ff97fff8000", - "0x480a7ffa7fff8000", + "0x206c696d62313a20302c206c696d62323a20302c206c696d62333a2030207d", "0x480680017fff8000", - "0x0", - "0x480a7ffb7fff8000", - "0x480a7ffc7fff8000", - "0x208b7fff7fff7ffe", - "0x48127fff7fff8000", - "0x480a7ff97fff8000", - "0x480a7ffa7fff8000", + "0x1f", "0x1104800180018000", - "0x867", - "0x20680017fff7ffc", - "0x11", - "0x400280007ffc7ffd", - "0x400280017ffc7ffe", - "0x400280027ffc7fff", + "0xa20", + "0x20680017fff7ffb", + "0x42", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x602e", + "0x480680017fff8000", + "0x2", + "0x1104800180018000", + "0xa13", + "0x20680017fff7ffb", + "0x2b", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x46a6158a16a947e5916b2a2ca68501a45e93d7110e81aa2d6438b1c57c879a3", + "0x400080007ffe7fff", + "0x40137ffa7fff8006", + "0x40137ffb7fff8007", + "0x40137ffc7fff8008", + "0x40137ffd7fff8009", + "0x4829800680008007", + "0x400080017ffd7fff", + "0x48127ff77fff8000", + "0x480a7ffd7fff8000", + "0x480a80067fff8000", + "0x480a80077fff8000", "0x48127ff97fff8000", - "0x48127fd77fff8000", + "0x482480017ff88000", + "0x2", + "0x1104800180018000", + "0xe6d", + "0x20680017fff7ffd", + "0x9", + "0x400180007fff8008", + "0x400180017fff8009", + "0x48127ffe7fff8000", + "0x482480017ffe8000", + "0x2", + "0x10780017fff7fff", + "0x4", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ff97fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", "0x48127ff87fff8000", "0x48127ff87fff8000", - "0x480a7ffb7fff8000", - "0x482680017ffc8000", - "0x3", - "0x4825800180007ffd", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", "0x1", - "0x1104800180018000", - "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd5", + "0x48127ff87fff8000", + "0x48127ff87fff8000", "0x208b7fff7fff7ffe", - "0x48127ff97fff8000", - "0x48127fd77fff8000", + "0x48127ffa7fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x480a7ffd7fff8000", "0x480680017fff8000", - "0x0", - "0x48127ff77fff8000", - "0x48127ff77fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x480a7ffd7fff8000", "0x480680017fff8000", "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a80057fff8000", + "0x480a800b7fff8000", + "0x480a800a7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", "0x480680017fff8000", "0x0", "0x480680017fff8000", @@ -11205,57 +11465,179 @@ "0x40780017fff7fff", "0x1", "0x480680017fff8000", - "0x4f7574206f6620676173", + "0x526573756c743a3a756e77726170206661696c65642e", "0x400080007ffe7fff", - "0x482680017ff78000", - "0x1", - "0x480a7ff87fff8000", - "0x480680017fff8000", - "0x1", - "0x480680017fff8000", - "0x0", + "0x48327ffc7ffb8000", "0x480680017fff8000", "0x0", "0x480680017fff8000", - "0x0", - "0x48127ff87fff8000", - "0x482480017ff78000", "0x1", - "0x208b7fff7fff7ffe", - "0xa0680017fff8000", + "0x484480017ff88000", + "0x3", + "0x48307fff7ff28000", + "0x400080027fff7ffc", + "0x480080017fff8000", + "0x480080007ffe8000", + "0x48317ff380008004", + "0x4002800080047ff9", + "0x4002800180047ff9", + "0x4002800280047ff9", + "0x4002800380047ff9", + "0x4800800080007ffe", + "0x400080017fff7ffc", + "0x400080027fff7ffe", + "0x4002800480047ff2", + "0x48307ff280007fee", + "0x4002800580047fff", + "0x400080007ff67fd5", + "0x400080017ff67fd6", + "0x400080027ff67fd7", + "0x400080037ff67fd8", + "0x400080047ff67ff0", + "0x400080057ff67ffe", + "0x400080067ff67ff8", + "0x48307ffc7ff08000", + "0x480080007fff8000", + "0x480080017ffe8000", + "0x480080027ffd8000", + "0x480080037ffc8000", + "0x20680017fff7ffc", + "0x9", + "0x20680017fff7ffd", "0x7", - "0x482680017ff98000", - "0xfffffffffffffffffffffffffffff33a", - "0x400280007ff87fff", - "0x10780017fff7fff", - "0x68", - "0x4825800180007ff9", - "0xcc6", - "0x400280007ff87fff", - "0x482680017ff88000", + "0x20680017fff7ffe", + "0x5", + "0x20680017fff7fff", + "0x3", + "0x40127ff27fff7ff3", + "0x482680017ffa8000", + "0xe", + "0x48127fee7fff8000", + "0x482480017fed8000", "0x1", - "0x48297ffa80007ffb", + "0x4826800180048000", + "0x6", + "0x482480017fed8000", + "0x7", + "0x48307ffa80007fce", "0x20680017fff7fff", - "0x4", + "0x13", + "0x48307ff880007fcc", + "0x20680017fff7fff", + "0xb", + "0x48307ff680007fca", + "0x20680017fff7fff", + "0x5", + "0x48307ff480007fc8", + "0x10780017fff7fff", + "0xd", + "0x48127fff7fff8000", "0x10780017fff7fff", "0xa", - "0x482680017ffa8000", + "0x40780017fff7fff", "0x1", - "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x2", + "0x48127ffd7fff8000", + "0x400080007ffa7fff", + "0x480a7ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff97fff8000", + "0x482480017ff78000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", "0x480680017fff8000", "0x0", - "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x4e6f7420616c6c20696e707574732068617665206265656e2066696c6c6564", + "0x480680017fff8000", + "0x1f", + "0x1104800180018000", + "0x949", + "0x20680017fff7ffb", + "0x27", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x46a6158a16a947e5916b2a2ca68501a45e93d7110e81aa2d6438b1c57c879a3", + "0x400080007ffe7fff", + "0x40137ffa7fff8000", + "0x40137ffb7fff8001", + "0x40137ffc7fff8002", + "0x40137ffd7fff8003", + "0x4829800080008001", + "0x400080017ffd7fff", + "0x48127ff77fff8000", + "0x480a7ffd7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x2", + "0x1104800180018000", + "0xda3", + "0x20680017fff7ffd", + "0x9", + "0x400180007fff8002", + "0x400180017fff8003", + "0x48127ffe7fff8000", + "0x482480017ffe8000", + "0x2", "0x10780017fff7fff", - "0x8", + "0x4", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x6", + "0x48127ffa7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", "0x480a7ffa7fff8000", "0x480a7ffb7fff8000", + "0x480a80047fff8000", + "0x48127ff97fff8000", "0x480680017fff8000", "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", "0x480680017fff8000", - "0x0", - "0x20680017fff7ffe", - "0x43", - "0x480080007fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", "0x48297ffc80007ffd", "0x20680017fff7fff", "0x4", @@ -11276,38 +11658,109 @@ "0x480680017fff8000", "0x0", "0x20680017fff7ffe", - "0x1a", + "0x98", "0x480080007fff8000", - "0x48307fff80007ff9", - "0x20680017fff7fff", - "0xb", - "0x48127ff27fff8000", + "0xa0680017fff8000", + "0x12", + "0x4824800180007ffe", + "0x100000000", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffb7fff", + "0x482480017ffe8000", + "0xefffffffffffffde00000000ffffffff", + "0x480280017ffb7fff", + "0x400280027ffb7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x78", + "0x402780017fff7fff", + "0x1", + "0x400280007ffb7ffe", + "0x482480017ffe8000", + "0xffffffffffffffffffffffff00000000", + "0x400280017ffb7fff", + "0x480680017fff8000", + "0x0", + "0x48307ff880007ff9", + "0x48307ffb7ffe8000", + "0xa0680017fff8000", + "0x8", + "0x482480017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400280027ffb7fff", + "0x10780017fff7fff", + "0x51", + "0x48307ffe80007ffd", + "0x400280027ffb7fff", + "0x48307ff480007ff5", + "0x48307ffa7ff38000", + "0x48307ffb7ff28000", + "0x48307ff580017ffd", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280037ffb7fff", + "0x10780017fff7fff", + "0x2f", + "0x400280037ffb7fff", + "0x48307fef80007ff0", + "0x48307ffe7ff28000", + "0xa0680017fff8000", + "0x8", + "0x482480017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400280047ffb7fff", + "0x10780017fff7fff", + "0x11", + "0x48307ffe80007ffd", + "0x400280047ffb7fff", + "0x40780017fff7fff", + "0x3", + "0x482680017ffb8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x48307fea7fe68000", + "0x48307ff77fe58000", + "0x480680017fff8000", + "0x0", "0x48127ff07fff8000", - "0x48127ff27fff8000", - "0x48127ff27fff8000", - "0x48127ff67fff8000", - "0x48127ff67fff8000", - "0x1104800180018000", - "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc0", - "0x208b7fff7fff7ffe", - "0x48127ff27fff8000", "0x48127ff07fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482680017ffb8000", + "0x5", + "0x480680017fff8000", + "0x1", "0x480680017fff8000", "0x0", - "0x48127ff17fff8000", - "0x48127ff17fff8000", - "0x48127ff57fff8000", - "0x48127ff57fff8000", "0x480680017fff8000", "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", "0x208b7fff7fff7ffe", "0x40780017fff7fff", + "0x4", + "0x40780017fff7fff", "0x1", "0x480680017fff8000", - "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x7533325f737562204f766572666c6f77", "0x400080007ffe7fff", - "0x48127ff27fff8000", - "0x48127ff07fff8000", + "0x482680017ffb8000", + "0x4", "0x480680017fff8000", "0x1", "0x480680017fff8000", @@ -11316,29 +11769,128 @@ "0x0", "0x480680017fff8000", "0x0", - "0x48127ff87fff8000", - "0x482480017ff78000", + "0x48127ff97fff8000", + "0x482480017ff88000", "0x1", "0x208b7fff7fff7ffe", - "0x48127ffa7fff8000", - "0x48127ff87fff8000", + "0x40780017fff7fff", + "0x9", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482680017ffb8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", "0x480680017fff8000", "0x0", "0x48127ff97fff8000", - "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc", + "0x482680017ffb8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127fe67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127fe67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ff88000", + "0xffffffffffffffffffffffffffffe1d8", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x37", + "0x4825800180007ff8", + "0x1e28", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", - "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0xcfe", + "0x20680017fff7ffc", + "0x11", + "0x400280007ffc7ffd", + "0x400280017ffc7ffe", + "0x400280027ffc7fff", + "0x48127ff97fff8000", + "0x48127fd77fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x3", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd5", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127fd77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", "0x480680017fff8000", "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x1", "0x480680017fff8000", "0x4f7574206f6620676173", "0x400080007ffe7fff", - "0x482680017ff88000", + "0x482680017ff78000", "0x1", - "0x480a7ff97fff8000", + "0x480a7ff87fff8000", "0x480680017fff8000", "0x1", "0x480680017fff8000", @@ -11354,12 +11906,12 @@ "0xa0680017fff8000", "0x7", "0x482680017ff98000", - "0xffffffffffffffffffffffffffffef52", + "0xfffffffffffffffffffffffffffff33a", "0x400280007ff87fff", "0x10780017fff7fff", - "0x7e", + "0x68", "0x4825800180007ff9", - "0x10ae", + "0xcc6", "0x400280007ff87fff", "0x482680017ff88000", "0x1", @@ -11369,7 +11921,7 @@ "0x10780017fff7fff", "0xa", "0x482680017ffa8000", - "0x3", + "0x1", "0x480a7ffb7fff8000", "0x480680017fff8000", "0x0", @@ -11383,17 +11935,15 @@ "0x480680017fff8000", "0x0", "0x20680017fff7ffe", - "0x59", + "0x43", "0x480080007fff8000", - "0x480080017ffe8000", - "0x480080027ffd8000", "0x48297ffc80007ffd", "0x20680017fff7fff", "0x4", "0x10780017fff7fff", "0xa", "0x482680017ffc8000", - "0x3", + "0x1", "0x480a7ffd7fff8000", "0x480680017fff8000", "0x0", @@ -11407,29 +11957,160 @@ "0x480680017fff8000", "0x0", "0x20680017fff7ffe", - "0x2e", + "0x1a", "0x480080007fff8000", - "0x480080017ffe8000", - "0x480080027ffd8000", - "0x48307ffd80007ff5", - "0x20680017fff7fff", - "0x1b", - "0x48307ffd80007ff5", - "0x20680017fff7fff", - "0x4", - "0x10780017fff7fff", - "0x6", - "0x40780017fff7fff", - "0x1", - "0x10780017fff7fff", - "0x14", - "0x48307ffd80007ff5", + "0x48307fff80007ff9", "0x20680017fff7fff", - "0x4", - "0x10780017fff7fff", - "0x4", - "0x10780017fff7fff", - "0xd", + "0xb", + "0x48127ff27fff8000", + "0x48127ff07fff8000", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc0", + "0x208b7fff7fff7ffe", + "0x48127ff27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x48127ff27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ff98000", + "0xffffffffffffffffffffffffffffef52", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x7e", + "0x4825800180007ff9", + "0x10ae", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x3", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x59", + "0x480080007fff8000", + "0x480080017ffe8000", + "0x480080027ffd8000", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x3", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x2e", + "0x480080007fff8000", + "0x480080017ffe8000", + "0x480080027ffd8000", + "0x48307ffd80007ff5", + "0x20680017fff7fff", + "0x1b", + "0x48307ffd80007ff5", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x40780017fff7fff", + "0x1", + "0x10780017fff7fff", + "0x14", + "0x48307ffd80007ff5", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xd", "0x48127fec7fff8000", "0x48127fea7fff8000", "0x48127fec7fff8000", @@ -11541,7 +12222,7 @@ "0x480080007ffc8000", "0x480080017ffb8000", "0x1104800180018000", - "0x7a5", + "0xc3c", "0x20680017fff7ffd", "0xb", "0x48127ffc7fff8000", @@ -11815,7 +12496,7 @@ "0x48127ff87fff8000", "0x48127ffb7fff8000", "0x1104800180018000", - "0x730", + "0xbc7", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x1", @@ -12049,7 +12730,7 @@ "0x48127ff27fff8000", "0x48307ffc80007ffd", "0x1104800180018000", - "0x699", + "0xb30", "0x484480017f9f8000", "0x20", "0xa0680017fff8000", @@ -12157,157 +12838,99 @@ "0x208b7fff7fff7ffe", "0xa0680017fff8000", "0x7", - "0x482680017ff88000", - "0xffffffffffffffffffffffffffffc752", - "0x400280007ff77fff", - "0x10780017fff7fff", - "0x87", - "0x4825800180007ff8", - "0x38ae", - "0x400280007ff77fff", - "0x48297ffb80007ffc", - "0x482680017ff78000", - "0x1", - "0x48317ffe80007ffa", - "0x20680017fff7fff", - "0x4", + "0x482680017ff98000", + "0xffffffffffffffffffffffffffffcd10", + "0x400280007ff87fff", "0x10780017fff7fff", - "0x74", - "0x480680017fff8000", - "0x10", - "0x48297ffb80007ffc", - "0x48327ffe7ffa8000", + "0x4b", + "0x4825800180007ff9", + "0x32f0", + "0x400280007ff87fff", "0xa0680017fff8000", "0x8", - "0x482480017ffd8000", - "0x1", - "0x48307fff80007ffd", - "0x400080007ff87fff", + "0x48297ffc80007ffb", + "0x482480017fff8000", + "0xf", + "0x400280017ff87fff", "0x10780017fff7fff", - "0x59", - "0x48307ffe80007ffd", - "0x400080007ff97fff", - "0x482a7ffa7ffb8000", - "0x48327ffc7ffb8000", - "0x482480017ff78000", - "0x1", - "0x48307ffd80007ffe", - "0x4824800180007fff", + "0xf", + "0x482680017ffb8001", "0x10", - "0x20680017fff7fff", - "0x40", + "0x483180007fff7ffc", + "0x400280017ff87ffe", + "0x482680017ff88000", + "0x2", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x10780017fff7fff", + "0xa", + "0x482680017ff88000", + "0x2", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x20", "0x480680017fff8000", "0x53686132353650726f63657373426c6f636b", - "0x400280007ff97fff", - "0x400280017ff97ff1", - "0x400380027ff97ffd", - "0x400280037ff97ffa", - "0x480280057ff98000", + "0x400280007ffa7fff", + "0x400280017ffa7ff6", + "0x400380027ffa7ffd", + "0x400280037ffa7ffe", + "0x480280057ffa8000", "0x20680017fff7fff", - "0x2e", - "0x480680017fff8000", - "0x10", - "0x480280047ff98000", - "0x482680017ff98000", + "0xc", + "0x48127ff97fff8000", + "0x480280047ffa8000", + "0x482680017ffa8000", "0x7", - "0x480280067ff98000", - "0xa0680017fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480280067ffa8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc8", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x480280047ffa8000", + "0x482680017ffa8000", "0x8", - "0x48327ffb7ffa8000", - "0x4824800180007fff", - "0x100000000", - "0x400080007ff47fff", - "0x10780017fff7fff", - "0x11", - "0x48327ffb7ffa8001", - "0x4824800180007fff", - "0xffffffffffffffffffffffff00000000", - "0x400080007ff47ffe", - "0x482480017ff48000", + "0x480680017fff8000", "0x1", - "0x48127ff97fff8000", - "0x48127ff97fff8000", - "0x48127ffc7fff8000", - "0x480a7ffb7fff8000", - "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480280067ffa8000", + "0x480280077ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", "0x48127ff67fff8000", - "0x1104800180018000", - "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb5", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffd7fff8000", "0x208b7fff7fff7ffe", "0x40780017fff7fff", "0x1", "0x480680017fff8000", - "0x7533325f616464204f766572666c6f77", + "0x4f7574206f6620676173", "0x400080007ffe7fff", - "0x482480017ff28000", + "0x482680017ff88000", "0x1", - "0x48127ff77fff8000", - "0x48127ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", "0x480680017fff8000", "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", - "0x1", - "0x208b7fff7fff7ffe", - "0x48127ffb7fff8000", - "0x480280047ff98000", - "0x482680017ff98000", - "0x8", - "0x480680017fff8000", - "0x1", - "0x480280067ff98000", - "0x480280077ff98000", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x1", - "0x480680017fff8000", - "0x4f7074696f6e3a3a756e77726170206661696c65642e", - "0x400080007ffe7fff", - "0x48127ffb7fff8000", - "0x48127fef7fff8000", - "0x480a7ff97fff8000", - "0x480680017fff8000", - "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", - "0x1", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x1", - "0x480680017fff8000", - "0x496e646578206f7574206f6620626f756e6473", - "0x400080007ffe7fff", - "0x482480017ff68000", - "0x1", - "0x48127ff37fff8000", - "0x480a7ff97fff8000", - "0x480680017fff8000", - "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", - "0x1", - "0x208b7fff7fff7ffe", - "0x48127ffe7fff8000", - "0x48127ffb7fff8000", - "0x480a7ff97fff8000", "0x480680017fff8000", "0x0", - "0x480a7ffd7fff8000", - "0x480a7ffa7fff8000", - "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x1", - "0x480680017fff8000", - "0x4f7574206f6620676173", - "0x400080007ffe7fff", - "0x482680017ff78000", - "0x1", - "0x480a7ff87fff8000", - "0x480a7ff97fff8000", - "0x480680017fff8000", - "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", + "0x48127ff97fff8000", + "0x482480017ff88000", "0x1", "0x208b7fff7fff7ffe", "0x4825800180007ff8", @@ -12436,7 +13059,7 @@ "0x480a7ffb7fff8000", "0x480a7ffc7fff8000", "0x1104800180018000", - "0x5f6", + "0xac7", "0x20680017fff7ffd", "0x3e", "0x20680017fff7ffe", @@ -12447,7 +13070,7 @@ "0x48127ff97fff8000", "0x48127ffb7fff8000", "0x1104800180018000", - "0x8ad", + "0xd7e", "0x20680017fff7ffd", "0x1b", "0x48317fff80007ffd", @@ -13037,7 +13660,7 @@ "0x480680017fff8000", "0xffffffff00000000ffffffffffffffff", "0x1104800180018000", - "0x726", + "0xbf7", "0x48127ffd7fff8000", "0x480a7ff97fff8000", "0x480a7ffa7fff8000", @@ -13048,7 +13671,7 @@ "0x480680017fff8000", "0xffffffff00000000ffffffffffffffff", "0x1104800180018000", - "0x71b", + "0xbec", "0x480680017fff8000", "0x77037d812deb33a0f4a13945d898c296", "0x480680017fff8000", @@ -13217,107 +13840,1340 @@ "0x480280067ff68000", "0x482680017ff68000", "0xa", - "0x480280087ff68000", - "0x480280097ff68000", - "0x48127fde7fff8000", - "0x48127ffb7fff8000", - "0x48127ffb7fff8000", + "0x480280087ff68000", + "0x480280097ff68000", + "0x48127fde7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x28f", + "0x4824800180008002", + "0xffffffffffffffff0000000000000000", + "0x480080077d5c8001", + "0x480080087d5b7ffe", + "0x400080097d5a7ffe", + "0x484480017ffe8000", + "0x10000000000000000", + "0x40307ffc7fff7d5f", + "0x48507d637ffc8000", + "0x48507d627ffc8000", + "0x4824800180018002", + "0xffffffffffffffff0000000000000000", + "0x4800800a7d568001", + "0x4800800b7d557fff", + "0x4000800c7d547ffd", + "0x484480017ffd8000", + "0x10000000000000000", + "0x40307ffd7fff7ffb", + "0x484480017ffd8000", + "0x10000000000000000", + "0x48307fff7ff98003", + "0x482480017fff8000", + "0xfffffffffffffffe0000000000000000", + "0x4800800d7d507fff", + "0x4800800e7d4f7ffd", + "0x4000800f7d4e7d52", + "0x404480017ffc7ffe", + "0x100000000000000000000000000000000", + "0x40307d527ffe7fff", + "0x40307ffc7ff77d5c", + "0x4824800180008002", + "0xffffffffffffffff0000000000000000", + "0x480080107d4d8001", + "0x480080117d4c7ffe", + "0x400080127d4b7ffe", + "0x484480017ffe8000", + "0x10000000000000000", + "0x40307ffc7fff7d50", + "0x48507d527ffc8000", + "0x48507d517ffc8000", + "0x4824800180018002", + "0xffffffffffffffff0000000000000000", + "0x480080137d478001", + "0x480080147d467fff", + "0x400080157d457ffd", + "0x484480017ffd8000", + "0x10000000000000000", + "0x40307ffd7fff7ffb", + "0x484480017ffd8000", + "0x10000000000000000", + "0x48307fff7ff98003", + "0x482480017fff8000", + "0xfffffffffffffffe0000000000000000", + "0x480080167d417fff", + "0x480080177d407ffd", + "0x400180187d3f7ffb", + "0x404480017ffc7ffe", + "0x100000000000000000000000000000000", + "0x40287ffb7ffe7fff", + "0x40307ffc7ff77d4c", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x482480017d3d8000", + "0x19", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2bf", + "0x48127d3d7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x2d8", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x4825800180007ffd", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x462", + "0xa0680017fff8000", + "0x8", + "0x482a7ffd7ffb8000", + "0x4824800180007fff", + "0x100000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x447", + "0x482a7ffd7ffb8001", + "0x4824800180007fff", + "0xffffffffffffffffffffffff00000000", + "0x400280007ff77ffe", + "0x480680017fff8000", + "0x1f", + "0x48307fff80017ffe", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280017ff77fff", + "0x10780017fff7fff", + "0x3ab", + "0x400280017ff77fff", + "0x482680017ff78000", + "0x2", + "0x4824800180007ffb", + "0x1f", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x317", + "0x480680017fff8000", + "0x1f", + "0x48307fff80017ff9", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0x2fa", + "0x400080007ffb7fff", + "0x482480017ffb8000", + "0x1", + "0x4824800180007ffe", + "0x10", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x22b", + "0x480680017fff8000", + "0x10", + "0x48307fff80017ffc", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0x10d", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0xf", + "0xa0680017fff8000", + "0x16", + "0x480080017feb8003", + "0x480080027fea8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffc", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400080037fe67ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400180017feb7ffc", + "0x40780017fff7fff", + "0x5", + "0x482480017fe68000", + "0x2", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017fe68000", + "0x4", + "0x48127ffe7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x10", + "0x48307fff80017fe1", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff97fff", + "0x10780017fff7fff", + "0xc6", + "0x400080007ffa7fff", + "0x482480017ffa8000", + "0x1", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xc8b", + "0x20680017fff7ffd", + "0xb7", + "0x20680017fff7fff", + "0xf", + "0x40780017fff7fff", + "0x2a", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x48127fd07fff8000", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0xbb", + "0x480080007ffc8005", + "0x480080017ffb8005", + "0x4824800180047ffe", + "0x1", + "0x48307ffd7ffe7ffc", + "0x480080027ff87ffd", + "0xa0680017fff7ffd", + "0x6", + "0x482480017ff97ffd", + "0xffffffffffffffff0000000000000000", + "0x10780017fff7fff", + "0x4", + "0x482480017fff7ffd", + "0xffffffffffffffff0000000000000000", + "0x400080037ff57ffc", + "0x40507ffe7ff87ffd", + "0x40307fff7ffd7fe7", + "0x480680017fff8000", + "0x1f", + "0x48287ffb80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080047ff17fff", + "0x10780017fff7fff", + "0x7f", + "0x400080047ff27fff", + "0x484480017ffc8000", + "0x100000000000000000000000000000000", + "0x480680017fff8000", + "0x10", + "0x48307fe17ffe8000", + "0x48307ffe80017ffc", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080057fec7fff", + "0x10780017fff7fff", + "0x2f", + "0x400080057fed7fff", + "0x480680017fff8000", + "0x10", + "0x48307fff80017ff9", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080067fe97fff", + "0x10780017fff7fff", + "0x16", + "0x400080067fea7fff", + "0x482480017fea8000", + "0x7", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xc40", + "0x20680017fff7ffd", + "0x7", + "0x48127ffc7fff8000", + "0x484480017ffe8000", + "0x100000000000000000000000000000000", + "0x10780017fff7fff", + "0x22", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0x50", + "0x40780017fff7fff", + "0x17", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fd08000", + "0x7", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x42", + "0x40780017fff7fff", + "0x2", + "0x482480017fea8000", + "0x6", + "0x48127ff67fff8000", + "0x1104800180018000", + "0xc1d", + "0x20680017fff7ffd", + "0x34", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x48527fff7ffa8000", + "0x48307fff7fe28000", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x100000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x7000000000000110000000000000000", + "0x48307ffe7fff8002", + "0x480080007ff87ffc", + "0x480080017ff77ffc", + "0x402480017ffb7ffd", + "0xf8ffffffffffffeeffffffffffffffff", + "0x400080027ff67ffd", + "0x10780017fff7fff", + "0x16", + "0x484480017fff8001", + "0x1000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480080007ff97ffd", + "0x480080017ff87ffd", + "0x402480017ffc7ffe", + "0xff000000000000000000000000000000", + "0x400080027ff77ffe", + "0x40780017fff7fff", + "0x1", + "0x400280007ff97ff9", + "0x482480017ff68000", + "0x3", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x48127fdf7fff8000", + "0x480a7ffb7fff8000", + "0x10780017fff7fff", + "0x10d", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x482480017ff48000", + "0x3", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x2a", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0x23", + "0x40780017fff7fff", + "0x1f", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fd08000", + "0x5", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x15", + "0x40780017fff7fff", + "0x2c", + "0x48127fd07fff8000", + "0x48127fd17fff8000", + "0x48127fd17fff8000", + "0x10780017fff7fff", + "0xe", + "0x40780017fff7fff", + "0x37", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fc08000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480080017ff98003", + "0x480080027ff88003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffc", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400080037ff47ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400180017ff97ffc", + "0x40780017fff7fff", + "0x5", + "0x482480017ff48000", + "0x2", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017ff48000", + "0x4", + "0x48127ffe7fff8000", + "0x48127ffc7fff8000", + "0x48127ffd7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0xb8f", + "0x20680017fff7ffd", + "0xdd", + "0x20680017fff7fff", + "0xf", + "0x40780017fff7fff", + "0x3b", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x48127fbf7fff8000", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0xd3", + "0x480080007ffc8005", + "0x480080017ffb8005", + "0x4824800180047ffe", + "0x1", + "0x48307ffd7ffe7ffc", + "0x480080027ff87ffd", + "0xa0680017fff7ffd", + "0x6", + "0x482480017ff97ffd", + "0xffffffffffffffff0000000000000000", + "0x10780017fff7fff", + "0x4", + "0x482480017fff7ffd", + "0xffffffffffffffff0000000000000000", + "0x400080037ff57ffc", + "0x40507ffe7ff87ffd", + "0x40307fff7ffd7fe9", + "0x480680017fff8000", + "0x10", + "0x48307fda80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080047ff17fff", + "0x10780017fff7fff", + "0xa5", + "0x400080047ff27fff", + "0x482480017ff28000", + "0x5", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xb5d", + "0x20680017fff7ffd", + "0x96", + "0x480680017fff8000", + "0x1f", + "0x48287ffb80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff87fff", + "0x10780017fff7fff", + "0x7e", + "0x400080007ff97fff", + "0x48507ffc7fd68000", + "0x480680017fff8000", + "0x10", + "0x48307fe87ffe8000", + "0x48307ffe80017ffc", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff37fff", + "0x10780017fff7fff", + "0x2f", + "0x400080017ff47fff", + "0x480680017fff8000", + "0x10", + "0x48307fff80017ff9", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080027ff07fff", + "0x10780017fff7fff", + "0x16", + "0x400080027ff17fff", + "0x482480017ff18000", + "0x3", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xb33", + "0x20680017fff7ffd", + "0x7", + "0x48127ffc7fff8000", + "0x484480017ffe8000", + "0x100000000000000000000000000000000", + "0x10780017fff7fff", + "0x22", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0x50", + "0x40780017fff7fff", + "0x17", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fd78000", + "0x3", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x42", + "0x40780017fff7fff", + "0x2", + "0x482480017ff18000", + "0x2", + "0x48127ff67fff8000", + "0x1104800180018000", + "0xb10", + "0x20680017fff7ffd", + "0x34", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x48527fff7ffa8000", + "0x48307fff7fe98000", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x100000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x7000000000000110000000000000000", + "0x48307ffe7fff8002", + "0x480080007ff87ffc", + "0x480080017ff77ffc", + "0x402480017ffb7ffd", + "0xf8ffffffffffffeeffffffffffffffff", + "0x400080027ff67ffd", + "0x10780017fff7fff", + "0x16", + "0x484480017fff8001", + "0x1000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480080007ff97ffd", + "0x480080017ff87ffd", + "0x402480017ffc7ffe", + "0xff000000000000000000000000000000", + "0x400080027ff77ffe", + "0x40780017fff7fff", + "0x1", + "0x400280007ff97ff9", + "0x482480017ff68000", + "0x3", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x48127fc87fff8000", + "0x480a7ffb7fff8000", + "0x10780017fff7fff", + "0xdc", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x482480017ff48000", + "0x3", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x31", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0x2a", + "0x40780017fff7fff", + "0x1f", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fd78000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x1c", + "0x40780017fff7fff", + "0x25", + "0x48127fd77fff8000", + "0x48127fd87fff8000", + "0x48127fd87fff8000", + "0x10780017fff7fff", + "0x15", + "0x40780017fff7fff", + "0x30", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fbf8000", + "0x5", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x7", + "0x40780017fff7fff", + "0x3d", + "0x48127fbf7fff8000", + "0x48127fc07fff8000", + "0x48127fc07fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2c", + "0xa0680017fff8000", + "0x16", + "0x480080007fd18003", + "0x480080017fd08003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffc", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400080027fcc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400180007fd17ffc", + "0x40780017fff7fff", + "0x5", + "0x482480017fcc8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017fcc8000", + "0x3", + "0x48127ffe7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x1f", + "0x48287ffb80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff97fff", + "0x10780017fff7fff", + "0x82", + "0x400080007ffa7fff", + "0x480680017fff8000", + "0x10", + "0x48307fff80017ffe", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff67fff", + "0x10780017fff7fff", + "0x2f", + "0x400080017ff77fff", + "0x480680017fff8000", + "0x10", + "0x48307fff80017ffb", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080027ff37fff", + "0x10780017fff7fff", + "0x16", + "0x400080027ff47fff", + "0x482480017ff48000", + "0x3", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xa57", + "0x20680017fff7ffd", + "0x7", + "0x48127ffc7fff8000", + "0x484480017ffe8000", + "0x100000000000000000000000000000000", + "0x10780017fff7fff", + "0x22", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0x56", + "0x40780017fff7fff", + "0x17", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fda8000", + "0x3", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x48", + "0x40780017fff7fff", + "0x2", + "0x482480017ff48000", + "0x2", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xa34", + "0x20680017fff7ffd", + "0x3a", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x48527fff7ffa8000", + "0x48307fff7fe58000", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x100000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x7000000000000110000000000000000", + "0x48307ffe7fff8002", + "0x480080007ff87ffc", + "0x480080017ff77ffc", + "0x402480017ffb7ffd", + "0xf8ffffffffffffeeffffffffffffffff", + "0x400080027ff67ffd", + "0x10780017fff7fff", + "0x1c", + "0x484480017fff8001", + "0x1000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480080007ff97ffd", + "0x480080017ff87ffd", + "0x402480017ffc7ffe", + "0xff000000000000000000000000000000", + "0x400080027ff77ffe", + "0x40780017fff7fff", + "0x1", + "0x400280007ff97ff9", + "0x482480017ff68000", + "0x3", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f9d7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x482480017ff48000", + "0x3", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x15", + "0x40780017fff7fff", + "0xc", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x10780017fff7fff", + "0xe", + "0x40780017fff7fff", + "0x1d", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fda8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x5a", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017f9e8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x40", + "0x480680017fff8000", + "0x10", + "0x48317fff80017ffd", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fba7fff", + "0x10780017fff7fff", + "0x2f", + "0x400080007fbb7fff", + "0x480680017fff8000", + "0x10", + "0x48317fff80017ffd", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017fb77fff", + "0x10780017fff7fff", + "0x16", + "0x400080017fb87fff", + "0x482480017fb88000", + "0x2", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x9ad", + "0x20680017fff7ffd", + "0x7", + "0x48127ffc7fff8000", + "0x484480017ffe8000", + "0x100000000000000000000000000000000", + "0x10780017fff7fff", + "0x22", + "0x40780017fff7fff", + "0x9", + "0x48127ff37fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x10780017fff7fff", + "0x58", + "0x40780017fff7fff", + "0x14", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fa18000", + "0x2", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x4a", + "0x40780017fff7fff", + "0x2", + "0x482480017fb88000", + "0x1", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x98a", + "0x20680017fff7ffd", + "0x3c", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x48527fff7ffa8000", + "0x48327fff7ffc8000", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x100000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x7000000000000110000000000000000", + "0x48307ffe7fff8002", + "0x480080007ff87ffc", + "0x480080017ff77ffc", + "0x402480017ffb7ffd", + "0xf8ffffffffffffeeffffffffffffffff", + "0x400080027ff67ffd", + "0x10780017fff7fff", + "0x19", + "0x484480017fff8001", + "0x1000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480080007ff97ffd", + "0x480080017ff87ffd", + "0x402480017ffc7ffe", + "0xff000000000000000000000000000000", + "0x400080027ff77ffe", + "0x40780017fff7fff", + "0x3", + "0x400280007ff97ff7", + "0x482480017ff48000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x482480017ff48000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x9", + "0x48127ff37fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x44", + "0x482680017ff78000", + "0x2", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x7c", + "0x480680017fff8000", + "0x10", + "0x48317fff80017ffd", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0x2f", + "0x400080007ffb7fff", + "0x480680017fff8000", + "0x10", + "0x48317fff80017ffd", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff77fff", + "0x10780017fff7fff", + "0x16", + "0x400080017ff87fff", + "0x482480017ff88000", + "0x2", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x91a", + "0x20680017fff7ffd", + "0x7", + "0x48127ffc7fff8000", + "0x484480017ffe8000", + "0x100000000000000000000000000000000", + "0x10780017fff7fff", + "0x22", + "0x40780017fff7fff", + "0x4", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x49", + "0x40780017fff7fff", + "0xf", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017fe68000", + "0x2", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x10780017fff7fff", + "0x3b", + "0x40780017fff7fff", + "0x2", + "0x482480017ff88000", + "0x1", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x8f7", + "0x20680017fff7ffd", + "0x2d", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0xa0680017fff8000", + "0x8", + "0x482a7ffd7ffb8000", + "0x4824800180007fff", + "0x100000000", + "0x400080007ffb7fff", + "0x10780017fff7fff", + "0x12", + "0x482a7ffd7ffb8001", + "0x4824800180007fff", + "0xffffffffffffffffffffffff00000000", + "0x400080007ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x48527ffb7ffa8000", + "0x482480017ff98000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48327ffb7ffc8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f616464204f766572666c6f77", + "0x400080007ffe7fff", + "0x482480017ff98000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1b", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x63", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7533325f616464204f766572666c6f77", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x68", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ff98000", + "0xfffffffffffffffffffffffffffff722", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x2f", + "0x4825800180007ff9", + "0x8de", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", "0x480680017fff8000", "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0xe", + "0x480080007fff8000", + "0x400280007ffd7fff", + "0x48127ff97fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd7", + "0x208b7fff7fff7ffe", "0x48127ffa7fff8000", - "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", "0x208b7fff7fff7ffe", "0x40780017fff7fff", - "0x28f", - "0x4824800180008002", - "0xffffffffffffffff0000000000000000", - "0x480080077d5c8001", - "0x480080087d5b7ffe", - "0x400080097d5a7ffe", - "0x484480017ffe8000", - "0x10000000000000000", - "0x40307ffc7fff7d5f", - "0x48507d637ffc8000", - "0x48507d627ffc8000", - "0x4824800180018002", - "0xffffffffffffffff0000000000000000", - "0x4800800a7d568001", - "0x4800800b7d557fff", - "0x4000800c7d547ffd", - "0x484480017ffd8000", - "0x10000000000000000", - "0x40307ffd7fff7ffb", - "0x484480017ffd8000", - "0x10000000000000000", - "0x48307fff7ff98003", - "0x482480017fff8000", - "0xfffffffffffffffe0000000000000000", - "0x4800800d7d507fff", - "0x4800800e7d4f7ffd", - "0x4000800f7d4e7d52", - "0x404480017ffc7ffe", - "0x100000000000000000000000000000000", - "0x40307d527ffe7fff", - "0x40307ffc7ff77d5c", - "0x4824800180008002", - "0xffffffffffffffff0000000000000000", - "0x480080107d4d8001", - "0x480080117d4c7ffe", - "0x400080127d4b7ffe", - "0x484480017ffe8000", - "0x10000000000000000", - "0x40307ffc7fff7d50", - "0x48507d527ffc8000", - "0x48507d517ffc8000", - "0x4824800180018002", - "0xffffffffffffffff0000000000000000", - "0x480080137d478001", - "0x480080147d467fff", - "0x400080157d457ffd", - "0x484480017ffd8000", - "0x10000000000000000", - "0x40307ffd7fff7ffb", - "0x484480017ffd8000", - "0x10000000000000000", - "0x48307fff7ff98003", - "0x482480017fff8000", - "0xfffffffffffffffe0000000000000000", - "0x480080167d417fff", - "0x480080177d407ffd", - "0x400180187d3f7ffb", - "0x404480017ffc7ffe", - "0x100000000000000000000000000000000", - "0x40287ffb7ffe7fff", - "0x40307ffc7ff77d4c", - "0x40780017fff7fff", "0x1", "0x480680017fff8000", - "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x4f7574206f6620676173", "0x400080007ffe7fff", - "0x482480017d3d8000", - "0x19", - "0x480a7ff57fff8000", - "0x480a7ff67fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", "0x480680017fff8000", "0x1", - "0x48127ffa7fff8000", - "0x482480017ff98000", + "0x48127ffb7fff8000", + "0x482480017ffa8000", "0x1", "0x208b7fff7fff7ffe", - "0x40780017fff7fff", - "0x2bf", - "0x48127d3d7fff8000", - "0x10780017fff7fff", + "0x48297ffa80007ff6", + "0x20680017fff7fff", + "0x19", + "0x48297ffb80007ff7", + "0x20680017fff7fff", + "0x12", + "0x48297ffc80007ff8", + "0x20680017fff7fff", + "0xb", + "0x48297ffd80007ff9", + "0x20680017fff7fff", "0x5", - "0x40780017fff7fff", - "0x2d8", - "0x480a7ff47fff8000", - "0x480a7ff57fff8000", - "0x480a7ff67fff8000", "0x480680017fff8000", - "0x0", + "0x1", + "0x208b7fff7fff7ffe", "0x480680017fff8000", "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x10780017fff7fff", + "0x8", + "0x40780017fff7fff", + "0x2", + "0x10780017fff7fff", + "0x4", + "0x40780017fff7fff", + "0x3", "0x480680017fff8000", "0x0", "0x208b7fff7fff7ffe", @@ -14698,7 +16554,7 @@ "0x402780017ffc8001", "0x9", "0x1104800180018000", - "0x2d1", + "0x354", "0x40137ffa7fff8000", "0x20680017fff7ffb", "0x8e", @@ -14711,7 +16567,7 @@ "0x480680017fff8000", "0x0", "0x1104800180018000", - "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff3d2", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffef3b", "0x20680017fff7ffd", "0x7b", "0x480680017fff8000", @@ -15418,10 +17274,141 @@ "0x48127f8d7fff8000", "0x48127f8d7fff8000", "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x4825800180007ffd", + "0x10", + "0x400280007ffc7fff", + "0x10780017fff7fff", + "0x6f", + "0x482680017ffd8000", + "0xfffffffffffffffffffffffffffffff0", + "0x400280007ffc7fff", + "0x4825800180007ffd", + "0x400000000000008800000000000000000000000000000000000000000000010", + "0x484480017fff8000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffff", + "0x482680017ffc8000", + "0x1", + "0x1137ffe7fff7fff", + "0x10780017fff7fff", + "0x5a", + "0x10780017fff7fff", + "0x54", + "0x10780017fff7fff", + "0x4e", + "0x10780017fff7fff", + "0x48", + "0x10780017fff7fff", + "0x42", + "0x10780017fff7fff", + "0x3c", + "0x10780017fff7fff", + "0x36", + "0x10780017fff7fff", + "0x30", + "0x10780017fff7fff", + "0x2a", + "0x10780017fff7fff", + "0x24", + "0x10780017fff7fff", + "0x1e", + "0x10780017fff7fff", + "0x18", + "0x10780017fff7fff", + "0x12", + "0x10780017fff7fff", + "0xc", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x3c", + "0x480680017fff8000", + "0x100", + "0x10780017fff7fff", + "0x38", + "0x480680017fff8000", + "0x10000", + "0x10780017fff7fff", + "0x34", + "0x480680017fff8000", + "0x1000000", + "0x10780017fff7fff", + "0x30", + "0x480680017fff8000", + "0x100000000", + "0x10780017fff7fff", + "0x2c", + "0x480680017fff8000", + "0x10000000000", + "0x10780017fff7fff", + "0x28", + "0x480680017fff8000", + "0x1000000000000", + "0x10780017fff7fff", + "0x24", + "0x480680017fff8000", + "0x100000000000000", + "0x10780017fff7fff", + "0x20", + "0x480680017fff8000", + "0x10000000000000000", + "0x10780017fff7fff", + "0x1c", + "0x480680017fff8000", + "0x1000000000000000000", + "0x10780017fff7fff", + "0x18", + "0x480680017fff8000", + "0x100000000000000000000", + "0x10780017fff7fff", + "0x14", + "0x480680017fff8000", + "0x10000000000000000000000", + "0x10780017fff7fff", + "0x10", + "0x480680017fff8000", + "0x1000000000000000000000000", + "0x10780017fff7fff", + "0xc", + "0x480680017fff8000", + "0x100000000000000000000000000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x10000000000000000000000000000", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1000000000000000000000000000000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x6e5f627974657320746f6f20626967", + "0x400080007ffe7fff", + "0x482680017ffc8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", "0x1104800180018000", - "0x159", + "0x16c", "0x482480017fff8000", - "0x158", + "0x16b", "0x480080007fff8000", "0x480080017fff8000", "0x484480017fff8000", @@ -15762,7 +17749,26 @@ "0x510e527f", "0x9b05688c", "0x1f83d9ab", - "0x5be0cd19" + "0x5be0cd19", + "0x208b7fff7fff7ffe", + "0xc", + "0x10", + "0x14", + "0x1c", + "0x10", + "0x18", + "0x0", + "0x4", + "0xc", + "0x0", + "0x8", + "0x10", + "0x18", + "0x14", + "0x0", + "0x18", + "0x1c", + "0x20" ], "bytecode_segment_lengths": [ 241, @@ -15793,6 +17799,7 @@ 111, 150, 156, + 128, 161, 250, 187, @@ -15804,7 +17811,7 @@ 72, 190, 212, - 84, + 83, 352, 393, 335, @@ -15813,8 +17820,9 @@ 195, 196, 290, - 285, + 290, 302, + 549, 185, 80, 129, @@ -15822,9 +17830,12 @@ 89, 306, 258, - 155, + 97, 220, 791, + 1136, + 66, + 31, 176, 157, 83, @@ -15832,9 +17843,11 @@ 706, 199, 552, + 131, 104, 232, - 9 + 9, + 19 ], "hints": [ [ @@ -16213,7 +18226,245 @@ ] ], [ - 326, + 326, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 341, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -5 + }, + "b": { + "Immediate": "0x7" + } + } + } + } + } + ] + ], + [ + 344, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 371, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 391, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 406, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 423, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 457, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 461, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 471, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": 1 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 524, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 571, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 590, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x28b4" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -11 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 612, [ { "SystemCall": { @@ -16228,28 +18479,20 @@ ] ], [ - 341, + 633, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -5 - }, - "b": { - "Immediate": "0x7" - } - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 344, + 648, [ { "AllocSegment": { @@ -16262,7 +18505,7 @@ ] ], [ - 371, + 662, [ { "AllocSegment": { @@ -16275,7 +18518,7 @@ ] ], [ - 391, + 683, [ { "AllocSegment": { @@ -16288,7 +18531,7 @@ ] ], [ - 406, + 697, [ { "AllocSegment": { @@ -16301,12 +18544,12 @@ ] ], [ - 423, + 714, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Immediate": "0xc94" }, "rhs": { "Deref": { @@ -16323,78 +18566,68 @@ ] ], [ - 457, + 748, [ { "TestLessThan": { "lhs": { - "Deref": { - "register": "FP", - "offset": 1 + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": 2 + }, + "b": { + "Immediate": "0x0" + } } }, "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 461, + 752, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": 3 + "offset": -1 } }, "scalar": { - "Immediate": "0x110000000000000000" + "Immediate": "0x8000000000000110000000000000000" }, "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" + "Immediate": "0xfffffffffffffffffffffffffffffffe" }, "x": { "register": "AP", - "offset": -2 + "offset": 0 }, "y": { "register": "AP", - "offset": -1 + "offset": 1 } } } ] ], [ - 471, + 793, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "FP", - "offset": 1 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -16403,7 +18636,7 @@ ] ], [ - 524, + 858, [ { "AllocSegment": { @@ -16416,7 +18649,7 @@ ] ], [ - 571, + 905, [ { "AllocSegment": { @@ -16429,12 +18662,12 @@ ] ], [ - 590, + 924, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x28b4" + "Immediate": "0x87a" }, "rhs": { "Deref": { @@ -16451,22 +18684,20 @@ ] ], [ - 612, + 951, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -5 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 633, + 969, [ { "AllocSegment": { @@ -16479,7 +18710,7 @@ ] ], [ - 648, + 984, [ { "AllocSegment": { @@ -16492,7 +18723,7 @@ ] ], [ - 662, + 998, [ { "AllocSegment": { @@ -16505,7 +18736,7 @@ ] ], [ - 683, + 1019, [ { "AllocSegment": { @@ -16518,7 +18749,7 @@ ] ], [ - 697, + 1033, [ { "AllocSegment": { @@ -16531,12 +18762,12 @@ ] ], [ - 714, + 1048, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0xc94" + "Immediate": "0x0" }, "rhs": { "Deref": { @@ -16553,7 +18784,7 @@ ] ], [ - 748, + 1082, [ { "TestLessThan": { @@ -16561,8 +18792,8 @@ "BinOp": { "op": "Add", "a": { - "register": "FP", - "offset": 2 + "register": "AP", + "offset": -1 }, "b": { "Immediate": "0x0" @@ -16581,7 +18812,7 @@ ] ], [ - 752, + 1086, [ { "LinearSplit": { @@ -16610,7 +18841,7 @@ ] ], [ - 793, + 1111, [ { "AllocSegment": { @@ -16623,7 +18854,118 @@ ] ], [ - 858, + 1130, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1248" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -16 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1149, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 1152, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1175, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1197, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1211, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1228, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x8d54" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1327, [ { "AllocSegment": { @@ -16636,7 +18978,29 @@ ] ], [ - 905, + 1346, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x8070" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -42 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1389, [ { "AllocSegment": { @@ -16649,19 +19013,10 @@ ] ], [ - 924, + 1407, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x87a" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -11 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -16671,7 +19026,7 @@ ] ], [ - 951, + 1422, [ { "AllocSegment": { @@ -16684,7 +19039,7 @@ ] ], [ - 969, + 1436, [ { "AllocSegment": { @@ -16697,7 +19052,7 @@ ] ], [ - 984, + 1450, [ { "AllocSegment": { @@ -16710,7 +19065,7 @@ ] ], [ - 998, + 1464, [ { "AllocSegment": { @@ -16723,7 +19078,7 @@ ] ], [ - 1019, + 1486, [ { "AllocSegment": { @@ -16736,7 +19091,7 @@ ] ], [ - 1033, + 1500, [ { "AllocSegment": { @@ -16749,7 +19104,7 @@ ] ], [ - 1048, + 1517, [ { "TestLessThanOrEqual": { @@ -16771,64 +19126,87 @@ ] ], [ - 1082, + 1551, [ { "TestLessThan": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -1 - }, - "b": { - "Immediate": "0x0" - } + "Deref": { + "register": "FP", + "offset": 1 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" }, "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 1086, + 1555, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": 3 } }, "scalar": { - "Immediate": "0x8000000000000110000000000000000" + "Immediate": "0x110000000000000000" }, "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" + "Immediate": "0xffffffffffffffffffffffffffffffff" }, "x": { "register": "AP", - "offset": 0 + "offset": -2 }, "y": { "register": "AP", - "offset": 1 + "offset": -1 } } } ] ], [ - 1111, + 1565, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": 1 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1618, [ { "AllocSegment": { @@ -16841,17 +19219,30 @@ ] ], [ - 1130, + 1665, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1684, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x1248" + "Immediate": "0x28b4" }, "rhs": { "Deref": { "register": "AP", - "offset": -16 + "offset": -11 } }, "dst": { @@ -16863,7 +19254,7 @@ ] ], [ - 1149, + 1706, [ { "SystemCall": { @@ -16878,7 +19269,7 @@ ] ], [ - 1152, + 1727, [ { "AllocSegment": { @@ -16891,7 +19282,7 @@ ] ], [ - 1175, + 1742, [ { "AllocSegment": { @@ -16904,7 +19295,7 @@ ] ], [ - 1197, + 1756, [ { "AllocSegment": { @@ -16917,7 +19308,7 @@ ] ], [ - 1211, + 1777, [ { "AllocSegment": { @@ -16930,12 +19321,25 @@ ] ], [ - 1228, + 1791, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1806, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x8d54" + "Immediate": "0x0" }, "rhs": { "Deref": { @@ -16952,33 +19356,78 @@ ] ], [ - 1327, + 1839, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 1346, + 1843, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x8070" + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } }, - "rhs": { + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1853, + [ + { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -42 + "offset": -2 } }, - "dst": { + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -16987,7 +19436,7 @@ ] ], [ - 1389, + 1952, [ { "AllocSegment": { @@ -17000,7 +19449,29 @@ ] ], [ - 1407, + 1971, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x5622" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -38 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2000, [ { "AllocSegment": { @@ -17013,7 +19484,7 @@ ] ], [ - 1422, + 2015, [ { "AllocSegment": { @@ -17026,7 +19497,7 @@ ] ], [ - 1436, + 2029, [ { "AllocSegment": { @@ -17039,7 +19510,7 @@ ] ], [ - 1450, + 2043, [ { "AllocSegment": { @@ -17052,7 +19523,7 @@ ] ], [ - 1464, + 2057, [ { "AllocSegment": { @@ -17065,7 +19536,7 @@ ] ], [ - 1486, + 2078, [ { "AllocSegment": { @@ -17078,7 +19549,7 @@ ] ], [ - 1500, + 2092, [ { "AllocSegment": { @@ -17091,7 +19562,7 @@ ] ], [ - 1517, + 2107, [ { "TestLessThanOrEqual": { @@ -17113,14 +19584,14 @@ ] ], [ - 1551, + 2140, [ { "TestLessThan": { "lhs": { "Deref": { - "register": "FP", - "offset": 1 + "register": "AP", + "offset": -1 } }, "rhs": { @@ -17135,7 +19606,7 @@ ] ], [ - 1555, + 2144, [ { "LinearSplit": { @@ -17164,14 +19635,14 @@ ] ], [ - 1565, + 2154, [ { "LinearSplit": { "value": { "Deref": { - "register": "FP", - "offset": 1 + "register": "AP", + "offset": -2 } }, "scalar": { @@ -17193,20 +19664,7 @@ ] ], [ - 1618, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 1665, + 2169, [ { "AllocSegment": { @@ -17219,17 +19677,17 @@ ] ], [ - 1684, + 2188, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x28b4" + "Immediate": "0x128e" }, "rhs": { "Deref": { "register": "AP", - "offset": -11 + "offset": -18 } }, "dst": { @@ -17241,7 +19699,7 @@ ] ], [ - 1706, + 2207, [ { "SystemCall": { @@ -17256,7 +19714,7 @@ ] ], [ - 1727, + 2210, [ { "AllocSegment": { @@ -17269,7 +19727,7 @@ ] ], [ - 1742, + 2230, [ { "AllocSegment": { @@ -17282,7 +19740,7 @@ ] ], [ - 1756, + 2252, [ { "AllocSegment": { @@ -17295,7 +19753,7 @@ ] ], [ - 1777, + 2266, [ { "AllocSegment": { @@ -17308,7 +19766,29 @@ ] ], [ - 1791, + 2283, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2338, [ { "AllocSegment": { @@ -17321,19 +19801,10 @@ ] ], [ - 1806, + 2385, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -17343,78 +19814,48 @@ ] ], [ - 1839, + 2404, [ { - "TestLessThan": { + "TestLessThanOrEqual": { "lhs": { + "Immediate": "0x213e" + }, + "rhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": -11 } }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 1843, + 2425, [ { - "LinearSplit": { - "value": { + "SystemCall": { + "system": { "Deref": { - "register": "AP", - "offset": 3 + "register": "FP", + "offset": -5 } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { - "register": "AP", - "offset": -1 } } } ] ], [ - 1853, + 2428, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -17423,7 +19864,7 @@ ] ], [ - 1952, + 2448, [ { "AllocSegment": { @@ -17436,19 +19877,10 @@ ] ], [ - 1971, + 2463, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x5622" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -38 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -17458,7 +19890,7 @@ ] ], [ - 2000, + 2477, [ { "AllocSegment": { @@ -17471,7 +19903,7 @@ ] ], [ - 2015, + 2491, [ { "AllocSegment": { @@ -17484,10 +19916,19 @@ ] ], [ - 2029, + 2506, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -17497,7 +19938,7 @@ ] ], [ - 2043, + 2523, [ { "AllocSegment": { @@ -17510,7 +19951,44 @@ ] ], [ - 2057, + 2543, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x41a" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2555, + [ + { + "AllocFelt252Dict": { + "segment_arena_ptr": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 2574, [ { "AllocSegment": { @@ -17523,7 +20001,7 @@ ] ], [ - 2078, + 2585, [ { "AllocSegment": { @@ -17536,7 +20014,7 @@ ] ], [ - 2092, + 2601, [ { "AllocSegment": { @@ -17549,12 +20027,12 @@ ] ], [ - 2107, + 2619, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Immediate": "0x460" }, "rhs": { "Deref": { @@ -17571,14 +20049,14 @@ ] ], [ - 2140, + 2653, [ { "TestLessThan": { "lhs": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": 1 } }, "rhs": { @@ -17593,7 +20071,7 @@ ] ], [ - 2144, + 2657, [ { "LinearSplit": { @@ -17622,14 +20100,14 @@ ] ], [ - 2154, + 2667, [ { "LinearSplit": { "value": { "Deref": { - "register": "AP", - "offset": -2 + "register": "FP", + "offset": 1 } }, "scalar": { @@ -17651,7 +20129,7 @@ ] ], [ - 2169, + 2720, [ { "AllocSegment": { @@ -17664,12 +20142,25 @@ ] ], [ - 2188, + 2797, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2816, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x128e" + "Immediate": "0x2a94" }, "rhs": { "Deref": { @@ -17686,7 +20177,7 @@ ] ], [ - 2207, + 2842, [ { "SystemCall": { @@ -17701,7 +20192,7 @@ ] ], [ - 2210, + 2845, [ { "AllocSegment": { @@ -17714,7 +20205,7 @@ ] ], [ - 2230, + 2865, [ { "AllocSegment": { @@ -17727,7 +20218,7 @@ ] ], [ - 2252, + 2880, [ { "AllocSegment": { @@ -17740,7 +20231,7 @@ ] ], [ - 2266, + 2894, [ { "AllocSegment": { @@ -17753,19 +20244,10 @@ ] ], [ - 2283, + 2908, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -17775,7 +20257,7 @@ ] ], [ - 2338, + 2929, [ { "AllocSegment": { @@ -17788,7 +20270,7 @@ ] ], [ - 2385, + 2943, [ { "AllocSegment": { @@ -17801,17 +20283,17 @@ ] ], [ - 2404, + 2958, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x213e" + "Immediate": "0x0" }, "rhs": { "Deref": { - "register": "AP", - "offset": -11 + "register": "FP", + "offset": -6 } }, "dst": { @@ -17823,22 +20305,7 @@ ] ], [ - 2425, - [ - { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -5 - } - } - } - } - ] - ], - [ - 2428, + 2975, [ { "AllocSegment": { @@ -17851,10 +20318,19 @@ ] ], [ - 2448, + 2994, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x7b3e" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, "dst": { "register": "AP", "offset": 0 @@ -17864,7 +20340,7 @@ ] ], [ - 2463, + 3014, [ { "AllocSegment": { @@ -17877,7 +20353,7 @@ ] ], [ - 2477, + 3032, [ { "AllocSegment": { @@ -17890,7 +20366,7 @@ ] ], [ - 2491, + 3047, [ { "AllocSegment": { @@ -17903,7 +20379,7 @@ ] ], [ - 2506, + 3062, [ { "TestLessThanOrEqual": { @@ -17925,7 +20401,7 @@ ] ], [ - 2523, + 3079, [ { "AllocSegment": { @@ -17938,12 +20414,12 @@ ] ], [ - 2543, + 3098, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x41a" + "Immediate": "0x3a02" }, "rhs": { "Deref": { @@ -17960,22 +20436,7 @@ ] ], [ - 2555, - [ - { - "AllocFelt252Dict": { - "segment_arena_ptr": { - "Deref": { - "register": "FP", - "offset": -7 - } - } - } - } - ] - ], - [ - 2574, + 3118, [ { "AllocSegment": { @@ -17988,7 +20449,7 @@ ] ], [ - 2585, + 3136, [ { "AllocSegment": { @@ -18001,7 +20462,7 @@ ] ], [ - 2601, + 3151, [ { "AllocSegment": { @@ -18014,12 +20475,12 @@ ] ], [ - 2619, + 3166, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x460" + "Immediate": "0x0" }, "rhs": { "Deref": { @@ -18036,78 +20497,49 @@ ] ], [ - 2653, + 3183, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "FP", - "offset": 1 - } - }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 2657, + 3208, [ { - "LinearSplit": { - "value": { + "TestLessThanOrEqual": { + "lhs": { "Deref": { "register": "AP", - "offset": 3 + "offset": -1 } }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 + "rhs": { + "Deref": { + "register": "AP", + "offset": -10 + } }, - "y": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 2667, + 3227, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "FP", - "offset": 1 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -18116,7 +20548,7 @@ ] ], [ - 2720, + 3247, [ { "AllocSegment": { @@ -18129,7 +20561,7 @@ ] ], [ - 2797, + 3263, [ { "AllocSegment": { @@ -18142,17 +20574,17 @@ ] ], [ - 2816, + 3279, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x2a94" + "Immediate": "0x0" }, "rhs": { "Deref": { - "register": "AP", - "offset": -18 + "register": "FP", + "offset": -6 } }, "dst": { @@ -18164,22 +20596,7 @@ ] ], [ - 2842, - [ - { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -5 - } - } - } - } - ] - ], - [ - 2845, + 3296, [ { "AllocSegment": { @@ -18192,10 +20609,19 @@ ] ], [ - 2865, + 3315, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x382d4" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, "dst": { "register": "AP", "offset": 0 @@ -18205,7 +20631,7 @@ ] ], [ - 2880, + 3335, [ { "AllocSegment": { @@ -18218,7 +20644,7 @@ ] ], [ - 2894, + 3353, [ { "AllocSegment": { @@ -18231,7 +20657,7 @@ ] ], [ - 2908, + 3368, [ { "AllocSegment": { @@ -18244,10 +20670,19 @@ ] ], [ - 2929, + 3383, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -18257,7 +20692,7 @@ ] ], [ - 2943, + 3442, [ { "AllocSegment": { @@ -18270,7 +20705,7 @@ ] ], [ - 2958, + 3461, [ { "TestLessThanOrEqual": { @@ -18279,8 +20714,8 @@ }, "rhs": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -17 } }, "dst": { @@ -18292,7 +20727,7 @@ ] ], [ - 2975, + 3478, [ { "AllocSegment": { @@ -18305,19 +20740,23 @@ ] ], [ - 2994, + 3492, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x7b3e" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -7 - } - }, + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3506, + [ + { + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -18327,7 +20766,7 @@ ] ], [ - 3014, + 3521, [ { "AllocSegment": { @@ -18340,7 +20779,7 @@ ] ], [ - 3032, + 3535, [ { "AllocSegment": { @@ -18353,7 +20792,7 @@ ] ], [ - 3047, + 3549, [ { "AllocSegment": { @@ -18366,7 +20805,7 @@ ] ], [ - 3062, + 3564, [ { "TestLessThanOrEqual": { @@ -18388,7 +20827,7 @@ ] ], [ - 3079, + 3597, [ { "AllocSegment": { @@ -18401,17 +20840,30 @@ ] ], [ - 3098, + 3644, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3663, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x399e" + "Immediate": "0x0" }, "rhs": { "Deref": { "register": "AP", - "offset": -7 + "offset": -11 } }, "dst": { @@ -18423,7 +20875,7 @@ ] ], [ - 3118, + 3685, [ { "AllocSegment": { @@ -18436,7 +20888,7 @@ ] ], [ - 3136, + 3705, [ { "AllocSegment": { @@ -18449,7 +20901,7 @@ ] ], [ - 3151, + 3720, [ { "AllocSegment": { @@ -18462,7 +20914,20 @@ ] ], [ - 3166, + 3734, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3749, [ { "TestLessThanOrEqual": { @@ -18484,7 +20949,7 @@ ] ], [ - 3183, + 3766, [ { "AllocSegment": { @@ -18497,20 +20962,17 @@ ] ], [ - 3208, + 3785, [ { "TestLessThanOrEqual": { "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x0" }, "rhs": { "Deref": { "register": "AP", - "offset": -10 + "offset": -7 } }, "dst": { @@ -18522,7 +20984,7 @@ ] ], [ - 3227, + 3797, [ { "AllocSegment": { @@ -18535,7 +20997,7 @@ ] ], [ - 3247, + 3812, [ { "AllocSegment": { @@ -18548,7 +21010,7 @@ ] ], [ - 3263, + 3827, [ { "AllocSegment": { @@ -18561,7 +21023,7 @@ ] ], [ - 3279, + 3842, [ { "TestLessThanOrEqual": { @@ -18583,7 +21045,7 @@ ] ], [ - 3296, + 3880, [ { "AllocSegment": { @@ -18596,17 +21058,17 @@ ] ], [ - 3315, + 3899, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x382d4" + "Immediate": "0x0" }, "rhs": { "Deref": { "register": "AP", - "offset": -7 + "offset": -12 } }, "dst": { @@ -18618,7 +21080,7 @@ ] ], [ - 3335, + 3919, [ { "AllocSegment": { @@ -18631,7 +21093,7 @@ ] ], [ - 3353, + 3937, [ { "AllocSegment": { @@ -18644,7 +21106,7 @@ ] ], [ - 3368, + 3952, [ { "AllocSegment": { @@ -18657,7 +21119,20 @@ ] ], [ - 3383, + 3966, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3981, [ { "TestLessThanOrEqual": { @@ -18679,7 +21154,7 @@ ] ], [ - 3442, + 4019, [ { "AllocSegment": { @@ -18692,7 +21167,7 @@ ] ], [ - 3461, + 4038, [ { "TestLessThanOrEqual": { @@ -18702,7 +21177,7 @@ "rhs": { "Deref": { "register": "AP", - "offset": -17 + "offset": -12 } }, "dst": { @@ -18714,7 +21189,7 @@ ] ], [ - 3478, + 4058, [ { "AllocSegment": { @@ -18727,7 +21202,7 @@ ] ], [ - 3492, + 4076, [ { "AllocSegment": { @@ -18740,7 +21215,7 @@ ] ], [ - 3506, + 4091, [ { "AllocSegment": { @@ -18753,7 +21228,7 @@ ] ], [ - 3521, + 4105, [ { "AllocSegment": { @@ -18766,10 +21241,19 @@ ] ], [ - 3535, + 4120, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -18779,46 +21263,78 @@ ] ], [ - 3549, + 4153, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 3564, + 4157, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { + "LinearSplit": { + "value": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": 3 } }, - "dst": { + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 3597, + 4167, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -18827,7 +21343,7 @@ ] ], [ - 3644, + 4224, [ { "AllocSegment": { @@ -18840,17 +21356,17 @@ ] ], [ - 3663, + 4243, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Immediate": "0x1de2" }, "rhs": { "Deref": { "register": "AP", - "offset": -11 + "offset": -28 } }, "dst": { @@ -18862,7 +21378,7 @@ ] ], [ - 3685, + 4265, [ { "AllocSegment": { @@ -18875,20 +21391,22 @@ ] ], [ - 3705, + 4283, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } } } } ] ], [ - 3720, + 4289, [ { "AllocSegment": { @@ -18901,7 +21419,7 @@ ] ], [ - 3734, + 4308, [ { "AllocSegment": { @@ -18914,19 +21432,10 @@ ] ], [ - 3749, + 4323, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -18936,7 +21445,7 @@ ] ], [ - 3766, + 4337, [ { "AllocSegment": { @@ -18949,19 +21458,10 @@ ] ], [ - 3785, + 4358, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -7 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -18971,7 +21471,7 @@ ] ], [ - 3797, + 4372, [ { "AllocSegment": { @@ -18984,10 +21484,19 @@ ] ], [ - 3812, + 4387, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -18997,7 +21506,7 @@ ] ], [ - 3827, + 4467, [ { "AllocSegment": { @@ -19010,17 +21519,20 @@ ] ], [ - 3842, + 4492, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Deref": { + "register": "AP", + "offset": -1 + } }, "rhs": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -25 } }, "dst": { @@ -19032,7 +21544,7 @@ ] ], [ - 3880, + 4514, [ { "AllocSegment": { @@ -19045,19 +21557,10 @@ ] ], [ - 3899, + 4534, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -12 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -19067,7 +21570,7 @@ ] ], [ - 3919, + 4550, [ { "AllocSegment": { @@ -19080,7 +21583,7 @@ ] ], [ - 3937, + 4565, [ { "AllocSegment": { @@ -19093,7 +21596,7 @@ ] ], [ - 3952, + 4580, [ { "AllocSegment": { @@ -19106,7 +21609,7 @@ ] ], [ - 3966, + 4595, [ { "AllocSegment": { @@ -19119,7 +21622,7 @@ ] ], [ - 3981, + 4611, [ { "TestLessThanOrEqual": { @@ -19141,7 +21644,7 @@ ] ], [ - 4019, + 4634, [ { "AllocSegment": { @@ -19154,17 +21657,20 @@ ] ], [ - 4038, + 4664, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Deref": { + "register": "AP", + "offset": -1 + } }, "rhs": { "Deref": { "register": "AP", - "offset": -12 + "offset": -55 } }, "dst": { @@ -19176,7 +21682,7 @@ ] ], [ - 4058, + 4687, [ { "AllocSegment": { @@ -19189,7 +21695,7 @@ ] ], [ - 4076, + 4709, [ { "AllocSegment": { @@ -19202,7 +21708,7 @@ ] ], [ - 4091, + 4726, [ { "AllocSegment": { @@ -19215,7 +21721,7 @@ ] ], [ - 4105, + 4742, [ { "AllocSegment": { @@ -19228,12 +21734,12 @@ ] ], [ - 4120, + 4759, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Immediate": "0x33e" }, "rhs": { "Deref": { @@ -19250,7 +21756,7 @@ ] ], [ - 4153, + 4792, [ { "TestLessThan": { @@ -19272,7 +21778,7 @@ ] ], [ - 4157, + 4796, [ { "LinearSplit": { @@ -19301,7 +21807,7 @@ ] ], [ - 4167, + 4806, [ { "LinearSplit": { @@ -19330,7 +21836,7 @@ ] ], [ - 4224, + 4827, [ { "AllocSegment": { @@ -19343,17 +21849,17 @@ ] ], [ - 4243, + 4846, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x1de2" + "Immediate": "0x2c24" }, "rhs": { "Deref": { "register": "AP", - "offset": -28 + "offset": -60 } }, "dst": { @@ -19365,7 +21871,7 @@ ] ], [ - 4265, + 4858, [ { "AllocSegment": { @@ -19378,7 +21884,7 @@ ] ], [ - 4283, + 4878, [ { "SystemCall": { @@ -19393,20 +21899,7 @@ ] ], [ - 4289, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4308, + 4881, [ { "AllocSegment": { @@ -19419,7 +21912,7 @@ ] ], [ - 4323, + 4901, [ { "AllocSegment": { @@ -19432,7 +21925,7 @@ ] ], [ - 4337, + 4916, [ { "AllocSegment": { @@ -19445,7 +21938,7 @@ ] ], [ - 4358, + 4937, [ { "AllocSegment": { @@ -19458,7 +21951,7 @@ ] ], [ - 4372, + 4951, [ { "AllocSegment": { @@ -19471,7 +21964,7 @@ ] ], [ - 4387, + 4966, [ { "TestLessThanOrEqual": { @@ -19493,7 +21986,7 @@ ] ], [ - 4467, + 4983, [ { "AllocSegment": { @@ -19506,7 +21999,7 @@ ] ], [ - 4492, + 5006, [ { "TestLessThanOrEqual": { @@ -19519,7 +22012,7 @@ "rhs": { "Deref": { "register": "AP", - "offset": -25 + "offset": -9 } }, "dst": { @@ -19531,46 +22024,7 @@ ] ], [ - 4514, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4534, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4550, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4565, + 5025, [ { "AllocSegment": { @@ -19583,7 +22037,7 @@ ] ], [ - 4580, + 5045, [ { "AllocSegment": { @@ -19596,7 +22050,7 @@ ] ], [ - 4595, + 5061, [ { "AllocSegment": { @@ -19609,7 +22063,7 @@ ] ], [ - 4611, + 5077, [ { "TestLessThanOrEqual": { @@ -19631,7 +22085,7 @@ ] ], [ - 4634, + 5115, [ { "AllocSegment": { @@ -19644,7 +22098,7 @@ ] ], [ - 4664, + 5140, [ { "TestLessThanOrEqual": { @@ -19657,7 +22111,7 @@ "rhs": { "Deref": { "register": "AP", - "offset": -55 + "offset": -15 } }, "dst": { @@ -19669,7 +22123,7 @@ ] ], [ - 4687, + 5160, [ { "AllocSegment": { @@ -19682,7 +22136,7 @@ ] ], [ - 4709, + 5180, [ { "AllocSegment": { @@ -19695,7 +22149,7 @@ ] ], [ - 4726, + 5196, [ { "AllocSegment": { @@ -19708,7 +22162,7 @@ ] ], [ - 4742, + 5211, [ { "AllocSegment": { @@ -19721,12 +22175,12 @@ ] ], [ - 4759, + 5227, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x33e" + "Immediate": "0x0" }, "rhs": { "Deref": { @@ -19743,87 +22197,7 @@ ] ], [ - 4792, - [ - { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, - "dst": { - "register": "AP", - "offset": 4 - } - } - } - ] - ], - [ - 4796, - [ - { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 3 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { - "register": "AP", - "offset": -1 - } - } - } - ] - ], - [ - 4806, - [ - { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4827, + 5265, [ { "AllocSegment": { @@ -19836,17 +22210,17 @@ ] ], [ - 4846, + 5284, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x2c24" + "Immediate": "0x1220" }, "rhs": { "Deref": { "register": "AP", - "offset": -60 + "offset": -12 } }, "dst": { @@ -19858,7 +22232,7 @@ ] ], [ - 4858, + 5296, [ { "AllocSegment": { @@ -19871,7 +22245,7 @@ ] ], [ - 4878, + 5316, [ { "SystemCall": { @@ -19886,20 +22260,7 @@ ] ], [ - 4881, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 4901, + 5319, [ { "AllocSegment": { @@ -19912,7 +22273,7 @@ ] ], [ - 4916, + 5339, [ { "AllocSegment": { @@ -19925,7 +22286,7 @@ ] ], [ - 4937, + 5354, [ { "AllocSegment": { @@ -19938,7 +22299,7 @@ ] ], [ - 4951, + 5368, [ { "AllocSegment": { @@ -19951,7 +22312,7 @@ ] ], [ - 4966, + 5383, [ { "TestLessThanOrEqual": { @@ -19973,7 +22334,7 @@ ] ], [ - 4983, + 5400, [ { "AllocSegment": { @@ -19986,7 +22347,7 @@ ] ], [ - 5006, + 5431, [ { "TestLessThanOrEqual": { @@ -19999,7 +22360,7 @@ "rhs": { "Deref": { "register": "AP", - "offset": -9 + "offset": -13 } }, "dst": { @@ -20011,7 +22372,7 @@ ] ], [ - 5025, + 5451, [ { "AllocSegment": { @@ -20024,7 +22385,7 @@ ] ], [ - 5045, + 5475, [ { "AllocSegment": { @@ -20037,7 +22398,7 @@ ] ], [ - 5061, + 5493, [ { "AllocSegment": { @@ -20050,7 +22411,7 @@ ] ], [ - 5077, + 5511, [ { "TestLessThanOrEqual": { @@ -20072,7 +22433,7 @@ ] ], [ - 5115, + 5570, [ { "AllocSegment": { @@ -20085,20 +22446,17 @@ ] ], [ - 5140, + 5589, [ { "TestLessThanOrEqual": { "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x0" }, "rhs": { "Deref": { "register": "AP", - "offset": -15 + "offset": -17 } }, "dst": { @@ -20110,7 +22468,7 @@ ] ], [ - 5160, + 5601, [ { "AllocSegment": { @@ -20123,7 +22481,7 @@ ] ], [ - 5180, + 5614, [ { "AllocSegment": { @@ -20136,7 +22494,7 @@ ] ], [ - 5196, + 5629, [ { "AllocSegment": { @@ -20149,7 +22507,7 @@ ] ], [ - 5211, + 5643, [ { "AllocSegment": { @@ -20162,29 +22520,7 @@ ] ], [ - 5227, - [ - { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 5265, + 5657, [ { "AllocSegment": { @@ -20197,17 +22533,17 @@ ] ], [ - 5284, + 5672, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x1220" + "Immediate": "0x0" }, "rhs": { "Deref": { - "register": "AP", - "offset": -12 + "register": "FP", + "offset": -6 } }, "dst": { @@ -20219,39 +22555,78 @@ ] ], [ - 5296, + 5726, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 5316, + 5730, [ { - "SystemCall": { - "system": { + "LinearSplit": { + "value": { "Deref": { - "register": "FP", - "offset": -5 + "register": "AP", + "offset": 3 } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 5319, + 5740, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -20260,7 +22635,7 @@ ] ], [ - 5339, + 5776, [ { "AllocSegment": { @@ -20273,10 +22648,19 @@ ] ], [ - 5354, + 5795, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1a5e" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -28 + } + }, "dst": { "register": "AP", "offset": 0 @@ -20286,32 +22670,25 @@ ] ], [ - 5368, + 5818, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } } } } ] ], [ - 5383, + 5821, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -20321,7 +22698,7 @@ ] ], [ - 5442, + 5843, [ { "AllocSegment": { @@ -20334,19 +22711,10 @@ ] ], [ - 5461, + 5858, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -17 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -20356,7 +22724,7 @@ ] ], [ - 5473, + 5879, [ { "AllocSegment": { @@ -20369,7 +22737,7 @@ ] ], [ - 5486, + 5893, [ { "AllocSegment": { @@ -20382,7 +22750,7 @@ ] ], [ - 5501, + 5907, [ { "AllocSegment": { @@ -20395,10 +22763,19 @@ ] ], [ - 5515, + 5922, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -20408,7 +22785,7 @@ ] ], [ - 5529, + 5981, [ { "AllocSegment": { @@ -20421,17 +22798,17 @@ ] ], [ - 5544, + 6000, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x0" + "Immediate": "0x1414" }, "rhs": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -17 } }, "dst": { @@ -20443,78 +22820,65 @@ ] ], [ - 5598, + 6026, [ { - "TestLessThan": { - "lhs": { + "SystemCall": { + "system": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": -5 } - }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, + } + } + } + ] + ], + [ + 6029, + [ + { + "AllocSegment": { "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 5602, + 6051, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 3 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -2 - }, - "y": { + "offset": 0 + } + } + } + ] + ], + [ + 6066, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 5612, + 6080, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -20523,7 +22887,7 @@ ] ], [ - 5648, + 6094, [ { "AllocSegment": { @@ -20536,17 +22900,17 @@ ] ], [ - 5667, + 6109, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x1a5e" + "Immediate": "0x942" }, "rhs": { "Deref": { - "register": "AP", - "offset": -28 + "register": "FP", + "offset": -8 } }, "dst": { @@ -20558,25 +22922,32 @@ ] ], [ - 5690, + 6181, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -5 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 5693, + 6201, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3480" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -10 + } + }, "dst": { "register": "AP", "offset": 0 @@ -20586,23 +22957,43 @@ ] ], [ - 5715, + 6226, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } } } } ] ], [ - 5730, + 6234, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -8 + }, + "b": { + "Deref": { + "register": "AP", + "offset": -3 + } + } + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -20612,7 +23003,7 @@ ] ], [ - 5751, + 6259, [ { "AllocSegment": { @@ -20625,7 +23016,7 @@ ] ], [ - 5765, + 6292, [ { "AllocSegment": { @@ -20638,10 +23029,25 @@ ] ], [ - 5779, + 6329, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -1 + }, + "b": { + "Immediate": "0x0" + } + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -20651,32 +23057,54 @@ ] ], [ - 5794, + 6333, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x0" - }, - "rhs": { + "LinearSplit": { + "value": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -1 } }, - "dst": { + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { "register": "AP", "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 } } } ] ], [ - 5853, + 6375, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -1 + }, + "b": { + "Immediate": "0x0" + } + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -20686,61 +23114,107 @@ ] ], [ - 5872, + 6379, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x1414" - }, - "rhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -17 + "offset": -1 } }, - "dst": { + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { "register": "AP", "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 } } } ] ], [ - 5898, + 6420, [ { - "SystemCall": { - "system": { + "TestLessThan": { + "lhs": { "Deref": { - "register": "FP", - "offset": -5 + "register": "AP", + "offset": -1 } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 } } } ] ], [ - 5901, + 6424, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 5923, + 6434, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -20749,37 +23223,78 @@ ] ], [ - 5938, + 6558, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 2 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 5952, + 6562, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 5966, + 6572, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": 2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -20788,19 +23303,19 @@ ] ], [ - 5981, + 6604, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Immediate": "0x942" - }, - "rhs": { "Deref": { "register": "FP", - "offset": -8 + "offset": 0 } }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -20810,77 +23325,57 @@ ] ], [ - 6053, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 6073, + 6606, [ { - "TestLessThanOrEqual": { + "DivMod": { "lhs": { - "Immediate": "0x3480" - }, - "rhs": { "Deref": { "register": "FP", - "offset": -10 + "offset": 0 } }, - "dst": { + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 } } } ] ], [ - 6098, + 6726, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -9 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 6106, + 6840, [ { "TestLessThan": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -8 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -3 - } - } + "Deref": { + "register": "AP", + "offset": -1 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000000000000000000000000000" }, "dst": { "register": "AP", @@ -20891,33 +23386,33 @@ ] ], [ - 6131, + 6842, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 6164, - [ - { - "AllocSegment": { - "dst": { + "offset": 3 + }, + "remainder": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 6201, + 6895, [ { "TestLessThan": { @@ -20934,7 +23429,7 @@ } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, "dst": { "register": "AP", @@ -20945,7 +23440,7 @@ ] ], [ - 6205, + 6899, [ { "LinearSplit": { @@ -20974,7 +23469,7 @@ ] ], [ - 6247, + 6941, [ { "TestLessThan": { @@ -20991,7 +23486,7 @@ } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, "dst": { "register": "AP", @@ -21002,7 +23497,7 @@ ] ], [ - 6251, + 6945, [ { "LinearSplit": { @@ -21031,158 +23526,248 @@ ] ], [ - 6292, + 7723, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -26 + } + } + } + } + ] + ], + [ + 7956, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7970, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7984, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8048, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8062, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8085, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8109, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -8 + } + } + } + } + ] + ], + [ + 8112, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8128, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -8 + }, + "b": { + "Immediate": "0xa" + } + } + } + } + } + ] + ], + [ + 8165, [ { - "TestLessThan": { - "lhs": { + "GetSegmentArenaIndex": { + "dict_end_ptr": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": -3 } }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, - "dst": { - "register": "AP", - "offset": 4 + "dict_index": { + "register": "FP", + "offset": 0 } } } ] ], [ - 6296, + 8206, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 3 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { - "register": "AP", - "offset": -1 + "AllocSegment": { + "dst": { + "register": "FP", + "offset": 3 } } } ] ], [ - 6306, + 8214, [ { - "LinearSplit": { - "value": { + "InitSquashData": { + "dict_accesses": { "Deref": { - "register": "AP", - "offset": -2 + "register": "FP", + "offset": -4 } }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" + "ptr_diff": { + "Deref": { + "register": "FP", + "offset": 0 + } }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" + "n_accesses": { + "Deref": { + "register": "AP", + "offset": -1 + } }, - "x": { - "register": "AP", - "offset": -1 + "big_keys": { + "register": "FP", + "offset": 2 }, - "y": { - "register": "AP", - "offset": 0 + "first_key": { + "register": "FP", + "offset": 1 } } } ] ], [ - 6430, + 8233, [ { - "TestLessThan": { - "lhs": { + "GetCurrentAccessIndex": { + "range_check_ptr": { "Deref": { "register": "FP", - "offset": 2 + "offset": -9 } - }, - "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" - }, - "dst": { - "register": "AP", - "offset": 4 } } } ] ], [ - 6434, + 8246, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 3 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { + "ShouldSkipSquashLoop": { + "should_skip_loop": { "register": "AP", - "offset": -1 + "offset": -4 } } } ] ], [ - 6444, + 8248, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "FP", - "offset": 2 - } - }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -1 - }, - "y": { + "GetCurrentAccessDelta": { + "index_delta_minus1": { "register": "AP", "offset": 0 } @@ -21191,21 +23776,25 @@ ] ], [ - 6476, + 8259, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "FP", - "offset": 0 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "dst": { + "ShouldContinueSquashLoop": { + "should_continue": { "register": "AP", + "offset": -4 + } + } + } + ] + ], + [ + 8273, + [ + { + "GetNextDictKey": { + "next_key": { + "register": "FP", "offset": 0 } } @@ -21213,37 +23802,44 @@ ] ], [ - 6478, + 8292, [ { - "DivMod": { - "lhs": { + "AssertLeFindSmallArcs": { + "range_check_ptr": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -4 + }, + "b": { + "Immediate": "0x1" + } + } + }, + "a": { "Deref": { "register": "FP", - "offset": 0 + "offset": -6 } }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 3 - }, - "remainder": { - "register": "AP", - "offset": 4 + "b": { + "Deref": { + "register": "FP", + "offset": 0 + } } } } ] ], [ - 6598, + 8304, [ { - "AllocSegment": { - "dst": { + "AssertLeIsFirstArcExcluded": { + "skip_exclude_a_flag": { "register": "AP", "offset": 0 } @@ -21252,20 +23848,11 @@ ] ], [ - 6712, + 8316, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "dst": { + "AssertLeIsSecondArcExcluded": { + "skip_exclude_b_minus_a": { "register": "AP", "offset": 0 } @@ -21274,51 +23861,23 @@ ] ], [ - 6714, + 8347, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 3 - }, - "remainder": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 6767, + 8355, [ { - "TestLessThan": { - "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -1 - }, - "b": { - "Immediate": "0x0" - } - } - }, - "rhs": { - "Immediate": "0x100000000" - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -21328,54 +23887,38 @@ ] ], [ - 6771, + 8386, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 8400, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "scalar": { - "Immediate": "0x8000000000000110000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" - }, - "x": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 - }, - "y": { - "register": "AP", - "offset": 1 } } } ] ], [ - 6813, + 8420, [ { - "TestLessThan": { - "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -1 - }, - "b": { - "Immediate": "0x0" - } - } - }, - "rhs": { - "Immediate": "0x100000000" - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -21385,43 +23928,27 @@ ] ], [ - 6817, + 8434, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "scalar": { - "Immediate": "0x8000000000000110000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" - }, - "x": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 - }, - "y": { - "register": "AP", - "offset": 1 } } } ] ], [ - 7595, + 8448, [ { "SystemCall": { "system": { "Deref": { - "register": "FP", - "offset": -26 + "register": "AP", + "offset": -9 } } } @@ -21429,7 +23956,7 @@ ] ], [ - 7828, + 8451, [ { "AllocSegment": { @@ -21442,10 +23969,22 @@ ] ], [ - 7842, + 8474, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, "dst": { "register": "AP", "offset": 0 @@ -21455,7 +23994,7 @@ ] ], [ - 7856, + 8502, [ { "AllocSegment": { @@ -21468,7 +24007,7 @@ ] ], [ - 7920, + 8516, [ { "AllocSegment": { @@ -21481,7 +24020,7 @@ ] ], [ - 7934, + 8559, [ { "AllocSegment": { @@ -21494,7 +24033,7 @@ ] ], [ - 7957, + 8598, [ { "AllocSegment": { @@ -21507,14 +24046,14 @@ ] ], [ - 7981, + 8658, [ { "SystemCall": { "system": { "Deref": { "register": "FP", - "offset": -8 + "offset": -3 } } } @@ -21522,7 +24061,7 @@ ] ], [ - 7984, + 8668, [ { "AllocSegment": { @@ -21535,20 +24074,14 @@ ] ], [ - 8000, + 8699, [ { "SystemCall": { "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -8 - }, - "b": { - "Immediate": "0xa" - } + "Deref": { + "register": "AP", + "offset": -6 } } } @@ -21556,18 +24089,37 @@ ] ], [ - 8037, + 8702, [ { - "GetSegmentArenaIndex": { - "dict_end_ptr": { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8726, + [ + { + "TestLessThan": { + "lhs": { "Deref": { - "register": "FP", - "offset": -3 + "register": "AP", + "offset": -4 } }, - "dict_index": { - "register": "FP", + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "dst": { + "register": "AP", "offset": 0 } } @@ -21575,87 +24127,118 @@ ] ], [ - 8078, + 8760, [ { - "AllocSegment": { - "dst": { - "register": "FP", - "offset": 3 + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -14 + } } } } ] ], [ - 8086, + 8775, [ { - "InitSquashData": { - "dict_accesses": { + "SystemCall": { + "system": { "Deref": { - "register": "FP", - "offset": -4 + "register": "AP", + "offset": -2 } - }, - "ptr_diff": { + } + } + } + ] + ], + [ + 8821, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8840, + [ + { + "DivMod": { + "lhs": { "Deref": { - "register": "FP", - "offset": 0 + "register": "AP", + "offset": -2 } }, - "n_accesses": { + "rhs": { "Deref": { "register": "AP", "offset": -1 } }, - "big_keys": { - "register": "FP", - "offset": 2 + "quotient": { + "register": "AP", + "offset": 5 }, - "first_key": { - "register": "FP", - "offset": 1 + "remainder": { + "register": "AP", + "offset": 6 } } } ] ], [ - 8105, + 8846, [ { - "GetCurrentAccessIndex": { - "range_check_ptr": { + "TestLessThan": { + "lhs": { "Deref": { - "register": "FP", - "offset": -9 + "register": "AP", + "offset": 0 } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "dst": { + "register": "AP", + "offset": -3 } } } ] ], [ - 8118, + 8897, [ { - "ShouldSkipSquashLoop": { - "should_skip_loop": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -4 + "offset": 0 } } } ] ], [ - 8120, + 8928, [ { - "GetCurrentAccessDelta": { - "index_delta_minus1": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -21664,25 +24247,25 @@ ] ], [ - 8131, + 8953, [ { - "ShouldContinueSquashLoop": { - "should_continue": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -4 + "offset": 0 } } } ] ], [ - 8145, + 8968, [ { - "GetNextDictKey": { - "next_key": { - "register": "FP", + "AllocSegment": { + "dst": { + "register": "AP", "offset": 0 } } @@ -21690,32 +24273,14 @@ ] ], [ - 8164, + 9010, [ { - "AssertLeFindSmallArcs": { - "range_check_ptr": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -4 - }, - "b": { - "Immediate": "0x1" - } - } - }, - "a": { - "Deref": { - "register": "FP", - "offset": -6 - } - }, - "b": { + "SystemCall": { + "system": { "Deref": { "register": "FP", - "offset": 0 + "offset": -3 } } } @@ -21723,24 +24288,39 @@ ] ], [ - 8176, + 9022, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9052, [ { - "AssertLeIsFirstArcExcluded": { - "skip_exclude_a_flag": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -6 + } } } } ] ], [ - 8188, + 9057, [ { - "AssertLeIsSecondArcExcluded": { - "skip_exclude_b_minus_a": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -21749,10 +24329,22 @@ ] ], [ - 8219, + 9080, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, "dst": { "register": "AP", "offset": 0 @@ -21762,27 +24354,29 @@ ] ], [ - 8227, + 9114, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -14 + } } } } ] ], [ - 8258, + 9129, [ { "SystemCall": { "system": { "Deref": { - "register": "FP", - "offset": -3 + "register": "AP", + "offset": -2 } } } @@ -21790,7 +24384,7 @@ ] ], [ - 8272, + 9177, [ { "AllocSegment": { @@ -21803,40 +24397,65 @@ ] ], [ - 8292, + 9195, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": 5 + }, + "remainder": { + "register": "AP", + "offset": 6 } } } ] ], [ - 8306, + 9201, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -3 } } } ] ], [ - 8320, + 9230, [ { "SystemCall": { "system": { "Deref": { "register": "AP", - "offset": -9 + "offset": -22 } } } @@ -21844,7 +24463,7 @@ ] ], [ - 8323, + 9280, [ { "AllocSegment": { @@ -21857,22 +24476,10 @@ ] ], [ - 8346, + 9318, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -4 - } - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -21882,7 +24489,7 @@ ] ], [ - 8374, + 9345, [ { "AllocSegment": { @@ -21895,7 +24502,7 @@ ] ], [ - 8388, + 9361, [ { "AllocSegment": { @@ -21908,10 +24515,19 @@ ] ], [ - 8431, + 9387, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3a84" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, "dst": { "register": "AP", "offset": 0 @@ -21921,39 +24537,100 @@ ] ], [ - 8471, + 9401, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 8531, + 9476, [ { - "SystemCall": { - "system": { + "TestLessThan": { + "lhs": { "Deref": { - "register": "FP", - "offset": -3 + "register": "AP", + "offset": -11 } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 } } } ] ], [ - 8541, + 9480, [ { - "AllocSegment": { - "dst": { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 9490, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -12 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { "register": "AP", "offset": 0 } @@ -21962,14 +24639,14 @@ ] ], [ - 8572, + 9508, [ { "SystemCall": { "system": { "Deref": { - "register": "AP", - "offset": -6 + "register": "FP", + "offset": -5 } } } @@ -21977,7 +24654,7 @@ ] ], [ - 8575, + 9526, [ { "AllocSegment": { @@ -21990,54 +24667,94 @@ ] ], [ - 8599, + 9545, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -4 + "offset": -12 } }, "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 9549, + [ + { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": 3 } }, - "dst": { + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 8633, + 9559, [ { - "SystemCall": { - "system": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -14 + "offset": -13 } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 } } } ] ], [ - 8648, + 9577, [ { "SystemCall": { "system": { "Deref": { - "register": "AP", - "offset": -2 + "register": "FP", + "offset": -5 } } } @@ -22045,7 +24762,20 @@ ] ], [ - 8694, + 9595, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9626, [ { "AllocSegment": { @@ -22058,58 +24788,33 @@ ] ], [ - 8713, + 9650, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "quotient": { - "register": "AP", - "offset": 5 - }, - "remainder": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 6 + "offset": 0 } } } ] ], [ - 8719, + 9664, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": 0 - } - }, - "rhs": { - "Immediate": "0x10000000000000000" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": -3 + "offset": 0 } } } ] ], [ - 8770, + 9678, [ { "AllocSegment": { @@ -22122,7 +24827,7 @@ ] ], [ - 8801, + 9692, [ { "AllocSegment": { @@ -22135,7 +24840,7 @@ ] ], [ - 8826, + 9707, [ { "AllocSegment": { @@ -22148,10 +24853,19 @@ ] ], [ - 8841, + 9722, [ { - "AllocSegment": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x42e" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, "dst": { "register": "AP", "offset": 0 @@ -22161,22 +24875,20 @@ ] ], [ - 8883, + 9736, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -3 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 8895, + 9756, [ { "AllocSegment": { @@ -22189,22 +24901,29 @@ ] ], [ - 8925, + 9770, [ { - "SystemCall": { - "system": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x42e" + }, + "rhs": { "Deref": { - "register": "AP", - "offset": -6 + "register": "FP", + "offset": -4 } + }, + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 8930, + 9800, [ { "AllocSegment": { @@ -22217,54 +24936,94 @@ ] ], [ - 8953, + 9819, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -4 + "offset": -1 } }, "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 9823, + [ + { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": 4 } }, - "dst": { + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 8987, + 9834, [ { - "SystemCall": { - "system": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -14 + "offset": 4 } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 9002, + 9860, [ { "SystemCall": { "system": { "Deref": { - "register": "AP", - "offset": -2 + "register": "FP", + "offset": -6 } } } @@ -22272,115 +25031,162 @@ ] ], [ - 9050, + 9875, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -6 + }, + "b": { + "Immediate": "0x7" + } + } } } } ] ], [ - 9068, + 9883, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -2 + "offset": -1 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" }, - "quotient": { + "dst": { "register": "AP", "offset": 5 - }, - "remainder": { - "register": "AP", - "offset": 6 } } } ] ], [ - 9074, + 9887, [ { - "TestLessThan": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": 0 + "offset": 4 } }, - "rhs": { - "Immediate": "0x10000000000000000" + "scalar": { + "Immediate": "0x110000000000000000" }, - "dst": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": -3 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 9103, + 9898, [ { - "SystemCall": { - "system": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -22 + "offset": 4 } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 9153, + 9928, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -6 + }, + "b": { + "Immediate": "0xe" + } + } } } } ] ], [ - 9191, + 9944, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -6 + }, + "b": { + "Immediate": "0x15" + } + } } } } ] ], [ - 9218, + 10052, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -22390,32 +25196,45 @@ ] ], [ - 9234, + 10054, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 } } } ] ], [ - 9260, + 10099, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Immediate": "0x3a84" - }, - "rhs": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -1 } }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -22425,58 +25244,62 @@ ] ], [ - 9274, + 10101, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -2 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x100000000000000000000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 } } } ] ], [ - 9349, + 10210, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -11 + "offset": -1 } }, "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" }, "dst": { "register": "AP", - "offset": 4 + "offset": 5 } } } ] ], [ - 9353, + 10214, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": 3 + "offset": 4 } }, "scalar": { @@ -22498,43 +25321,43 @@ ] ], [ - 9363, + 10225, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": -12 + "offset": 4 } }, "scalar": { "Immediate": "0x8000000000000000000000000000000" }, "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" + "Immediate": "0xfffffffffffffffffffffffffffffffe" }, "x": { "register": "AP", - "offset": -1 + "offset": -2 }, "y": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 9381, + 10251, [ { "SystemCall": { "system": { "Deref": { "register": "FP", - "offset": -5 + "offset": -6 } } } @@ -22542,10 +25365,40 @@ ] ], [ - 9399, + 10266, [ { - "AllocSegment": { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -6 + }, + "b": { + "Immediate": "0x7" + } + } + } + } + } + ] + ], + [ + 10273, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -6 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -22555,20 +25408,72 @@ ] ], [ - 9418, + 10275, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 10296, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -12 + "offset": -2 } }, "rhs": { - "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + "Immediate": "0x100000000000000000000000000000000" }, "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10298, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { "register": "AP", "offset": 4 } @@ -22577,14 +25482,36 @@ ] ], [ - 9422, + 10328, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 10332, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": 3 + "offset": 4 } }, "scalar": { @@ -22606,43 +25533,43 @@ ] ], [ - 9432, + 10343, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": -13 + "offset": 4 } }, "scalar": { "Immediate": "0x8000000000000000000000000000000" }, "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" + "Immediate": "0xfffffffffffffffffffffffffffffffe" }, "x": { "register": "AP", - "offset": -1 + "offset": -2 }, "y": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 9450, + 10374, [ { "SystemCall": { "system": { "Deref": { - "register": "FP", - "offset": -5 + "register": "AP", + "offset": -20 } } } @@ -22650,20 +25577,28 @@ ] ], [ - 9468, + 10389, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -25 + }, + "b": { + "Immediate": "0x7" + } + } } } } ] ], [ - 9499, + 10433, [ { "AllocSegment": { @@ -22676,7 +25611,7 @@ ] ], [ - 9523, + 10452, [ { "AllocSegment": { @@ -22689,33 +25624,63 @@ ] ], [ - 9537, + 10534, [ { - "AllocSegment": { + "RandomEcPoint": { + "x": { + "register": "AP", + "offset": 4 + }, + "y": { + "register": "AP", + "offset": 5 + } + } + }, + { + "AllocConstantSize": { + "size": { + "Immediate": "0x2" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 6 } } } ] ], [ - 9551, + 10598, [ { - "AllocSegment": { + "RandomEcPoint": { + "x": { + "register": "AP", + "offset": 4 + }, + "y": { + "register": "AP", + "offset": 5 + } + } + }, + { + "AllocConstantSize": { + "size": { + "Immediate": "0x2" + }, "dst": { "register": "AP", - "offset": 0 + "offset": 6 } } } ] ], [ - 9565, + 10668, [ { "AllocSegment": { @@ -22728,42 +25693,43 @@ ] ], [ - 9580, + 10694, [ { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } } } } ] ], [ - 9595, + 10711, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x42e" - }, - "rhs": { - "Deref": { - "register": "FP", - "offset": -4 + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -3 + }, + "b": { + "Immediate": "0x7" + } } - }, - "dst": { - "register": "AP", - "offset": 0 } } } ] ], [ - 9609, + 10753, [ { "AllocSegment": { @@ -22776,7 +25742,7 @@ ] ], [ - 9629, + 10770, [ { "AllocSegment": { @@ -22789,42 +25755,22 @@ ] ], [ - 9643, + 10789, [ { - "TestLessThanOrEqual": { - "lhs": { - "Immediate": "0x42e" - }, - "rhs": { + "SystemCall": { + "system": { "Deref": { "register": "FP", "offset": -4 } - }, - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 9673, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 } } } ] ], [ - 9692, + 10799, [ { "TestLessThan": { @@ -22846,7 +25792,7 @@ ] ], [ - 9696, + 10803, [ { "LinearSplit": { @@ -22875,7 +25821,7 @@ ] ], [ - 9707, + 10814, [ { "LinearSplit": { @@ -22904,14 +25850,20 @@ ] ], [ - 9733, + 10858, [ { "SystemCall": { "system": { - "Deref": { - "register": "FP", - "offset": -6 + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -4 + }, + "b": { + "Immediate": "0x5" + } } } } @@ -22919,7 +25871,7 @@ ] ], [ - 9748, + 10873, [ { "SystemCall": { @@ -22928,10 +25880,10 @@ "op": "Add", "a": { "register": "FP", - "offset": -6 + "offset": -4 }, "b": { - "Immediate": "0x7" + "Immediate": "0xc" } } } @@ -22940,7 +25892,57 @@ ] ], [ - 9756, + 10883, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -5 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10898, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10914, [ { "TestLessThan": { @@ -22962,7 +25964,7 @@ ] ], [ - 9760, + 10918, [ { "LinearSplit": { @@ -22991,7 +25993,7 @@ ] ], [ - 9771, + 10929, [ { "LinearSplit": { @@ -23020,20 +26022,14 @@ ] ], [ - 9801, + 10958, [ { "SystemCall": { "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -6 - }, - "b": { - "Immediate": "0xe" - } + "Deref": { + "register": "AP", + "offset": -29 } } } @@ -23041,7 +26037,7 @@ ] ], [ - 9817, + 10974, [ { "SystemCall": { @@ -23049,11 +26045,11 @@ "BinOp": { "op": "Add", "a": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -35 }, "b": { - "Immediate": "0x15" + "Immediate": "0x7" } } } @@ -23062,19 +26058,10 @@ ] ], [ - 9925, + 11016, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -23084,45 +26071,36 @@ ] ], [ - 9927, + 11034, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 3 - }, - "remainder": { + "offset": 0 + } + } + } + ] + ], + [ + 11136, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 9972, + 11153, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -23132,209 +26110,263 @@ ] ], [ - 9974, + 11254, [ { - "DivMod": { - "lhs": { + "EvalCircuit": { + "n_add_mods": { "Deref": { "register": "AP", - "offset": -2 + "offset": -6 } }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "add_mod_builtin": { + "Deref": { + "register": "FP", + "offset": -6 + } }, - "quotient": { - "register": "AP", - "offset": 3 + "n_mul_mods": { + "Deref": { + "register": "AP", + "offset": -4 + } }, - "remainder": { + "mul_mod_builtin": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 11311, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11367, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11460, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11481, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11552, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11569, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 10083, + 11620, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": 5 + "offset": 0 } } } ] ], [ - 10087, + 11658, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 4 + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -1 + }, + "b": { + "Immediate": "0x0" + } } }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 + "rhs": { + "Immediate": "0x100000000" }, - "y": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 10098, + 11662, [ { "LinearSplit": { "value": { "Deref": { "register": "AP", - "offset": 4 + "offset": -1 } }, "scalar": { - "Immediate": "0x8000000000000000000000000000000" + "Immediate": "0x8000000000000110000000000000000" }, "max_x": { "Immediate": "0xfffffffffffffffffffffffffffffffe" }, "x": { "register": "AP", - "offset": -2 + "offset": 0 }, "y": { "register": "AP", - "offset": -1 + "offset": 1 } } } ] ], [ - 10124, + 11684, [ { - "SystemCall": { - "system": { + "TestLessThanOrEqual": { + "lhs": { "Deref": { - "register": "FP", - "offset": -6 + "register": "AP", + "offset": -1 } - } - } - } - ] - ], - [ - 10139, - [ - { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -6 - }, - "b": { - "Immediate": "0x7" - } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 } + }, + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10146, + 11698, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -6 + "offset": 0 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x100000000" }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 10148, + 11708, [ { - "DivMod": { + "TestLessThanOrEqual": { "lhs": { "Deref": { "register": "AP", - "offset": -7 + "offset": -1 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 3 + "Deref": { + "register": "AP", + "offset": -2 + } }, - "remainder": { + "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 10169, + 11731, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -23344,149 +26376,138 @@ ] ], [ - 10171, + 11752, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -3 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 3 - }, - "remainder": { + "offset": 0 + } + } + } + ] + ], + [ + 11773, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 10201, + 11821, [ { - "TestLessThan": { + "TestLessThanOrEqual": { "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x1e28" }, "rhs": { - "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + "Deref": { + "register": "FP", + "offset": -8 + } }, "dst": { "register": "AP", - "offset": 5 + "offset": 0 } } } ] ], [ - 10205, + 11881, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 4 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 10216, + 11901, [ { - "LinearSplit": { - "value": { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xcc6" + }, + "rhs": { "Deref": { - "register": "AP", - "offset": 4 + "register": "FP", + "offset": -7 } }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" - }, - "x": { + "dst": { "register": "AP", - "offset": -2 - }, - "y": { + "offset": 0 + } + } + } + ] + ], + [ + 11980, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 10247, + 12010, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "AP", - "offset": -20 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10262, + 12030, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -25 - }, - "b": { - "Immediate": "0x7" - } + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x10ae" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 } + }, + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10306, + 12131, [ { "AllocSegment": { @@ -23499,7 +26520,7 @@ ] ], [ - 10325, + 12161, [ { "AllocSegment": { @@ -23512,63 +26533,84 @@ ] ], [ - 10407, + 12181, [ { - "RandomEcPoint": { - "x": { - "register": "AP", - "offset": 4 + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x22ce" }, - "y": { + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 + } + }, + "dst": { "register": "AP", - "offset": 5 + "offset": 0 } } - }, + } + ] + ], + [ + 12252, + [ { - "AllocConstantSize": { - "size": { - "Immediate": "0x2" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": 6 + "offset": 0 } } } ] ], [ - 10471, + 12273, [ { - "RandomEcPoint": { - "x": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "quotient": { "register": "AP", - "offset": 4 + "offset": 3 }, - "y": { + "remainder": { "register": "AP", - "offset": 5 + "offset": 4 } } - }, + } + ] + ], + [ + 12331, + [ { - "AllocConstantSize": { - "size": { - "Immediate": "0x2" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": 6 + "offset": 0 } } } ] ], [ - 10541, + 12384, [ { "AllocSegment": { @@ -23581,46 +26623,57 @@ ] ], [ - 10566, + 12397, [ { - "SystemCall": { - "system": { + "DivMod": { + "lhs": { "Deref": { "register": "FP", - "offset": -3 + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 } + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 } } } ] ], [ - 10583, + 12405, [ { - "SystemCall": { - "system": { + "TestLessThan": { + "lhs": { "BinOp": { "op": "Add", "a": { - "register": "FP", - "offset": -3 + "register": "AP", + "offset": -6 }, "b": { - "Immediate": "0x7" + "Deref": { + "register": "AP", + "offset": -1 + } } } - } - } - } - ] - ], - [ - 10623, - [ - { - "AllocSegment": { + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -23630,7 +26683,7 @@ ] ], [ - 10639, + 12422, [ { "AllocSegment": { @@ -23643,64 +26696,42 @@ ] ], [ - 10657, - [ - { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -4 - } - } - } - } - ] - ], - [ - 10667, + 12446, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": 0 } }, "rhs": { - "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + "Immediate": "0x100000000" }, "dst": { "register": "AP", - "offset": 5 + "offset": -1 } } } ] ], [ - 10671, + 12470, [ { - "LinearSplit": { - "value": { + "TestLessThan": { + "lhs": { "Deref": { "register": "AP", - "offset": 4 + "offset": 0 } }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 + "rhs": { + "Immediate": "0x100000000" }, - "y": { + "dst": { "register": "AP", "offset": -1 } @@ -23709,27 +26740,20 @@ ] ], [ - 10682, + 12479, [ { - "LinearSplit": { - "value": { + "TestLessThan": { + "lhs": { "Deref": { "register": "AP", - "offset": 4 + "offset": 0 } }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" - }, - "x": { - "register": "AP", - "offset": -2 + "rhs": { + "Immediate": "0x100000000" }, - "y": { + "dst": { "register": "AP", "offset": -1 } @@ -23738,64 +26762,23 @@ ] ], [ - 10726, - [ - { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -4 - }, - "b": { - "Immediate": "0x5" - } - } - } - } - } - ] - ], - [ - 10741, + 12496, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -4 - }, - "b": { - "Immediate": "0xc" - } - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10751, + 12510, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -5 - } - }, - "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -23805,21 +26788,27 @@ ] ], [ - 10766, + 12526, [ { "TestLessThan": { "lhs": { - "Deref": { - "register": "AP", - "offset": -3 + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -1 + }, + "b": { + "Deref": { + "register": "AP", + "offset": -8 + } + } } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x10000000000000000" }, "dst": { "register": "AP", @@ -23830,123 +26819,115 @@ ] ], [ - 10782, + 12548, [ { - "TestLessThan": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" - }, + "AllocSegment": { "dst": { "register": "AP", - "offset": 5 + "offset": 0 } } } ] ], [ - 10786, + 12562, [ { - "LinearSplit": { - "value": { - "Deref": { - "register": "AP", - "offset": 4 - } - }, - "scalar": { - "Immediate": "0x110000000000000000" - }, - "max_x": { - "Immediate": "0xffffffffffffffffffffffffffffffff" - }, - "x": { - "register": "AP", - "offset": -2 - }, - "y": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 10797, + 12619, [ { - "LinearSplit": { - "value": { + "DivMod": { + "lhs": { "Deref": { - "register": "AP", - "offset": 4 + "register": "FP", + "offset": -4 } }, - "scalar": { - "Immediate": "0x8000000000000000000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" + "rhs": { + "Deref": { + "register": "AP", + "offset": -3 + } }, - "x": { + "quotient": { "register": "AP", - "offset": -2 + "offset": 3 }, - "y": { + "remainder": { "register": "AP", - "offset": -1 + "offset": 4 } } } ] ], [ - 10826, + 12628, [ { - "SystemCall": { - "system": { + "TestLessThan": { + "lhs": { "Deref": { "register": "AP", - "offset": -29 + "offset": -1 } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10842, + 12638, [ { - "SystemCall": { - "system": { + "TestLessThan": { + "lhs": { "BinOp": { "op": "Add", "a": { "register": "AP", - "offset": -35 + "offset": -3 }, "b": { - "Immediate": "0x7" + "Deref": { + "register": "AP", + "offset": -9 + } } } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 10884, + 12660, [ { "AllocSegment": { @@ -23959,7 +26940,7 @@ ] ], [ - 10902, + 12675, [ { "AllocSegment": { @@ -23972,7 +26953,7 @@ ] ], [ - 10977, + 12700, [ { "TestLessThan": { @@ -23981,10 +26962,13 @@ "op": "Add", "a": { "register": "AP", - "offset": -1 + "offset": -2 }, "b": { - "Immediate": "0x0" + "Deref": { + "register": "AP", + "offset": -1 + } } } }, @@ -24000,39 +26984,39 @@ ] ], [ - 10981, + 12714, [ { - "LinearSplit": { - "value": { + "DivMod": { + "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": -2 } }, - "scalar": { - "Immediate": "0x8000000000000110000000000000000" - }, - "max_x": { - "Immediate": "0xfffffffffffffffffffffffffffffffe" + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } }, - "x": { + "quotient": { "register": "AP", - "offset": 0 + "offset": 3 }, - "y": { + "remainder": { "register": "AP", - "offset": 1 + "offset": 4 } } } ] ], [ - 11003, + 12731, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", @@ -24040,10 +27024,7 @@ } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -2 - } + "Immediate": "0x100000000" }, "dst": { "register": "AP", @@ -24054,14 +27035,14 @@ ] ], [ - 11017, + 12743, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -1 } }, "rhs": { @@ -24069,28 +27050,34 @@ }, "dst": { "register": "AP", - "offset": -1 + "offset": 0 } } } ] ], [ - 11027, + 12753, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Deref": { - "register": "AP", - "offset": -1 + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -6 + }, + "b": { + "Deref": { + "register": "AP", + "offset": -3 + } + } } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -2 - } + "Immediate": "0x100000000" }, "dst": { "register": "AP", @@ -24101,7 +27088,20 @@ ] ], [ - 11050, + 12776, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12791, [ { "AllocSegment": { @@ -24114,7 +27114,7 @@ ] ], [ - 11071, + 12806, [ { "AllocSegment": { @@ -24127,7 +27127,7 @@ ] ], [ - 11092, + 12821, [ { "AllocSegment": { @@ -24140,17 +27140,48 @@ ] ], [ - 11140, + 12834, [ { "TestLessThanOrEqual": { "lhs": { - "Immediate": "0x1e28" + "Immediate": "0x32f0" }, "rhs": { "Deref": { "register": "FP", - "offset": -8 + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12844, + [ + { + "TestLessThanOrEqualAddress": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -5 + }, + "b": { + "Immediate": "0x10" + } + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -4 } }, "dst": { @@ -24162,7 +27193,22 @@ ] ], [ - 11200, + 12881, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 12914, [ { "AllocSegment": { @@ -24175,42 +27221,95 @@ ] ], [ - 11220, + 12948, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Immediate": "0xcc6" + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12970, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } }, "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 13007, + [ + { + "TestLessThan": { + "lhs": { "Deref": { - "register": "FP", - "offset": -7 + "register": "AP", + "offset": 0 } }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11299, + 13029, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11329, + 13105, [ { "AllocSegment": { @@ -24223,275 +27322,340 @@ ] ], [ - 11349, + 13170, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Immediate": "0x10ae" - }, - "rhs": { "Deref": { - "register": "FP", - "offset": -7 + "register": "AP", + "offset": 0 } }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 11450, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11480, + 13194, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11500, + 13235, [ { - "TestLessThanOrEqual": { + "TestLessThan": { "lhs": { - "Immediate": "0x22ce" - }, - "rhs": { "Deref": { - "register": "FP", - "offset": -7 + "register": "AP", + "offset": 0 } }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11571, + 13261, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 11592, + 13305, [ { - "DivMod": { - "lhs": { + "U256InvModN": { + "b0": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "b1": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "n0": { "Deref": { "register": "AP", "offset": -2 } }, - "rhs": { + "n1": { "Deref": { "register": "AP", "offset": -1 } }, - "quotient": { + "g0_or_no_inv": { + "register": "AP", + "offset": 0 + }, + "g1_option": { + "register": "AP", + "offset": 1 + }, + "s_or_r0": { + "register": "AP", + "offset": 2 + }, + "s_or_r1": { "register": "AP", "offset": 3 }, - "remainder": { + "t_or_k0": { "register": "AP", "offset": 4 + }, + "t_or_k1": { + "register": "AP", + "offset": 5 } } } ] ], [ - 11650, + 13323, [ { - "AllocSegment": { - "dst": { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -22 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "high": { "register": "AP", - "offset": 0 + "offset": -14 + }, + "low": { + "register": "AP", + "offset": -15 } } - } - ] - ], - [ - 11703, - [ + }, { - "AllocSegment": { - "dst": { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -22 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "high": { "register": "AP", - "offset": 0 + "offset": -12 + }, + "low": { + "register": "AP", + "offset": -13 } } - } - ] - ], - [ - 11716, - [ + }, { - "DivMod": { + "WideMul128": { "lhs": { "Deref": { - "register": "FP", - "offset": -4 + "register": "AP", + "offset": -21 } }, "rhs": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": -5 } }, - "quotient": { + "high": { "register": "AP", - "offset": 3 + "offset": -10 }, - "remainder": { + "low": { "register": "AP", - "offset": 4 + "offset": -11 } } - } - ] - ], - [ - 11724, - [ + }, { - "TestLessThan": { + "WideMul128": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -6 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -1 - } - } + "Deref": { + "register": "AP", + "offset": -21 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Deref": { + "register": "FP", + "offset": -4 + } }, - "dst": { + "high": { "register": "AP", - "offset": 0 + "offset": -8 + }, + "low": { + "register": "AP", + "offset": -9 } } - } - ] - ], - [ - 11741, - [ + }, { - "AllocSegment": { - "dst": { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -26 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "high": { + "register": "AP", + "offset": -6 + }, + "low": { "register": "AP", - "offset": 0 + "offset": -7 } } - } - ] - ], - [ - 11765, - [ + }, { - "TestLessThan": { + "WideMul128": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -26 } }, "rhs": { - "Immediate": "0x100000000" + "Deref": { + "register": "AP", + "offset": -19 + } }, - "dst": { + "high": { "register": "AP", - "offset": -1 + "offset": -4 + }, + "low": { + "register": "AP", + "offset": -5 } } - } - ] - ], - [ - 11789, - [ + }, { - "TestLessThan": { + "WideMul128": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -25 } }, "rhs": { - "Immediate": "0x100000000" + "Deref": { + "register": "AP", + "offset": -20 + } }, - "dst": { + "high": { "register": "AP", - "offset": -1 + "offset": -2 + }, + "low": { + "register": "AP", + "offset": -3 } } - } - ] - ], - [ - 11798, - [ + }, { - "TestLessThan": { + "WideMul128": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -25 } }, "rhs": { - "Immediate": "0x100000000" + "Deref": { + "register": "AP", + "offset": -19 + } }, - "dst": { + "high": { + "register": "AP", + "offset": 0 + }, + "low": { "register": "AP", "offset": -1 } @@ -24500,49 +27664,67 @@ ] ], [ - 11815, + 13376, [ { - "AllocSegment": { - "dst": { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -5 + } + }, + "high": { "register": "AP", "offset": 0 + }, + "low": { + "register": "FP", + "offset": -5 } } - } - ] - ], - [ - 11829, - [ + }, { - "AllocSegment": { - "dst": { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -3 + } + }, + "high": { "register": "AP", - "offset": 0 + "offset": 1 + }, + "low": { + "register": "AP", + "offset": -9 } } } ] ], [ - 11845, + 13380, [ { "TestLessThan": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -1 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -8 - } - } + "Deref": { + "register": "AP", + "offset": -10 } }, "rhs": { @@ -24550,30 +27732,26 @@ }, "dst": { "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 11867, - [ - { - "AllocSegment": { - "dst": { - "register": "AP", - "offset": 0 + "offset": 2 } } } ] ], [ - 11881, + 13394, [ { - "AllocSegment": { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -11 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, "dst": { "register": "AP", "offset": 0 @@ -24583,39 +27761,36 @@ ] ], [ - 11938, + 13407, [ { "DivMod": { "lhs": { "Deref": { - "register": "FP", - "offset": -4 + "register": "AP", + "offset": -47 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -3 - } + "Immediate": "0x10000000000000000" }, "quotient": { "register": "AP", - "offset": 3 + "offset": 1 }, "remainder": { "register": "AP", - "offset": 4 + "offset": 0 } } } ] ], [ - 11947, + 13417, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", @@ -24623,97 +27798,65 @@ } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 11957, + 13428, [ { - "TestLessThan": { + "DivMod": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -3 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -9 - } - } + "Deref": { + "register": "AP", + "offset": 2 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x100000000000000000000000000000000" }, - "dst": { - "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 11979, - [ - { - "AllocSegment": { - "dst": { + "quotient": { "register": "AP", - "offset": 0 - } - } - } - ] - ], - [ - 11994, - [ - { - "AllocSegment": { - "dst": { + "offset": -1 + }, + "remainder": { "register": "AP", - "offset": 0 + "offset": -35 } } } ] ], [ - 12019, + 13437, [ { - "TestLessThan": { + "DivMod": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -2 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -1 - } - } + "Deref": { + "register": "AP", + "offset": -62 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -24722,71 +27865,76 @@ ] ], [ - 12033, + 13447, [ { "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": -2 + "offset": -1 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -1 - } + "Immediate": "0x10000000000000000" }, "quotient": { "register": "AP", - "offset": 3 + "offset": 0 }, "remainder": { "register": "AP", - "offset": 4 + "offset": 1 } } } ] ], [ - 12050, + 13458, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": 2 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x100000000000000000000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": 0 + "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -52 } } } ] ], [ - 12062, + 13467, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": -78 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -24795,55 +27943,76 @@ ] ], [ - 12072, + 13477, [ { - "TestLessThan": { + "DivMod": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -6 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -3 - } - } + "Deref": { + "register": "AP", + "offset": -1 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12095, + 13488, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -69 } } } ] ], [ - 12110, + 13497, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -24852,46 +28021,76 @@ ] ], [ - 12125, + 13507, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12140, + 13518, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -86 } } } ] ], [ - 12153, + 13527, [ { - "TestLessThanOrEqual": { + "DivMod": { "lhs": { - "Immediate": "0x38ae" - }, - "rhs": { "Deref": { - "register": "FP", - "offset": -8 + "register": "AP", + "offset": -103 } }, - "dst": { + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -24900,10 +28099,10 @@ ] ], [ - 12175, + 13537, [ { - "TestLessThanOrEqual": { + "DivMod": { "lhs": { "Deref": { "register": "AP", @@ -24911,58 +28110,65 @@ } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -2 - } + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12200, + 13548, [ { - "SystemCall": { - "system": { + "DivMod": { + "lhs": { "Deref": { - "register": "FP", - "offset": -7 + "register": "AP", + "offset": 2 } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -103 } } } ] ], [ - 12209, + 13557, [ { - "TestLessThan": { + "DivMod": { "lhs": { - "BinOp": { - "op": "Add", - "a": { - "register": "FP", - "offset": -6 - }, - "b": { - "Deref": { - "register": "AP", - "offset": -4 - } - } + "Deref": { + "register": "AP", + "offset": -118 } }, "rhs": { - "Immediate": "0x100000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -24971,37 +28177,76 @@ ] ], [ - 12232, + 13567, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12256, + 13578, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { "register": "AP", - "offset": 0 + "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -120 } } } ] ], [ - 12270, + 13587, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -134 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { "register": "AP", "offset": 0 } @@ -25010,108 +28255,230 @@ ] ], [ - 12293, + 13597, [ { - "AllocSegment": { - "dst": { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { "register": "AP", "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12325, + 13608, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": 2 } }, "rhs": { "Immediate": "0x100000000000000000000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -137 } } } ] ], [ - 12347, + 13617, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -149 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 1 + }, + "remainder": { + "register": "AP", + "offset": 0 } } } ] ], [ - 12384, + 13627, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -1 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12406, + 13638, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": 2 } }, "rhs": { "Immediate": "0x100000000000000000000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -154 + } + } + } + ] + ], + [ + 13686, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -10 + } + } + } + } + ] + ], + [ + 13703, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -2 + } + } + } + } + ] + ], + [ + 13715, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -6 + }, + "b": { + "Immediate": "0x8" + } + } + } + } + } + ] + ], + [ + 13726, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -10 + }, + "b": { + "Immediate": "0x10" + } + } + } + } + } + ] + ], + [ + 13736, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "AP", + "offset": -14 + }, + "b": { + "Immediate": "0x17" + } + } } } } ] ], [ - 12482, + 13821, [ { "AllocSegment": { @@ -25124,436 +28491,476 @@ ] ], [ - 12547, + 13850, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -669 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 1 + }, + "remainder": { + "register": "AP", + "offset": 0 } } } ] ], [ - 12571, + 13860, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -1 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 } } } ] ], [ - 12612, + 13871, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": 2 } }, "rhs": { "Immediate": "0x100000000000000000000000000000000" }, - "dst": { + "quotient": { "register": "AP", "offset": -1 + }, + "remainder": { + "register": "AP", + "offset": -683 } } } ] ], [ - 12638, + 13880, [ { - "TestLessThan": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 0 + "offset": -684 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x10000000000000000" }, - "dst": { + "quotient": { "register": "AP", - "offset": -1 + "offset": 1 + }, + "remainder": { + "register": "AP", + "offset": 0 } } } ] ], [ - 12682, + 13890, [ { - "U256InvModN": { - "b0": { - "Deref": { - "register": "FP", - "offset": -5 - } - }, - "b1": { - "Deref": { - "register": "FP", - "offset": -4 - } - }, - "n0": { - "Deref": { - "register": "AP", - "offset": -2 - } - }, - "n1": { + "DivMod": { + "lhs": { "Deref": { "register": "AP", "offset": -1 } }, - "g0_or_no_inv": { - "register": "AP", - "offset": 0 - }, - "g1_option": { - "register": "AP", - "offset": 1 - }, - "s_or_r0": { - "register": "AP", - "offset": 2 - }, - "s_or_r1": { - "register": "AP", - "offset": 3 + "rhs": { + "Immediate": "0x10000000000000000" }, - "t_or_k0": { + "quotient": { "register": "AP", - "offset": 4 + "offset": 0 }, - "t_or_k1": { + "remainder": { "register": "AP", - "offset": 5 + "offset": 1 } } } ] ], [ - 12700, + 13901, [ { - "WideMul128": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": -22 + "offset": 2 } }, "rhs": { - "Deref": { - "register": "FP", - "offset": -5 - } + "Immediate": "0x100000000000000000000000000000000" }, - "high": { + "quotient": { "register": "AP", - "offset": -14 + "offset": -1 }, - "low": { + "remainder": { + "register": "FP", + "offset": -5 + } + } + } + ] + ], + [ + 13910, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -15 + "offset": 0 } } - }, + } + ] + ], + [ + 13948, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { - "Deref": { - "register": "AP", - "offset": -22 + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -5 + }, + "b": { + "Deref": { + "register": "FP", + "offset": -3 + } + } } }, "rhs": { - "Deref": { - "register": "FP", - "offset": -4 - } - }, - "high": { - "register": "AP", - "offset": -12 + "Immediate": "0x100000000" }, - "low": { + "dst": { "register": "AP", - "offset": -13 + "offset": 0 } } - }, + } + ] + ], + [ + 13963, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -21 + "offset": 0 } }, "rhs": { - "Deref": { - "register": "FP", - "offset": -5 - } - }, - "high": { - "register": "AP", - "offset": -10 + "Immediate": "0x100000000" }, - "low": { + "dst": { "register": "AP", - "offset": -11 + "offset": -1 } } - }, + } + ] + ], + [ + 13982, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -21 + "offset": 0 } }, "rhs": { - "Deref": { - "register": "FP", - "offset": -4 - } - }, - "high": { - "register": "AP", - "offset": -8 + "Immediate": "0x100000000" }, - "low": { + "dst": { "register": "AP", - "offset": -9 + "offset": -1 } } - }, + } + ] + ], + [ + 14001, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -26 + "offset": 0 } }, "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14011, + [ + { + "TestLessThan": { + "lhs": { "Deref": { - "register": "AP", - "offset": -20 + "register": "FP", + "offset": -4 } }, - "high": { - "register": "AP", - "offset": -6 + "rhs": { + "Immediate": "0x100000000000000000000000000000000" }, - "low": { + "dst": { "register": "AP", - "offset": -7 + "offset": 0 } } - }, + } + ] + ], + [ + 14013, + [ { - "WideMul128": { + "DivMod": { "lhs": { "Deref": { - "register": "AP", - "offset": -26 + "register": "FP", + "offset": -4 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -19 - } + "Immediate": "0x100000000000000000000000000000000" }, - "high": { + "quotient": { "register": "AP", - "offset": -4 + "offset": 3 }, - "low": { + "remainder": { "register": "AP", - "offset": -5 + "offset": 4 } } - }, + } + ] + ], + [ + 14050, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -25 + "offset": 0 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -20 - } + "Immediate": "0x100000000" }, - "high": { + "dst": { "register": "AP", - "offset": -2 - }, - "low": { + "offset": -1 + } + } + } + ] + ], + [ + 14069, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -3 + "offset": 0 } } - }, + } + ] + ], + [ + 14080, + [ { - "WideMul128": { + "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": -25 + "offset": -18 } }, "rhs": { "Deref": { "register": "AP", - "offset": -19 + "offset": -1 } }, - "high": { + "quotient": { "register": "AP", - "offset": 0 + "offset": 5 }, - "low": { + "remainder": { "register": "AP", - "offset": -1 + "offset": 6 } } } ] ], [ - 12753, + 14086, [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -7 + "offset": 0 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -5 - } + "Immediate": "0x10000000000000000" }, - "high": { + "dst": { "register": "AP", - "offset": 0 - }, - "low": { - "register": "FP", - "offset": -5 + "offset": -3 } } - }, + } + ] + ], + [ + 14100, + [ { - "WideMul128": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -7 + "offset": 0 } }, "rhs": { - "Deref": { - "register": "AP", - "offset": -3 - } - }, - "high": { - "register": "AP", - "offset": 1 + "Immediate": "0x100000000" }, - "low": { + "dst": { "register": "AP", - "offset": -9 + "offset": -1 } } } ] ], [ - 12757, + 14114, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -10 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, "dst": { "register": "AP", - "offset": 2 + "offset": -1 } } } ] ], [ - 12771, + 14125, [ { "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -11 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14154, + [ + { + "AllocSegment": { "dst": { "register": "AP", "offset": 0 @@ -25563,102 +28970,139 @@ ] ], [ - 12784, + 14179, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -47 + "offset": -1 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 1 + "Immediate": "0x100000000000000000000000000000000000000000000000000000000000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 12794, + 14183, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": 3 } }, - "rhs": { - "Immediate": "0x10000000000000000" + "scalar": { + "Immediate": "0x7000000000000110000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 }, - "remainder": { + "y": { "register": "AP", - "offset": 1 + "offset": -1 } } } ] ], [ - 12805, + 14193, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": 2 + "offset": -2 } }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "scalar": { + "Immediate": "0x1000000000000000000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", "offset": -1 }, - "remainder": { + "y": { "register": "AP", - "offset": -35 + "offset": 0 } } } ] ], [ - 12814, + 14213, [ { - "DivMod": { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14234, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14255, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14275, + [ + { + "TestLessThan": { "lhs": { "Deref": { - "register": "AP", - "offset": -62 + "register": "FP", + "offset": -4 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 1 + "Immediate": "0x100000000000000000000000000000000" }, - "remainder": { + "dst": { "register": "AP", "offset": 0 } @@ -25667,154 +29111,189 @@ ] ], [ - 12824, + 14277, [ { "DivMod": { "lhs": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": -4 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000000000000000000000000000" }, "quotient": { "register": "AP", - "offset": 0 + "offset": 3 }, "remainder": { "register": "AP", - "offset": 1 + "offset": 4 + } + } + } + ] + ], + [ + 14321, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 12835, + 14332, [ { "DivMod": { "lhs": { "Deref": { "register": "AP", - "offset": 2 + "offset": -16 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Deref": { + "register": "AP", + "offset": -1 + } }, "quotient": { "register": "AP", - "offset": -1 + "offset": 5 }, "remainder": { "register": "AP", - "offset": -52 + "offset": 6 } } } ] ], [ - 12844, + 14338, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -78 + "offset": 0 } }, "rhs": { "Immediate": "0x10000000000000000" }, - "quotient": { - "register": "AP", - "offset": 1 - }, - "remainder": { + "dst": { "register": "AP", - "offset": 0 + "offset": -3 } } } ] ], [ - 12854, + 14352, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 0 + "Immediate": "0x100000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 1 + "offset": -1 } } } ] ], [ - 12865, + 14370, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": 2 + "offset": 0 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", "offset": -1 + } + } + } + ] + ], + [ + 14383, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } }, - "remainder": { + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { "register": "AP", - "offset": -69 + "offset": -1 } } } ] ], [ - 12874, + 14394, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -93 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", - "offset": 1 - }, - "remainder": { + "offset": -1 + } + } + } + ] + ], + [ + 14423, + [ + { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -25823,10 +29302,10 @@ ] ], [ - 12884, + 14448, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", @@ -25834,65 +29313,67 @@ } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 0 + "Immediate": "0x100000000000000000000000000000000000000000000000000000000000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 1 + "offset": 4 } } } ] ], [ - 12895, + 14452, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": 2 + "offset": 3 } }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "scalar": { + "Immediate": "0x7000000000000110000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": -1 + "offset": -2 }, - "remainder": { + "y": { "register": "AP", - "offset": -86 + "offset": -1 } } } ] ], [ - 12904, + 14462, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -103 + "offset": -2 } }, - "rhs": { - "Immediate": "0x10000000000000000" + "scalar": { + "Immediate": "0x1000000000000000000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 1 + "offset": -1 }, - "remainder": { + "y": { "register": "AP", "offset": 0 } @@ -25901,76 +29382,37 @@ ] ], [ - 12914, + 14482, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -1 - } - }, - "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 - }, - "remainder": { - "register": "AP", - "offset": 1 } } } ] ], [ - 12925, + 14503, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": 2 - } - }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" - }, - "quotient": { - "register": "AP", - "offset": -1 - }, - "remainder": { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -103 + "offset": 0 } } } ] ], [ - 12934, + 14524, [ { - "DivMod": { - "lhs": { - "Deref": { - "register": "AP", - "offset": -118 - } - }, - "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 1 - }, - "remainder": { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -25979,40 +29421,36 @@ ] ], [ - 12944, + 14553, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { - "register": "AP", - "offset": -1 + "register": "FP", + "offset": -4 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000000000000000000000000000" }, - "quotient": { + "dst": { "register": "AP", "offset": 0 - }, - "remainder": { - "register": "AP", - "offset": 1 } } } ] ], [ - 12955, + 14555, [ { "DivMod": { "lhs": { "Deref": { - "register": "AP", - "offset": 2 + "register": "FP", + "offset": -4 } }, "rhs": { @@ -26020,267 +29458,260 @@ }, "quotient": { "register": "AP", - "offset": -1 + "offset": 3 }, "remainder": { "register": "AP", - "offset": -120 + "offset": 4 } } } ] ], [ - 12964, + 14592, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -134 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 1 + "Immediate": "0x100000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 0 + "offset": -1 } } } ] ], [ - 12974, + 14603, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -1 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 0 + "Immediate": "0x100000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 1 + "offset": -1 } } } ] ], [ - 12985, + 14614, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": 2 + "offset": 0 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", "offset": -1 - }, - "remainder": { + } + } + } + ] + ], + [ + 14643, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": -137 + "offset": 0 } } } ] ], [ - 12994, + 14668, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -149 + "offset": -1 } }, "rhs": { - "Immediate": "0x10000000000000000" - }, - "quotient": { - "register": "AP", - "offset": 1 + "Immediate": "0x100000000000000000000000000000000000000000000000000000000000000" }, - "remainder": { + "dst": { "register": "AP", - "offset": 0 + "offset": 4 } } } ] ], [ - 13004, + 14672, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": 3 } }, - "rhs": { - "Immediate": "0x10000000000000000" + "scalar": { + "Immediate": "0x7000000000000110000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 }, - "remainder": { + "y": { "register": "AP", - "offset": 1 + "offset": -1 } } } ] ], [ - 13015, + 14682, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": 2 + "offset": -2 } }, - "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "scalar": { + "Immediate": "0x1000000000000000000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", "offset": -1 }, - "remainder": { + "y": { "register": "AP", - "offset": -154 + "offset": 0 } } } ] ], [ - 13063, + 14708, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "FP", - "offset": -10 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 13080, + 14729, [ { - "SystemCall": { - "system": { - "Deref": { - "register": "AP", - "offset": -2 - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 13092, + 14751, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -6 - }, - "b": { - "Immediate": "0x8" - } - } + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 } } } ] ], [ - 13103, + 14773, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -10 - }, - "b": { - "Immediate": "0x10" - } + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": -1 } } } ] ], [ - 13113, + 14784, [ { - "SystemCall": { - "system": { - "BinOp": { - "op": "Add", - "a": { - "register": "AP", - "offset": -14 - }, - "b": { - "Immediate": "0x17" - } + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 } + }, + "rhs": { + "Immediate": "0x100000000" + }, + "dst": { + "register": "AP", + "offset": -1 } } } ] ], [ - 13198, + 14813, [ { "AllocSegment": { @@ -26293,102 +29724,148 @@ ] ], [ - 13227, + 14838, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -669 + "offset": -1 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000000000000000000000000000000000000000000000000000000000" }, - "quotient": { + "dst": { "register": "AP", - "offset": 1 + "offset": 4 + } + } + } + ] + ], + [ + 14842, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } }, - "remainder": { + "scalar": { + "Immediate": "0x7000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 } } } ] ], [ - 13237, + 14852, [ { - "DivMod": { - "lhs": { + "LinearSplit": { + "value": { "Deref": { "register": "AP", - "offset": -1 + "offset": -2 } }, - "rhs": { - "Immediate": "0x10000000000000000" + "scalar": { + "Immediate": "0x1000000000000000000000000000000" }, - "quotient": { + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { "register": "AP", - "offset": 0 + "offset": -1 }, - "remainder": { + "y": { "register": "AP", - "offset": 1 + "offset": 0 } } } ] ], [ - 13248, + 14875, [ { - "DivMod": { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14920, + [ + { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": 2 + "offset": 0 } }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", "offset": -1 - }, - "remainder": { - "register": "AP", - "offset": -683 } } } ] ], [ - 13257, + 14931, [ { - "DivMod": { + "TestLessThan": { "lhs": { "Deref": { "register": "AP", - "offset": -684 + "offset": 0 } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", - "offset": 1 - }, - "remainder": { + "offset": -1 + } + } + } + ] + ], + [ + 14960, + [ + { + "AllocSegment": { + "dst": { "register": "AP", "offset": 0 } @@ -26397,59 +29874,86 @@ ] ], [ - 13267, + 14983, [ { - "DivMod": { + "TestLessThan": { "lhs": { - "Deref": { - "register": "AP", - "offset": -1 + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -5 + }, + "b": { + "Deref": { + "register": "FP", + "offset": -3 + } + } } }, "rhs": { - "Immediate": "0x10000000000000000" + "Immediate": "0x100000000" }, - "quotient": { + "dst": { "register": "AP", "offset": 0 - }, - "remainder": { + } + } + } + ] + ], + [ + 15007, + [ + { + "AllocSegment": { + "dst": { "register": "AP", - "offset": 1 + "offset": 0 } } } ] ], [ - 13278, + 15051, [ { - "DivMod": { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15078, + [ + { + "TestLessThanOrEqual": { "lhs": { - "Deref": { - "register": "AP", - "offset": 2 - } + "Immediate": "0x8de" }, "rhs": { - "Immediate": "0x100000000000000000000000000000000" + "Deref": { + "register": "FP", + "offset": -7 + } }, - "quotient": { + "dst": { "register": "AP", - "offset": -1 - }, - "remainder": { - "register": "FP", - "offset": -5 + "offset": 0 } } } ] ], [ - 13287, + 15130, [ { "AllocSegment": { @@ -26462,7 +29966,7 @@ ] ], [ - 13362, + 15218, [ { "TestLessThan": { @@ -26490,7 +29994,7 @@ ] ], [ - 13366, + 15222, [ { "LinearSplit": { @@ -26519,7 +30023,7 @@ ] ], [ - 13408, + 15264, [ { "TestLessThan": { @@ -26541,7 +30045,7 @@ ] ], [ - 13410, + 15266, [ { "DivMod": { @@ -26567,7 +30071,7 @@ ] ], [ - 13497, + 15353, [ { "DivMod": { @@ -26596,7 +30100,7 @@ ] ], [ - 13503, + 15359, [ { "TestLessThan": { @@ -26618,7 +30122,7 @@ ] ], [ - 13514, + 15370, [ { "TestLessThan": { @@ -26640,7 +30144,7 @@ ] ], [ - 13524, + 15380, [ { "TestLessThan": { @@ -26662,7 +30166,7 @@ ] ], [ - 13538, + 15394, [ { "DivMod": { @@ -26691,7 +30195,7 @@ ] ], [ - 13544, + 15400, [ { "TestLessThan": { @@ -26713,7 +30217,7 @@ ] ], [ - 13558, + 15414, [ { "TestLessThan": { @@ -26735,7 +30239,7 @@ ] ], [ - 13568, + 15424, [ { "TestLessThan": { @@ -26757,7 +30261,7 @@ ] ], [ - 13590, + 15446, [ { "AllocSegment": { @@ -26770,7 +30274,7 @@ ] ], [ - 13604, + 15460, [ { "AllocSegment": { @@ -26783,7 +30287,7 @@ ] ], [ - 13622, + 15478, [ { "AllocSegment": { @@ -26796,7 +30300,7 @@ ] ], [ - 13636, + 15492, [ { "AllocSegment": { @@ -26809,7 +30313,7 @@ ] ], [ - 13652, + 15508, [ { "TestLessThanOrEqual": { @@ -26831,7 +30335,7 @@ ] ], [ - 13679, + 15535, [ { "TestLessThan": { @@ -26853,7 +30357,7 @@ ] ], [ - 13696, + 15552, [ { "AllocSegment": { @@ -26866,7 +30370,7 @@ ] ], [ - 13721, + 15577, [ { "AllocSegment": { @@ -26879,7 +30383,7 @@ ] ], [ - 13966, + 15822, [ { "SystemCall": { @@ -26894,7 +30398,7 @@ ] ], [ - 13992, + 15848, [ { "SystemCall": { @@ -26909,7 +30413,7 @@ ] ], [ - 14006, + 15862, [ { "U256InvModN": { @@ -26966,7 +30470,7 @@ ] ], [ - 14024, + 15880, [ { "WideMul128": { @@ -27163,7 +30667,7 @@ ] ], [ - 14077, + 15933, [ { "WideMul128": { @@ -27216,7 +30720,7 @@ ] ], [ - 14081, + 15937, [ { "TestLessThan": { @@ -27238,7 +30742,7 @@ ] ], [ - 14095, + 15951, [ { "TestLessThan": { @@ -27260,7 +30764,7 @@ ] ], [ - 14108, + 15964, [ { "DivMod": { @@ -27286,7 +30790,7 @@ ] ], [ - 14118, + 15974, [ { "DivMod": { @@ -27312,7 +30816,7 @@ ] ], [ - 14129, + 15985, [ { "DivMod": { @@ -27338,7 +30842,7 @@ ] ], [ - 14138, + 15994, [ { "DivMod": { @@ -27364,7 +30868,7 @@ ] ], [ - 14148, + 16004, [ { "DivMod": { @@ -27390,7 +30894,7 @@ ] ], [ - 14159, + 16015, [ { "DivMod": { @@ -27416,7 +30920,7 @@ ] ], [ - 14168, + 16024, [ { "DivMod": { @@ -27442,7 +30946,7 @@ ] ], [ - 14178, + 16034, [ { "DivMod": { @@ -27468,7 +30972,7 @@ ] ], [ - 14189, + 16045, [ { "DivMod": { @@ -27494,7 +30998,7 @@ ] ], [ - 14198, + 16054, [ { "DivMod": { @@ -27520,7 +31024,7 @@ ] ], [ - 14208, + 16064, [ { "DivMod": { @@ -27546,7 +31050,7 @@ ] ], [ - 14219, + 16075, [ { "DivMod": { @@ -27572,7 +31076,7 @@ ] ], [ - 14228, + 16084, [ { "DivMod": { @@ -27598,7 +31102,7 @@ ] ], [ - 14238, + 16094, [ { "DivMod": { @@ -27624,7 +31128,7 @@ ] ], [ - 14249, + 16105, [ { "DivMod": { @@ -27650,7 +31154,7 @@ ] ], [ - 14258, + 16114, [ { "DivMod": { @@ -27676,7 +31180,7 @@ ] ], [ - 14268, + 16124, [ { "DivMod": { @@ -27702,7 +31206,7 @@ ] ], [ - 14279, + 16135, [ { "DivMod": { @@ -27728,7 +31232,7 @@ ] ], [ - 14288, + 16144, [ { "DivMod": { @@ -27754,7 +31258,7 @@ ] ], [ - 14298, + 16154, [ { "DivMod": { @@ -27780,7 +31284,7 @@ ] ], [ - 14309, + 16165, [ { "DivMod": { @@ -27806,7 +31310,7 @@ ] ], [ - 14318, + 16174, [ { "DivMod": { @@ -27832,7 +31336,7 @@ ] ], [ - 14328, + 16184, [ { "DivMod": { @@ -27858,7 +31362,7 @@ ] ], [ - 14339, + 16195, [ { "DivMod": { @@ -27884,7 +31388,7 @@ ] ], [ - 14363, + 16219, [ { "TestLessThan": { @@ -27906,7 +31410,7 @@ ] ], [ - 14388, + 16244, [ { "TestLessThan": { @@ -27928,7 +31432,7 @@ ] ], [ - 14408, + 16264, [ { "TestLessThan": { @@ -27950,7 +31454,7 @@ ] ], [ - 14453, + 16309, [ { "SystemCall": { @@ -27965,7 +31469,7 @@ ] ], [ - 14465, + 16321, [ { "SystemCall": { @@ -27986,7 +31490,7 @@ ] ], [ - 14476, + 16332, [ { "SystemCall": { @@ -28007,7 +31511,7 @@ ] ], [ - 14522, + 16378, [ { "AllocSegment": { @@ -28020,7 +31524,7 @@ ] ], [ - 14538, + 16394, [ { "DivMod": { @@ -28046,7 +31550,7 @@ ] ], [ - 14548, + 16404, [ { "DivMod": { @@ -28072,7 +31576,7 @@ ] ], [ - 14559, + 16415, [ { "DivMod": { @@ -28098,7 +31602,7 @@ ] ], [ - 14568, + 16424, [ { "DivMod": { @@ -28124,7 +31628,7 @@ ] ], [ - 14578, + 16434, [ { "DivMod": { @@ -28150,7 +31654,7 @@ ] ], [ - 14589, + 16445, [ { "DivMod": { @@ -28176,7 +31680,7 @@ ] ], [ - 14598, + 16454, [ { "AllocSegment": { @@ -28189,7 +31693,7 @@ ] ], [ - 14615, + 16471, [ { "AllocSegment": { @@ -28202,7 +31706,7 @@ ] ], [ - 14672, + 16528, [ { "SystemCall": { @@ -28217,7 +31721,7 @@ ] ], [ - 14679, + 16535, [ { "AllocConstantSize": { @@ -28233,7 +31737,7 @@ ] ], [ - 14683, + 16539, [ { "AllocSegment": { @@ -28246,7 +31750,7 @@ ] ], [ - 14718, + 16574, [ { "SystemCall": { @@ -28261,7 +31765,7 @@ ] ], [ - 14791, + 16647, [ { "DivMod": { @@ -28290,7 +31794,7 @@ ] ], [ - 14797, + 16653, [ { "TestLessThan": { @@ -28312,7 +31816,7 @@ ] ], [ - 14864, + 16720, [ { "WideMul128": { @@ -28341,7 +31845,7 @@ ] ], [ - 14866, + 16722, [ { "DivMod": { @@ -28367,7 +31871,7 @@ ] ], [ - 14876, + 16732, [ { "DivMod": { @@ -28393,7 +31897,7 @@ ] ], [ - 14887, + 16743, [ { "DivMod": { @@ -28419,7 +31923,7 @@ ] ], [ - 14896, + 16752, [ { "WideMul128": { @@ -28448,7 +31952,7 @@ ] ], [ - 14898, + 16754, [ { "DivMod": { @@ -28474,7 +31978,7 @@ ] ], [ - 14908, + 16764, [ { "DivMod": { @@ -28500,7 +32004,7 @@ ] ], [ - 14919, + 16775, [ { "DivMod": { @@ -28526,7 +32030,7 @@ ] ], [ - 14929, + 16785, [ { "TestLessThan": { @@ -28548,7 +32052,7 @@ ] ], [ - 14951, + 16807, [ { "WideMul128": { @@ -28577,7 +32081,7 @@ ] ], [ - 14953, + 16809, [ { "DivMod": { @@ -28603,7 +32107,7 @@ ] ], [ - 14963, + 16819, [ { "DivMod": { @@ -28629,7 +32133,7 @@ ] ], [ - 14974, + 16830, [ { "DivMod": { @@ -28655,7 +32159,7 @@ ] ], [ - 14984, + 16840, [ { "TestLessThan": { @@ -28677,7 +32181,7 @@ ] ], [ - 15007, + 16863, [ { "TestLessThan": { @@ -28699,7 +32203,7 @@ ] ], [ - 15029, + 16885, [ { "WideMul128": { @@ -28728,7 +32232,7 @@ ] ], [ - 15031, + 16887, [ { "DivMod": { @@ -28754,7 +32258,7 @@ ] ], [ - 15041, + 16897, [ { "DivMod": { @@ -28780,7 +32284,7 @@ ] ], [ - 15052, + 16908, [ { "DivMod": { @@ -28806,7 +32310,7 @@ ] ], [ - 15062, + 16918, [ { "TestLessThan": { @@ -28828,7 +32332,7 @@ ] ], [ - 15081, + 16937, [ { "TestLessThan": { @@ -28850,7 +32354,7 @@ ] ], [ - 15104, + 16960, [ { "TestLessThan": { @@ -28872,7 +32376,7 @@ ] ], [ - 15123, + 16979, [ { "TestLessThan": { @@ -28894,7 +32398,7 @@ ] ], [ - 15142, + 16998, [ { "TestLessThan": { @@ -28916,7 +32420,7 @@ ] ], [ - 15165, + 17021, [ { "TestLessThan": { @@ -28938,7 +32442,7 @@ ] ], [ - 15187, + 17043, [ { "Uint512DivModByUint256": { @@ -29007,7 +32511,7 @@ ] ], [ - 15205, + 17061, [ { "WideMul128": { @@ -29132,7 +32636,7 @@ ] ], [ - 15234, + 17090, [ { "TestLessThan": { @@ -29157,7 +32661,7 @@ ] ], [ - 15246, + 17102, [ { "TestLessThan": { @@ -29182,7 +32686,7 @@ ] ], [ - 15261, + 17117, [ { "DivMod": { @@ -29208,7 +32712,7 @@ ] ], [ - 15271, + 17127, [ { "DivMod": { @@ -29234,7 +32738,7 @@ ] ], [ - 15282, + 17138, [ { "DivMod": { @@ -29260,7 +32764,7 @@ ] ], [ - 15291, + 17147, [ { "DivMod": { @@ -29286,7 +32790,7 @@ ] ], [ - 15301, + 17157, [ { "DivMod": { @@ -29312,7 +32816,7 @@ ] ], [ - 15312, + 17168, [ { "DivMod": { @@ -29338,7 +32842,7 @@ ] ], [ - 15321, + 17177, [ { "DivMod": { @@ -29364,7 +32868,7 @@ ] ], [ - 15331, + 17187, [ { "DivMod": { @@ -29390,7 +32894,7 @@ ] ], [ - 15342, + 17198, [ { "DivMod": { @@ -29416,7 +32920,7 @@ ] ], [ - 15351, + 17207, [ { "DivMod": { @@ -29442,7 +32946,7 @@ ] ], [ - 15361, + 17217, [ { "DivMod": { @@ -29468,7 +32972,7 @@ ] ], [ - 15372, + 17228, [ { "DivMod": { @@ -29494,7 +32998,7 @@ ] ], [ - 15381, + 17237, [ { "DivMod": { @@ -29520,7 +33024,7 @@ ] ], [ - 15391, + 17247, [ { "DivMod": { @@ -29546,7 +33050,7 @@ ] ], [ - 15402, + 17258, [ { "DivMod": { @@ -29572,7 +33076,42 @@ ] ], [ - 15426, + 17272, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x10" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17390, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17413, [ { "TestLessThanOrEqual": { @@ -29597,7 +33136,7 @@ ] ], [ - 15501, + 17488, [ { "AllocSegment": { @@ -29610,7 +33149,7 @@ ] ], [ - 15556, + 17543, [ { "DivMod": { @@ -29639,7 +33178,7 @@ ] ], [ - 15562, + 17549, [ { "TestLessThan": { @@ -29661,7 +33200,7 @@ ] ], [ - 15575, + 17562, [ { "TestLessThan": { @@ -29683,7 +33222,7 @@ ] ], [ - 15585, + 17572, [ { "TestLessThan": { @@ -29705,7 +33244,7 @@ ] ], [ - 15633, + 17620, [ { "DivMod": { @@ -29734,7 +33273,7 @@ ] ], [ - 15639, + 17626, [ { "TestLessThan": { @@ -29756,7 +33295,7 @@ ] ], [ - 15655, + 17642, [ { "TestLessThan": { @@ -29778,7 +33317,7 @@ ] ], [ - 15665, + 17652, [ { "TestLessThan": { @@ -29800,7 +33339,7 @@ ] ], [ - 15688, + 17675, [ { "AllocSegment": { @@ -29813,7 +33352,7 @@ ] ], [ - 15702, + 17689, [ { "AllocSegment": { @@ -29826,7 +33365,7 @@ ] ], [ - 15721, + 17708, [ { "AllocSegment": { @@ -29839,7 +33378,7 @@ ] ], [ - 15735, + 17722, [ { "AllocSegment": { @@ -30043,6 +33582,16 @@ "range_check" ] }, + { + "selector": "0x3d3da80997f8be5d16e9ae7ee6a4b5f7191d60765a1a6c219ab74269c85cf97", + "offset": 5383, + "builtins": [ + "range_check", + "range_check_96", + "add_mod", + "mul_mod" + ] + }, { "selector": "0x3d95049b565ec2d4197a55108ef03996381d31c84acf392a0a42b28163d69d1", "offset": 3279, @@ -30061,14 +33610,14 @@ "L1_HANDLER": [ { "selector": "0x205500a208d0d49d79197fea83cc3f5fde99ac2e1909ae0a5d9f394c0c52ed0", - "offset": 5544, + "offset": 5672, "builtins": [ "range_check" ] }, { "selector": "0x39edbbb129ad752107a94d40c3873cae369a46fd2fc578d075679aa67e85d12", - "offset": 5383, + "offset": 5511, "builtins": [ "range_check" ] @@ -30077,7 +33626,7 @@ "CONSTRUCTOR": [ { "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", - "offset": 5794, + "offset": 5922, "builtins": [ "range_check" ] diff --git a/crates/blockifier/feature_contracts/cairo1/test_contract.cairo b/crates/blockifier/feature_contracts/cairo1/test_contract.cairo index d6a8d42936..56d6d15732 100644 --- a/crates/blockifier/feature_contracts/cairo1/test_contract.cairo +++ b/crates/blockifier/feature_contracts/cairo1/test_contract.cairo @@ -21,11 +21,16 @@ mod TestContract { info::{BlockInfo, SyscallResultTrait}, info::v2::{ExecutionInfo, TxInfo, ResourceBounds,}, syscalls }; + use core::circuit::{ + CircuitElement, CircuitInput, circuit_add, circuit_sub, circuit_mul, circuit_inverse, + EvalCircuitResult, EvalCircuitTrait, u384, CircuitOutputsTrait, + CircuitModulus, CircuitInputs, AddInputResultTrait + }; #[storage] struct Storage { my_storage_var: felt252, - two_counters: LegacyMap, + two_counters: starknet::storage::Map, ec_point: (felt252, felt252), } @@ -532,4 +537,20 @@ mod TestContract { payload.append(34); starknet::send_message_to_l1_syscall(to_address, payload.span()).unwrap_syscall(); } + + #[external(v0)] + fn test_circuit(ref self: ContractState) { + let in1 = CircuitElement::> {}; + let in2 = CircuitElement::> {}; + let add = circuit_add(in1, in2); + let inv = circuit_inverse(add); + let sub = circuit_sub(inv, in2); + let mul = circuit_mul(inv, sub); + + let modulus = TryInto::<_, CircuitModulus>::try_into([7, 0, 0, 0]).unwrap(); + let outputs = + (mul,).new_inputs().next([3, 0, 0, 0]).next([6, 0, 0, 0]).done().eval(modulus).unwrap(); + + assert!(outputs.get_output(mul) == u384 { limb0: 6, limb1: 0, limb2: 0, limb3: 0 }); + } } diff --git a/crates/blockifier/resources/versioned_constants.json b/crates/blockifier/resources/versioned_constants.json index d333ecf6a0..e1369de637 100644 --- a/crates/blockifier/resources/versioned_constants.json +++ b/crates/blockifier/resources/versioned_constants.json @@ -554,6 +554,10 @@ }, "validate_max_n_steps": 1000000, "vm_resource_fee_cost": { + "add_mod_builtin": [ + 4, + 100 + ], "bitwise_builtin": [ 16, 100 @@ -570,6 +574,10 @@ 512, 100 ], + "mul_mod_builtin": [ + 4, + 100 + ], "n_steps": [ 25, 10000 @@ -589,6 +597,10 @@ "range_check_builtin": [ 4, 100 + ], + "range_check96_builtin": [ + 4, + 100 ] } } diff --git a/crates/blockifier/resources/versioned_constants_13_0.json b/crates/blockifier/resources/versioned_constants_13_0.json index 484c1a2fa7..b2d3a13fe3 100644 --- a/crates/blockifier/resources/versioned_constants_13_0.json +++ b/crates/blockifier/resources/versioned_constants_13_0.json @@ -492,6 +492,10 @@ }, "validate_max_n_steps": 1000000, "vm_resource_fee_cost": { + "add_mod_builtin": [ + 0, + 1 + ], "bitwise_builtin": [ 32, 100 @@ -508,6 +512,10 @@ 1024, 100 ], + "mul_mod_builtin": [ + 0, + 1 + ], "n_steps": [ 5, 1000 @@ -527,6 +535,10 @@ "range_check_builtin": [ 8, 100 + ], + "range_check96_builtin": [ + 0, + 1 ] } } diff --git a/crates/blockifier/resources/versioned_constants_13_1.json b/crates/blockifier/resources/versioned_constants_13_1.json index 3dfac17220..c31b1145a4 100644 --- a/crates/blockifier/resources/versioned_constants_13_1.json +++ b/crates/blockifier/resources/versioned_constants_13_1.json @@ -547,6 +547,10 @@ }, "validate_max_n_steps": 1000000, "vm_resource_fee_cost": { + "add_mod_builtin": [ + 0, + 1 + ], "bitwise_builtin": [ 16, 100 @@ -563,6 +567,10 @@ 512, 100 ], + "mul_mod_builtin": [ + 0, + 1 + ], "n_steps": [ 25, 10000 @@ -582,6 +590,10 @@ "range_check_builtin": [ 4, 100 + ], + "range_check96_builtin": [ + 0, + 1 ] } } diff --git a/crates/blockifier/resources/versioned_constants_13_1_1.json b/crates/blockifier/resources/versioned_constants_13_1_1.json index b70a67fbd9..20793ab983 100644 --- a/crates/blockifier/resources/versioned_constants_13_1_1.json +++ b/crates/blockifier/resources/versioned_constants_13_1_1.json @@ -547,6 +547,10 @@ }, "validate_max_n_steps": 1000000, "vm_resource_fee_cost": { + "add_mod_builtin": [ + 0, + 1 + ], "bitwise_builtin": [ 16, 100 @@ -563,6 +567,10 @@ 512, 100 ], + "mul_mod_builtin": [ + 0, + 1 + ], "n_steps": [ 25, 10000 @@ -582,6 +590,10 @@ "range_check_builtin": [ 4, 100 + ], + "range_check96_builtin": [ + 0, + 1 ] } } diff --git a/crates/blockifier/src/execution/entry_point_execution.rs b/crates/blockifier/src/execution/entry_point_execution.rs index d297c48ac2..8f726cd0f6 100644 --- a/crates/blockifier/src/execution/entry_point_execution.rs +++ b/crates/blockifier/src/execution/entry_point_execution.rs @@ -162,6 +162,9 @@ pub fn initialize_execution_context<'a>( BuiltinName::poseidon, BuiltinName::range_check, BuiltinName::segment_arena, + BuiltinName::range_check96, + BuiltinName::add_mod, + BuiltinName::mul_mod, ]; runner.initialize_function_runner_cairo_1(&program_builtins)?; let mut read_only_segments = ReadOnlySegments::default(); diff --git a/crates/blockifier/src/execution/stack_trace_test.rs b/crates/blockifier/src/execution/stack_trace_test.rs index 6243ec0b25..3a1ff79197 100644 --- a/crates/blockifier/src/execution/stack_trace_test.rs +++ b/crates/blockifier/src/execution/stack_trace_test.rs @@ -239,7 +239,7 @@ Unknown location (pc=0:{expected_pc1}) Error at pc=0:767: 1: Error in the called contract (contract address: {contract_address_felt:#064x}, class hash: \ {test_contract_hash:#064x}, selector: {invoke_call_chain_selector_felt:#064x}): -Error at pc=0:9381: +Error at pc=0:9508: Cairo traceback (most recent call last): Unknown location (pc=0:{pc_location}) @@ -259,10 +259,10 @@ Execution failed. Failure reason: {expected_error}. #[case(CairoVersion::Cairo0, "invoke_call_chain", "Couldn't compute operand op0. Unknown value for memory cell 1:23", 1_u8, 1_u8, (49_u16, 1111_u16, 1081_u16, 1166_u16))] #[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 0_u8, (37_u16, 1093_u16, 1184_u16, 1188_u16))] #[case(CairoVersion::Cairo0, "fail", "An ASSERT_EQ instruction failed: 1 != 0.", 0_u8, 1_u8, (49_u16, 1111_u16, 1184_u16, 1188_u16))] -#[case(CairoVersion::Cairo1, "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 0_u8, (9381_u16, 9381_u16, 0_u16, 0_u16))] -#[case(CairoVersion::Cairo1, "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 1_u8, (9381_u16, 9450_u16, 0_u16, 0_u16))] -#[case(CairoVersion::Cairo1, "fail", "0x6661696c ('fail')", 0_u8, 0_u8, (9381_u16, 9381_u16, 0_u16, 0_u16))] -#[case(CairoVersion::Cairo1, "fail", "0x6661696c ('fail')", 0_u8, 1_u8, (9381_u16, 9450_u16, 0_u16, 0_u16))] +#[case(CairoVersion::Cairo1, "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 0_u8, (9508_u16, 9508_u16, 0_u16, 0_u16))] +#[case(CairoVersion::Cairo1, "invoke_call_chain", "0x4469766973696f6e2062792030 ('Division by 0')", 1_u8, 1_u8, (9508_u16, 9577_u16, 0_u16, 0_u16))] +#[case(CairoVersion::Cairo1, "fail", "0x6661696c ('fail')", 0_u8, 0_u8, (9508_u16, 9508_u16, 0_u16, 0_u16))] +#[case(CairoVersion::Cairo1, "fail", "0x6661696c ('fail')", 0_u8, 1_u8, (9508_u16, 9577_u16, 0_u16, 0_u16))] fn test_trace_call_chain_with_syscalls( block_context: BlockContext, #[case] cairo_version: CairoVersion, diff --git a/crates/blockifier/src/execution/syscalls/syscalls_test.rs b/crates/blockifier/src/execution/syscalls/syscalls_test.rs index d3186713d8..d57ad5f770 100644 --- a/crates/blockifier/src/execution/syscalls/syscalls_test.rs +++ b/crates/blockifier/src/execution/syscalls/syscalls_test.rs @@ -279,7 +279,7 @@ fn test_sha256() { assert_eq!( entry_point_call.execute_directly(&mut state).unwrap().execution, - CallExecution { gas_consumed: 895830, ..CallExecution::from_retdata(retdata![]) } + CallExecution { gas_consumed: 892990, ..CallExecution::from_retdata(retdata![]) } ); } diff --git a/crates/blockifier/src/transaction/account_transactions_test.rs b/crates/blockifier/src/transaction/account_transactions_test.rs index 4abd1eafa4..50d6487f83 100644 --- a/crates/blockifier/src/transaction/account_transactions_test.rs +++ b/crates/blockifier/src/transaction/account_transactions_test.rs @@ -36,7 +36,7 @@ use crate::test_utils::{ }; use crate::transaction::account_transaction::AccountTransaction; use crate::transaction::constants::TRANSFER_ENTRY_POINT_NAME; -use crate::transaction::objects::{FeeType, HasRelatedFeeType, TransactionInfoCreator}; +use crate::transaction::objects::{FeeType, GasVector, HasRelatedFeeType, TransactionInfoCreator}; use crate::transaction::test_utils::{ account_invoke_tx, block_context, calculate_class_info_for_testing, create_account_tx_for_validate_test_nonce_0, create_test_init_data, deploy_and_fund_account, @@ -50,6 +50,41 @@ use crate::{ deploy_account_tx_args, invoke_tx_args, nonce, storage_key, }; +#[rstest] +fn test_circuit(block_context: BlockContext, max_resource_bounds: ResourceBoundsMapping) { + let test_contract = FeatureContract::TestContract(CairoVersion::Cairo1); + let account = FeatureContract::AccountWithoutValidations(CairoVersion::Cairo1); + let chain_info = &block_context.chain_info; + let state = &mut test_state(chain_info, BALANCE, &[(test_contract, 1), (account, 1)]); + let test_contract_address = test_contract.get_instance_address(0); + let account_address = account.get_instance_address(0); + let mut nonce_manager = NonceManager::default(); + + // Invoke a function that changes the state and reverts. + let tx_args = invoke_tx_args! { + sender_address: account_address, + calldata: create_calldata( + test_contract_address, + "test_circuit", + &[] + ), + version: TransactionVersion::THREE, + nonce: nonce_manager.next(account_address) + }; + let tx_execution_info = run_invoke_tx( + state, + &block_context, + invoke_tx_args! { + resource_bounds: max_resource_bounds, + ..tx_args + }, + ) + .unwrap(); + + assert!(tx_execution_info.revert_error.is_none()); + assert_eq!(tx_execution_info.transaction_receipt.gas, GasVector::from_l1_gas(6142)); +} + #[rstest] fn test_fee_enforcement( block_context: BlockContext, diff --git a/crates/blockifier/src/versioned_constants.rs b/crates/blockifier/src/versioned_constants.rs index b36032b5b9..bc0fd59853 100644 --- a/crates/blockifier/src/versioned_constants.rs +++ b/crates/blockifier/src/versioned_constants.rs @@ -135,6 +135,12 @@ impl VersionedConstants { (BuiltinName::poseidon.to_str_with_suffix().to_string(), ResourceCost::from_integer(1)), (BuiltinName::output.to_str_with_suffix().to_string(), ResourceCost::from_integer(1)), (BuiltinName::ec_op.to_str_with_suffix().to_string(), ResourceCost::from_integer(1)), + ( + BuiltinName::range_check96.to_str_with_suffix().to_string(), + ResourceCost::from_integer(1), + ), + (BuiltinName::add_mod.to_str_with_suffix().to_string(), ResourceCost::from_integer(1)), + (BuiltinName::mul_mod.to_str_with_suffix().to_string(), ResourceCost::from_integer(1)), ])); Self { vm_resource_fee_cost, ..Self::create_for_testing() } diff --git a/scripts/rust_fmt.sh b/scripts/rust_fmt.sh index 00c736e89c..58e1d7bd56 100755 --- a/scripts/rust_fmt.sh +++ b/scripts/rust_fmt.sh @@ -1,3 +1,7 @@ #!/bin/bash -cargo +nightly-2024-01-12 fmt --all -- "$@" +# Install toolchain if missing (local run). +TOOLCHAIN="nightly-2024-04-29" +rustup toolchain list | grep -q ${TOOLCHAIN} || rustup toolchain install ${TOOLCHAIN} + +cargo +${TOOLCHAIN} fmt --all -- "$@"