diff --git a/EXTERNAL_NOIR_LIBRARIES.yml b/EXTERNAL_NOIR_LIBRARIES.yml index f8543701c63..b370ff2f037 100644 --- a/EXTERNAL_NOIR_LIBRARIES.yml +++ b/EXTERNAL_NOIR_LIBRARIES.yml @@ -34,7 +34,7 @@ libraries: critical: true noir_bigcurve: repo: noir-lang/noir_bigcurve - timeout: 350 + timeout: 400 critical: true noir_base64: repo: noir-lang/noir_base64 diff --git a/compiler/noirc_evaluator/src/ssa/opt/remove_unreachable_instructions.rs b/compiler/noirc_evaluator/src/ssa/opt/remove_unreachable_instructions.rs index b83cdd56e1f..18e22b43466 100644 --- a/compiler/noirc_evaluator/src/ssa/opt/remove_unreachable_instructions.rs +++ b/compiler/noirc_evaluator/src/ssa/opt/remove_unreachable_instructions.rs @@ -173,7 +173,76 @@ impl Function { } } } - _ => {} + Instruction::ArrayGet { array, index, offset } + | Instruction::ArraySet { array, index, offset, .. } => { + let array_or_slice_type = context.dfg.type_of_value(*array); + let array_op_always_fails = match &array_or_slice_type { + Type::Slice(_) => false, + array_type @ Type::Array(_, len) => { + *len == 0 + || context.dfg.get_numeric_constant(*index).is_some_and(|index| { + (index.try_to_u32().unwrap() - offset.to_u32()) + >= (array_type.element_size() as u32 * len) + }) + } + + _ => unreachable!( + "Encountered non-array type during array read/write operation" + ), + }; + + if array_op_always_fails { + let is_predicate_constant_one = + match context.dfg.get_numeric_constant(side_effects_condition) { + Some(predicate) => predicate.is_one(), + None => false, // The predicate is a variable + }; + current_block_reachability = if is_predicate_constant_one { + // If we have an array that contains references we no longer need to bother with resolution of those references. + // However, we want a trap to still be triggered by an OOB array access. + // Thus, we can replace our array with dummy numerics to avoid unnecessary allocations + // making there way further down the compilation pipeline (e.g. ACIR where references are not supported). + let (old_instruction, old_array, trap_array) = match array_or_slice_type + { + Type::Array(_, len) => { + let dummy_array_typ = Type::Array( + Arc::new(vec![Type::Numeric(NumericType::unsigned(1))]), + len, + ); + ( + instruction.clone(), + *array, + zeroed_value( + context.dfg, + func_id, + block_id, + &dummy_array_typ, + ), + ) + } + _ => unreachable!("Expected an array type"), + }; + let new_instruction = old_instruction.map_values(|value| { + if value == old_array { trap_array } else { value } + }); + let stack = + context.dfg.get_instruction_call_stack_id(context.instruction_id); + context.dfg.insert_instruction_and_results( + new_instruction, + block_id, + Some(vec![Type::Numeric(NumericType::unsigned(1))]), + stack, + ); + // Remove the old failing array access in favor of the dummy one + context.remove_current_instruction(); + + Reachability::Unreachable + } else { + Reachability::UnreachableUnderPredicate + }; + } + } + _ => (), }; if current_block_reachability == Reachability::Unreachable { @@ -794,4 +863,37 @@ mod test { } "#); } + + #[test] + fn transforms_failing_array_access_to_work_on_dummy_array() { + let src = " + acir(inline) predicate_pure fn main f0 { + b0(): + v0 = allocate -> &mut u8 + store u8 0 at v0 + v2 = make_array [u8 0, v0] : [(u8, &mut u8); 1] + v4 = array_get v2, index u32 2 -> u8 + v6 = array_get v2, index u32 3 -> &mut u8 + return v4 + } + "; + + let ssa = Ssa::from_str(src).unwrap(); + let ssa = ssa.remove_unreachable_instructions(); + + // We expect the array containing references to no longer be in use, + // for the failing array get to now be over a dummy array. + // We expect the new assertion to also use the correct dummy type (u1) as to have a well formed SSA. + assert_ssa_snapshot!(ssa, @r" + acir(inline) predicate_pure fn main f0 { + b0(): + v0 = allocate -> &mut u8 + store u8 0 at v0 + v2 = make_array [u8 0, v0] : [(u8, &mut u8); 1] + v4 = make_array [u1 0] : [u1; 1] + v6 = array_get v4, index u32 2 -> u1 + unreachable + } + "); + } } diff --git a/test_programs/compile_success_with_bug/regression_8994/Nargo.toml b/test_programs/execution_failure/regression_8994/Nargo.toml similarity index 100% rename from test_programs/compile_success_with_bug/regression_8994/Nargo.toml rename to test_programs/execution_failure/regression_8994/Nargo.toml diff --git a/test_programs/compile_success_with_bug/regression_8994/src/main.nr b/test_programs/execution_failure/regression_8994/src/main.nr similarity index 100% rename from test_programs/compile_success_with_bug/regression_8994/src/main.nr rename to test_programs/execution_failure/regression_8994/src/main.nr diff --git a/test_programs/execution_success/empty_strings_in_composite_arrays/Nargo.toml b/test_programs/execution_success/empty_strings_in_composite_arrays/Nargo.toml new file mode 100644 index 00000000000..8f5bb9d2f1b --- /dev/null +++ b/test_programs/execution_success/empty_strings_in_composite_arrays/Nargo.toml @@ -0,0 +1,6 @@ +[package] +name = "empty_strings_in_composite_arrays" +type = "bin" +authors = [""] + +[dependencies] \ No newline at end of file diff --git a/test_programs/execution_success/empty_strings_in_composite_arrays/Prover.toml b/test_programs/execution_success/empty_strings_in_composite_arrays/Prover.toml new file mode 100644 index 00000000000..f6e14bb6b20 --- /dev/null +++ b/test_programs/execution_success/empty_strings_in_composite_arrays/Prover.toml @@ -0,0 +1 @@ +return = 0 \ No newline at end of file diff --git a/test_programs/execution_success/empty_strings_in_composite_arrays/src/main.nr b/test_programs/execution_success/empty_strings_in_composite_arrays/src/main.nr new file mode 100644 index 00000000000..64b27263c3e --- /dev/null +++ b/test_programs/execution_success/empty_strings_in_composite_arrays/src/main.nr @@ -0,0 +1,7 @@ +unconstrained fn main() -> pub bool { + func_2([(true, "", "")]) != func_2([(true, "", "")]) +} +unconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) { + println(b); + (b[0].1, b[0].2) +} diff --git a/test_programs/compile_failure/regression_8779/Nargo.toml b/test_programs/execution_success/regression_8779/Nargo.toml similarity index 100% rename from test_programs/compile_failure/regression_8779/Nargo.toml rename to test_programs/execution_success/regression_8779/Nargo.toml diff --git a/test_programs/compile_failure/regression_8779/Prover.toml b/test_programs/execution_success/regression_8779/Prover.toml similarity index 100% rename from test_programs/compile_failure/regression_8779/Prover.toml rename to test_programs/execution_success/regression_8779/Prover.toml diff --git a/test_programs/compile_failure/regression_8779/src/main.nr b/test_programs/execution_success/regression_8779/src/main.nr similarity index 100% rename from test_programs/compile_failure/regression_8779/src/main.nr rename to test_programs/execution_success/regression_8779/src/main.nr diff --git a/tooling/nargo_cli/tests/snapshots/compile_success_with_bug/regression_8774/execute__tests__stderr.snap b/tooling/nargo_cli/tests/snapshots/compile_success_with_bug/regression_8774/execute__tests__stderr.snap index 19a7e437f3d..3c01091822c 100644 --- a/tooling/nargo_cli/tests/snapshots/compile_success_with_bug/regression_8774/execute__tests__stderr.snap +++ b/tooling/nargo_cli/tests/snapshots/compile_success_with_bug/regression_8774/execute__tests__stderr.snap @@ -2,11 +2,11 @@ source: tooling/nargo_cli/tests/execute.rs expression: stderr --- -bug: Assertion is always false: Index out of bounds - ┌─ src/main.nr:3:8 +bug: Assertion is always false: Index out of bounds, array has size 0 + ┌─ src/main.nr:3:6 │ 3 │ *d[0] - │ - As a result, the compiled circuit is ensured to fail. Other assertions may also fail during execution + │ ---- As a result, the compiled circuit is ensured to fail. Other assertions may also fail during execution │ = Call stack: - 1. src/main.nr:3:8 + 1. src/main.nr:3:6 diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap index 21f58635963..d032811c9c8 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap @@ -70,7 +70,7 @@ expression: artifact }, "bytecode": [ "func 0", - "current witness index : _2886", + "current witness index : _2782", "private parameters indices : [_0, _1, _2, _3, _4, _5, _6, _7, _8, _9]", "public parameters indices : [_10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41]", "return value indices : []", @@ -119,9 +119,9 @@ expression: artifact "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(42))]", "EXPR [ (-1, _0, _42) (1, _43) -1 ]", "EXPR [ (-1, _0, _43) 0 ]", - "EXPR [ (1, _0, _43) (-1, _2089) 0 ]", - "EXPR [ (1, _4, _43) (-1, _2090) 0 ]", - "EXPR [ (-1, _44) (1, _2089) (1, _2090) 0 ]", + "EXPR [ (1, _0, _43) (-1, _2032) 0 ]", + "EXPR [ (1, _4, _43) (-1, _2033) 0 ]", + "EXPR [ (-1, _44) (1, _2032) (1, _2033) 0 ]", "BLACKBOX::RANGE [(_44, 32)] []", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(44))], q_c: -4864 })], outputs: [Simple(Witness(45))]", "EXPR [ (1, _44, _45) (-4864, _45) (1, _46) -1 ]", @@ -130,8 +130,8 @@ expression: artifact "MEM (id: 0, read at: EXPR [ (1, _47) 0 ], value: EXPR [ (1, _48) 0 ]) ", "EXPR [ (1, _43, _46) (-1, _49) 0 ]", "INIT (id: 3, len: 4, witnesses: [_1, _2, _3, _4])", - "EXPR [ (1, _44, _49) (-1, _2091) 0 ]", - "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2091) 0 ]", + "EXPR [ (1, _44, _49) (-1, _2034) 0 ]", + "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2034) 0 ]", "MEM (id: 3, write EXPR [ (1, _50) 0 ] at: EXPR [ (1, _47) 0 ]) ", "EXPR [ (-1, _51) 0 ]", "MEM (id: 3, read at: EXPR [ (1, _51) 0 ], value: EXPR [ (1, _52) 0 ]) ", @@ -140,30 +140,30 @@ expression: artifact "EXPR [ (-1, _55) 2 ]", "MEM (id: 3, read at: EXPR [ (1, _55) 0 ], value: EXPR [ (1, _56) 0 ]) ", "EXPR [ (-1, _3, _49) (1, _49, _56) (1, _3) (-1, _57) 0 ]", - "EXPR [ (1, _43, _44) (-1, _2095) 0 ]", - "EXPR [ (-1, _58) (1, _2090) (1, _2095) 0 ]", + "EXPR [ (1, _43, _44) (-1, _2038) 0 ]", + "EXPR [ (-1, _58) (1, _2033) (1, _2038) 0 ]", "BLACKBOX::RANGE [(_58, 32)] []", - "EXPR [ (1, _43, _57) (-1, _2096) 0 ]", - "EXPR [ (1, _43, _58) (-1, _59) (1, _2096) 0 ]", + "EXPR [ (1, _43, _57) (-1, _2039) 0 ]", + "EXPR [ (1, _43, _58) (-1, _59) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_59, 32)] []", "EXPR [ (-1, _43) (-1, _60) 1 ]", - "EXPR [ (1, _0) (-1, _61) (-1, _2089) (1, _2095) 0 ]", + "EXPR [ (1, _0) (-1, _61) (-1, _2032) (1, _2038) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(59))], q_c: -4864 })], outputs: [Simple(Witness(62))]", "EXPR [ (1, _59, _62) (-4864, _62) (1, _63) -1 ]", "EXPR [ (1, _59, _63) (-4864, _63) 0 ]", "EXPR [ (1, _43, _63) (-1, _64) 0 ]", "EXPR [ (-1, _43, _63) (-1, _65) 1 ]", - "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2091) 0 ]", + "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2034) 0 ]", "EXPR [ (-1, _2, _49) (1, _49, _54) (1, _2) (-1, _67) 0 ]", - "EXPR [ (1, _43, _59) (-1, _2101) 0 ]", - "EXPR [ (-1, _68) (1, _2090) (1, _2101) 0 ]", + "EXPR [ (1, _43, _59) (-1, _2044) 0 ]", + "EXPR [ (-1, _68) (1, _2033) (1, _2044) 0 ]", "BLACKBOX::RANGE [(_68, 32)] []", - "EXPR [ (1, _43, _68) (-1, _69) (1, _2096) 0 ]", + "EXPR [ (1, _43, _68) (-1, _69) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_69, 32)] []", - "EXPR [ (1, _43, _67) (-1, _2103) 0 ]", - "EXPR [ (1, _43, _69) (-1, _70) (1, _2103) 0 ]", + "EXPR [ (1, _43, _67) (-1, _2046) 0 ]", + "EXPR [ (1, _43, _69) (-1, _70) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_70, 32)] []", - "EXPR [ (1, _60, _61) (-1, _71) (1, _2101) 0 ]", + "EXPR [ (1, _60, _61) (-1, _71) (1, _2044) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(70))], q_c: -4864 })], outputs: [Simple(Witness(72))]", "EXPR [ (1, _70, _72) (-4864, _72) (1, _73) -1 ]", "EXPR [ (1, _70, _73) (-4864, _73) 0 ]", @@ -171,16 +171,16 @@ expression: artifact "EXPR [ (-1, _43, _73) (-1, _75) 1 ]", "EXPR [ (1, _59, _64) (1, _65, _66) (-1, _76) 0 ]", "EXPR [ (-1, _1, _49) (1, _49, _52) (1, _1) (-1, _77) 0 ]", - "EXPR [ (1, _43, _70) (-1, _2110) 0 ]", - "EXPR [ (-1, _78) (1, _2090) (1, _2110) 0 ]", + "EXPR [ (1, _43, _70) (-1, _2053) 0 ]", + "EXPR [ (-1, _78) (1, _2033) (1, _2053) 0 ]", "BLACKBOX::RANGE [(_78, 32)] []", - "EXPR [ (1, _43, _78) (-1, _79) (1, _2096) 0 ]", + "EXPR [ (1, _43, _78) (-1, _79) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_79, 32)] []", - "EXPR [ (1, _43, _79) (-1, _80) (1, _2103) 0 ]", + "EXPR [ (1, _43, _79) (-1, _80) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_80, 32)] []", "EXPR [ (1, _43, _77) (1, _43, _80) (-1, _81) 0 ]", "BLACKBOX::RANGE [(_81, 32)] []", - "EXPR [ (1, _60, _71) (-1, _82) (1, _2110) 0 ]", + "EXPR [ (1, _60, _71) (-1, _82) (1, _2053) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(81))], q_c: -4864 })], outputs: [Simple(Witness(83))]", "EXPR [ (1, _81, _83) (-4864, _83) (1, _84) -1 ]", "EXPR [ (1, _81, _84) (-4864, _84) 0 ]", @@ -193,13 +193,13 @@ expression: artifact "EXPR [ (1, _81, _85) (1, _86, _87) (-1, _90) 0 ]", "EXPR [ (-1, _89) (-1, _91) 1 ]", "EXPR [ (1, _43, _57) (-1, _92) 0 ]", - "EXPR [ (1, _43, _81) (-1, _2120) 0 ]", - "EXPR [ (1, _60, _82) (-1, _2121) 0 ]", - "EXPR [ (-1, _93) (1, _2090) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (1, _43, _81) (-1, _2063) 0 ]", + "EXPR [ (1, _60, _82) (-1, _2064) 0 ]", + "EXPR [ (-1, _93) (1, _2033) (1, _2063) (1, _2064) 0 ]", "EXPR [ (1, _89, _93) (-1, _94) 0 ]", "BLACKBOX::RANGE [(_94, 32)] []", - "EXPR [ (1, _89, _90) (-1, _2122) 0 ]", - "EXPR [ (1, _89, _94) (-1, _95) (1, _2122) 0 ]", + "EXPR [ (1, _89, _90) (-1, _2065) 0 ]", + "EXPR [ (1, _89, _94) (-1, _95) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_95, 32)] []", "EXPR [ (1, _43, _67) (1, _95) (-1, _96) 0 ]", "EXPR [ (1, _89, _96) (-1, _97) 0 ]", @@ -207,7 +207,7 @@ expression: artifact "EXPR [ (1, _43, _77) (1, _97) (-1, _98) 0 ]", "EXPR [ (1, _89, _98) (-1, _99) 0 ]", "BLACKBOX::RANGE [(_99, 32)] []", - "EXPR [ (-1, _100) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (-1, _100) (1, _2063) (1, _2064) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(99))], q_c: -4864 })], outputs: [Simple(Witness(101))]", "EXPR [ (1, _99, _101) (-4864, _101) (1, _102) -1 ]", "EXPR [ (1, _99, _102) (-4864, _102) 0 ]", @@ -217,10 +217,10 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _99) (-1, _106) 0 ]", "EXPR [ (1, _89, _106) (-1, _107) 0 ]", "BLACKBOX::RANGE [(_107, 32)] []", - "EXPR [ (1, _89, _107) (-1, _108) (1, _2122) 0 ]", + "EXPR [ (1, _89, _107) (-1, _108) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_108, 32)] []", - "EXPR [ (1, _57, _89) (-1, _2125) 0 ]", - "EXPR [ (1, _89, _108) (-1, _109) (1, _2125) 0 ]", + "EXPR [ (1, _57, _89) (-1, _2068) 0 ]", + "EXPR [ (1, _89, _108) (-1, _109) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_109, 32)] []", "EXPR [ (1, _43, _77) (1, _109) (-1, _110) 0 ]", "EXPR [ (1, _89, _110) (-1, _111) 0 ]", @@ -236,12 +236,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _111) (-1, _119) 0 ]", "EXPR [ (1, _89, _119) (-1, _120) 0 ]", "BLACKBOX::RANGE [(_120, 32)] []", - "EXPR [ (1, _89, _120) (-1, _121) (1, _2122) 0 ]", + "EXPR [ (1, _89, _120) (-1, _121) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_121, 32)] []", - "EXPR [ (1, _89, _121) (-1, _122) (1, _2125) 0 ]", + "EXPR [ (1, _89, _121) (-1, _122) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_122, 32)] []", - "EXPR [ (1, _67, _89) (-1, _2133) 0 ]", - "EXPR [ (1, _89, _122) (-1, _123) (1, _2133) 0 ]", + "EXPR [ (1, _67, _89) (-1, _2076) 0 ]", + "EXPR [ (1, _89, _122) (-1, _123) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_123, 32)] []", "EXPR [ (1, _89, _111) (1, _91, _112) (-1, _124) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(123))], q_c: -4864 })], outputs: [Simple(Witness(125))]", @@ -253,11 +253,11 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _123) (-1, _130) 0 ]", "EXPR [ (1, _89, _130) (-1, _131) 0 ]", "BLACKBOX::RANGE [(_131, 32)] []", - "EXPR [ (1, _89, _131) (-1, _132) (1, _2122) 0 ]", + "EXPR [ (1, _89, _131) (-1, _132) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_132, 32)] []", - "EXPR [ (1, _89, _132) (-1, _133) (1, _2125) 0 ]", + "EXPR [ (1, _89, _132) (-1, _133) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_133, 32)] []", - "EXPR [ (1, _89, _133) (-1, _134) (1, _2133) 0 ]", + "EXPR [ (1, _89, _133) (-1, _134) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_134, 32)] []", "EXPR [ (1, _89, _123) (1, _91, _124) (-1, _135) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(134))], q_c: -4864 })], outputs: [Simple(Witness(136))]", @@ -271,40 +271,40 @@ expression: artifact "EXPR [ (-1, _0, _142) (2, _142) 0 ]", "EXPR [ (1, _134, _138) (1, _139, _140) (-1, _143) 0 ]", "EXPR [ (-1, _142) (-1, _144) 1 ]", - "EXPR [ (1, _91, _105) (-1, _145) (1, _2125) 0 ]", - "EXPR [ (1, _89, _134) (-1, _2149) 0 ]", - "EXPR [ (1, _91, _135) (-1, _2150) 0 ]", - "EXPR [ (-1, _146) (1, _2090) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (1, _91, _105) (-1, _145) (1, _2068) 0 ]", + "EXPR [ (1, _89, _134) (-1, _2092) 0 ]", + "EXPR [ (1, _91, _135) (-1, _2093) 0 ]", + "EXPR [ (-1, _146) (1, _2033) (1, _2092) (1, _2093) 0 ]", "EXPR [ (1, _142, _146) (-1, _147) 0 ]", "BLACKBOX::RANGE [(_147, 32)] []", - "EXPR [ (1, _91, _92) (-1, _2151) 0 ]", - "EXPR [ (1, _147) (-1, _148) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _91, _92) (-1, _2094) 0 ]", + "EXPR [ (1, _147) (-1, _148) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _148) (-1, _149) 0 ]", "BLACKBOX::RANGE [(_149, 32)] []", - "EXPR [ (1, _142, _143) (-1, _2152) 0 ]", - "EXPR [ (1, _142, _149) (-1, _150) (1, _2152) 0 ]", + "EXPR [ (1, _142, _143) (-1, _2095) 0 ]", + "EXPR [ (1, _142, _149) (-1, _150) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_150, 32)] []", - "EXPR [ (1, _91, _118) (-1, _2154) 0 ]", - "EXPR [ (1, _150) (-1, _151) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (1, _91, _118) (-1, _2097) 0 ]", + "EXPR [ (1, _150) (-1, _151) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _142, _151) (-1, _152) 0 ]", "BLACKBOX::RANGE [(_152, 32)] []", - "EXPR [ (-1, _153) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (-1, _153) (1, _2092) (1, _2093) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(152))], q_c: -4864 })], outputs: [Simple(Witness(154))]", "EXPR [ (1, _152, _154) (-4864, _154) (1, _155) -1 ]", "EXPR [ (1, _152, _155) (-4864, _155) 0 ]", "EXPR [ (1, _142, _155) (-1, _156) 0 ]", "EXPR [ (-1, _142, _155) (-1, _157) 1 ]", - "EXPR [ (-1, _158) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (-1, _158) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _4, _43) (1, _152) (-1, _159) 0 ]", "EXPR [ (1, _142, _159) (-1, _160) 0 ]", "BLACKBOX::RANGE [(_160, 32)] []", - "EXPR [ (1, _160) (-1, _161) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _160) (-1, _161) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _161) (-1, _162) 0 ]", "BLACKBOX::RANGE [(_162, 32)] []", - "EXPR [ (1, _142, _162) (-1, _163) (1, _2152) 0 ]", + "EXPR [ (1, _142, _162) (-1, _163) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_163, 32)] []", - "EXPR [ (1, _57, _142) (-1, _2156) 0 ]", - "EXPR [ (1, _142, _163) (-1, _164) (1, _2156) 0 ]", + "EXPR [ (1, _57, _142) (-1, _2099) 0 ]", + "EXPR [ (1, _142, _163) (-1, _164) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_164, 32)] []", "EXPR [ (1, _142, _152) (1, _144, _153) (-1, _165) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(164))], q_c: -4864 })], outputs: [Simple(Witness(166))]", @@ -317,12 +317,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _164) (-1, _172) 0 ]", "EXPR [ (1, _142, _172) (-1, _173) 0 ]", "BLACKBOX::RANGE [(_173, 32)] []", - "EXPR [ (1, _173) (-1, _174) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _173) (-1, _174) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _174) (-1, _175) 0 ]", "BLACKBOX::RANGE [(_175, 32)] []", - "EXPR [ (1, _142, _175) (-1, _176) (1, _2152) 0 ]", + "EXPR [ (1, _142, _175) (-1, _176) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_176, 32)] []", - "EXPR [ (1, _142, _176) (-1, _177) (1, _2156) 0 ]", + "EXPR [ (1, _142, _176) (-1, _177) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_177, 32)] []", "EXPR [ (1, _142, _164) (1, _144, _165) (-1, _178) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(177))], q_c: -4864 })], outputs: [Simple(Witness(179))]", @@ -334,12 +334,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _177) (-1, _184) 0 ]", "EXPR [ (1, _142, _184) (-1, _185) 0 ]", "BLACKBOX::RANGE [(_185, 32)] []", - "EXPR [ (1, _185) (-1, _186) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _185) (-1, _186) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _186) (-1, _187) 0 ]", "BLACKBOX::RANGE [(_187, 32)] []", - "EXPR [ (1, _142, _187) (-1, _188) (1, _2152) 0 ]", + "EXPR [ (1, _142, _187) (-1, _188) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_188, 32)] []", - "EXPR [ (1, _142, _188) (-1, _189) (1, _2156) 0 ]", + "EXPR [ (1, _142, _188) (-1, _189) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_189, 32)] []", "EXPR [ (1, _142, _177) (1, _144, _178) (-1, _190) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(189))], q_c: -4864 })], outputs: [Simple(Witness(191))]", @@ -353,23 +353,23 @@ expression: artifact "EXPR [ (-1, _0, _197) (3, _197) 0 ]", "EXPR [ (1, _189, _193) (1, _194, _195) (-1, _198) 0 ]", "EXPR [ (-1, _197) (-1, _199) 1 ]", - "EXPR [ (1, _144, _158) (-1, _200) (1, _2156) 0 ]", - "EXPR [ (1, _142, _189) (-1, _2177) 0 ]", - "EXPR [ (1, _144, _190) (-1, _2178) 0 ]", - "EXPR [ (-1, _201) (1, _2090) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (1, _144, _158) (-1, _200) (1, _2099) 0 ]", + "EXPR [ (1, _142, _189) (-1, _2120) 0 ]", + "EXPR [ (1, _144, _190) (-1, _2121) 0 ]", + "EXPR [ (-1, _201) (1, _2033) (1, _2120) (1, _2121) 0 ]", "EXPR [ (1, _197, _201) (-1, _202) 0 ]", "BLACKBOX::RANGE [(_202, 32)] []", - "EXPR [ (1, _202) (-1, _203) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _202) (-1, _203) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _203) (-1, _204) 0 ]", "BLACKBOX::RANGE [(_204, 32)] []", - "EXPR [ (1, _144, _145) (-1, _2179) 0 ]", - "EXPR [ (1, _204) (-1, _205) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _144, _145) (-1, _2122) 0 ]", + "EXPR [ (1, _204) (-1, _205) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _205) (-1, _206) 0 ]", "BLACKBOX::RANGE [(_206, 32)] []", - "EXPR [ (1, _197, _198) (-1, _2180) 0 ]", - "EXPR [ (1, _197, _206) (-1, _207) (1, _2180) 0 ]", + "EXPR [ (1, _197, _198) (-1, _2123) 0 ]", + "EXPR [ (1, _197, _206) (-1, _207) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_207, 32)] []", - "EXPR [ (-1, _208) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (-1, _208) (1, _2120) (1, _2121) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(207))], q_c: -4864 })], outputs: [Simple(Witness(209))]", "EXPR [ (1, _207, _209) (-4864, _209) (1, _210) -1 ]", "EXPR [ (1, _207, _210) (-4864, _210) 0 ]", @@ -379,13 +379,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _207) (-1, _214) 0 ]", "EXPR [ (1, _197, _214) (-1, _215) 0 ]", "BLACKBOX::RANGE [(_215, 32)] []", - "EXPR [ (1, _215) (-1, _216) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _215) (-1, _216) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _216) (-1, _217) 0 ]", "BLACKBOX::RANGE [(_217, 32)] []", - "EXPR [ (1, _217) (-1, _218) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _217) (-1, _218) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _218) (-1, _219) 0 ]", "BLACKBOX::RANGE [(_219, 32)] []", - "EXPR [ (1, _197, _219) (-1, _220) (1, _2180) 0 ]", + "EXPR [ (1, _197, _219) (-1, _220) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_220, 32)] []", "EXPR [ (1, _197, _207) (1, _199, _208) (-1, _221) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(220))], q_c: -4864 })], outputs: [Simple(Witness(222))]", @@ -398,13 +398,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _220) (-1, _228) 0 ]", "EXPR [ (1, _197, _228) (-1, _229) 0 ]", "BLACKBOX::RANGE [(_229, 32)] []", - "EXPR [ (1, _229) (-1, _230) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _229) (-1, _230) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _230) (-1, _231) 0 ]", "BLACKBOX::RANGE [(_231, 32)] []", - "EXPR [ (1, _231) (-1, _232) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _231) (-1, _232) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _232) (-1, _233) 0 ]", "BLACKBOX::RANGE [(_233, 32)] []", - "EXPR [ (1, _197, _233) (-1, _234) (1, _2180) 0 ]", + "EXPR [ (1, _197, _233) (-1, _234) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_234, 32)] []", "EXPR [ (1, _197, _220) (1, _199, _221) (-1, _235) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(234))], q_c: -4864 })], outputs: [Simple(Witness(236))]", @@ -416,13 +416,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _234) (-1, _241) 0 ]", "EXPR [ (1, _197, _241) (-1, _242) 0 ]", "BLACKBOX::RANGE [(_242, 32)] []", - "EXPR [ (1, _242) (-1, _243) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _242) (-1, _243) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _243) (-1, _244) 0 ]", "BLACKBOX::RANGE [(_244, 32)] []", - "EXPR [ (1, _244) (-1, _245) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _244) (-1, _245) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _245) (-1, _246) 0 ]", "BLACKBOX::RANGE [(_246, 32)] []", - "EXPR [ (1, _197, _246) (-1, _247) (1, _2180) 0 ]", + "EXPR [ (1, _197, _246) (-1, _247) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_247, 32)] []", "EXPR [ (1, _197, _234) (1, _199, _235) (-1, _248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(247))], q_c: -4864 })], outputs: [Simple(Witness(249))]", @@ -437,22 +437,22 @@ expression: artifact "EXPR [ (1, _247, _251) (1, _252, _253) (-1, _256) 0 ]", "EXPR [ (-1, _255) (-1, _257) 1 ]", "EXPR [ (1, _57, _197) (1, _199, _213) (-1, _258) 0 ]", - "EXPR [ (1, _197, _247) (-1, _2203) 0 ]", - "EXPR [ (1, _199, _248) (-1, _2204) 0 ]", - "EXPR [ (-1, _259) (1, _2090) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (1, _197, _247) (-1, _2146) 0 ]", + "EXPR [ (1, _199, _248) (-1, _2147) 0 ]", + "EXPR [ (-1, _259) (1, _2033) (1, _2146) (1, _2147) 0 ]", "EXPR [ (1, _255, _259) (-1, _260) 0 ]", "BLACKBOX::RANGE [(_260, 32)] []", - "EXPR [ (1, _260) (-1, _261) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _260) (-1, _261) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _261) (-1, _262) 0 ]", "BLACKBOX::RANGE [(_262, 32)] []", - "EXPR [ (1, _262) (-1, _263) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _262) (-1, _263) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _263) (-1, _264) 0 ]", "BLACKBOX::RANGE [(_264, 32)] []", - "EXPR [ (1, _199, _200) (-1, _2205) 0 ]", - "EXPR [ (1, _264) (-1, _265) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _199, _200) (-1, _2148) 0 ]", + "EXPR [ (1, _264) (-1, _265) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _265) (-1, _266) 0 ]", "BLACKBOX::RANGE [(_266, 32)] []", - "EXPR [ (-1, _267) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (-1, _267) (1, _2146) (1, _2147) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(266))], q_c: -4864 })], outputs: [Simple(Witness(268))]", "EXPR [ (1, _266, _268) (-4864, _268) (1, _269) -1 ]", "EXPR [ (1, _266, _269) (-4864, _269) 0 ]", @@ -462,13 +462,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _266) (-1, _273) 0 ]", "EXPR [ (1, _255, _273) (-1, _274) 0 ]", "BLACKBOX::RANGE [(_274, 32)] []", - "EXPR [ (1, _274) (-1, _275) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _274) (-1, _275) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _275) (-1, _276) 0 ]", "BLACKBOX::RANGE [(_276, 32)] []", - "EXPR [ (1, _276) (-1, _277) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _276) (-1, _277) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _277) (-1, _278) 0 ]", "BLACKBOX::RANGE [(_278, 32)] []", - "EXPR [ (1, _278) (-1, _279) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _278) (-1, _279) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _279) (-1, _280) 0 ]", "BLACKBOX::RANGE [(_280, 32)] []", "EXPR [ (1, _255, _266) (1, _257, _267) (-1, _281) 0 ]", @@ -482,13 +482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _280) (-1, _288) 0 ]", "EXPR [ (1, _255, _288) (-1, _289) 0 ]", "BLACKBOX::RANGE [(_289, 32)] []", - "EXPR [ (1, _289) (-1, _290) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _289) (-1, _290) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _290) (-1, _291) 0 ]", "BLACKBOX::RANGE [(_291, 32)] []", - "EXPR [ (1, _291) (-1, _292) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _291) (-1, _292) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _292) (-1, _293) 0 ]", "BLACKBOX::RANGE [(_293, 32)] []", - "EXPR [ (1, _293) (-1, _294) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _293) (-1, _294) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _294) (-1, _295) 0 ]", "BLACKBOX::RANGE [(_295, 32)] []", "EXPR [ (1, _255, _280) (1, _257, _281) (-1, _296) 0 ]", @@ -501,13 +501,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _295) (-1, _302) 0 ]", "EXPR [ (1, _255, _302) (-1, _303) 0 ]", "BLACKBOX::RANGE [(_303, 32)] []", - "EXPR [ (1, _303) (-1, _304) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _303) (-1, _304) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _304) (-1, _305) 0 ]", "BLACKBOX::RANGE [(_305, 32)] []", - "EXPR [ (1, _305) (-1, _306) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _305) (-1, _306) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _306) (-1, _307) 0 ]", "BLACKBOX::RANGE [(_307, 32)] []", - "EXPR [ (1, _307) (-1, _308) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _307) (-1, _308) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _308) (-1, _309) 0 ]", "BLACKBOX::RANGE [(_309, 32)] []", "EXPR [ (1, _255, _295) (1, _257, _296) (-1, _310) 0 ]", @@ -523,21 +523,21 @@ expression: artifact "EXPR [ (1, _309, _313) (1, _314, _315) (-1, _318) 0 ]", "EXPR [ (-1, _317) (-1, _319) 1 ]", "EXPR [ (1, _57, _255) (1, _257, _272) (-1, _320) 0 ]", - "EXPR [ (1, _255, _309) (-1, _2224) 0 ]", - "EXPR [ (1, _257, _310) (-1, _2225) 0 ]", - "EXPR [ (-1, _321) (1, _2090) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (1, _255, _309) (-1, _2167) 0 ]", + "EXPR [ (1, _257, _310) (-1, _2168) 0 ]", + "EXPR [ (-1, _321) (1, _2033) (1, _2167) (1, _2168) 0 ]", "EXPR [ (1, _317, _321) (-1, _322) 0 ]", "BLACKBOX::RANGE [(_322, 32)] []", - "EXPR [ (1, _322) (-1, _323) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _322) (-1, _323) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _323) (-1, _324) 0 ]", "BLACKBOX::RANGE [(_324, 32)] []", - "EXPR [ (1, _324) (-1, _325) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _324) (-1, _325) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _325) (-1, _326) 0 ]", "BLACKBOX::RANGE [(_326, 32)] []", - "EXPR [ (1, _326) (-1, _327) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _326) (-1, _327) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _327) (-1, _328) 0 ]", "BLACKBOX::RANGE [(_328, 32)] []", - "EXPR [ (-1, _329) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (-1, _329) (1, _2167) (1, _2168) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(328))], q_c: -4864 })], outputs: [Simple(Witness(330))]", "EXPR [ (1, _328, _330) (-4864, _330) (1, _331) -1 ]", "EXPR [ (1, _328, _331) (-4864, _331) 0 ]", @@ -547,13 +547,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _328) (-1, _335) 0 ]", "EXPR [ (1, _317, _335) (-1, _336) 0 ]", "BLACKBOX::RANGE [(_336, 32)] []", - "EXPR [ (1, _336) (-1, _337) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _336) (-1, _337) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _337) (-1, _338) 0 ]", "BLACKBOX::RANGE [(_338, 32)] []", - "EXPR [ (1, _338) (-1, _339) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _338) (-1, _339) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _339) (-1, _340) 0 ]", "BLACKBOX::RANGE [(_340, 32)] []", - "EXPR [ (1, _340) (-1, _341) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _340) (-1, _341) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _341) (-1, _342) 0 ]", "BLACKBOX::RANGE [(_342, 32)] []", "EXPR [ (1, _317, _328) (1, _319, _329) (-1, _343) 0 ]", @@ -567,13 +567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _342) (-1, _350) 0 ]", "EXPR [ (1, _317, _350) (-1, _351) 0 ]", "BLACKBOX::RANGE [(_351, 32)] []", - "EXPR [ (1, _351) (-1, _352) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _351) (-1, _352) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _352) (-1, _353) 0 ]", "BLACKBOX::RANGE [(_353, 32)] []", - "EXPR [ (1, _353) (-1, _354) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _353) (-1, _354) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _354) (-1, _355) 0 ]", "BLACKBOX::RANGE [(_355, 32)] []", - "EXPR [ (1, _355) (-1, _356) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _355) (-1, _356) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _356) (-1, _357) 0 ]", "BLACKBOX::RANGE [(_357, 32)] []", "EXPR [ (1, _317, _342) (1, _319, _343) (-1, _358) 0 ]", @@ -586,13 +586,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _357) (-1, _364) 0 ]", "EXPR [ (1, _317, _364) (-1, _365) 0 ]", "BLACKBOX::RANGE [(_365, 32)] []", - "EXPR [ (1, _365) (-1, _366) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _365) (-1, _366) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _366) (-1, _367) 0 ]", "BLACKBOX::RANGE [(_367, 32)] []", - "EXPR [ (1, _367) (-1, _368) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _367) (-1, _368) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _368) (-1, _369) 0 ]", "BLACKBOX::RANGE [(_369, 32)] []", - "EXPR [ (1, _369) (-1, _370) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _369) (-1, _370) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _370) (-1, _371) 0 ]", "BLACKBOX::RANGE [(_371, 32)] []", "EXPR [ (1, _317, _357) (1, _319, _358) (-1, _372) 0 ]", @@ -608,21 +608,21 @@ expression: artifact "EXPR [ (1, _371, _375) (1, _376, _377) (-1, _380) 0 ]", "EXPR [ (-1, _379) (-1, _381) 1 ]", "EXPR [ (1, _57, _317) (1, _319, _334) (-1, _382) 0 ]", - "EXPR [ (1, _317, _371) (-1, _2244) 0 ]", - "EXPR [ (1, _319, _372) (-1, _2245) 0 ]", - "EXPR [ (-1, _383) (1, _2090) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (1, _317, _371) (-1, _2187) 0 ]", + "EXPR [ (1, _319, _372) (-1, _2188) 0 ]", + "EXPR [ (-1, _383) (1, _2033) (1, _2187) (1, _2188) 0 ]", "EXPR [ (1, _379, _383) (-1, _384) 0 ]", "BLACKBOX::RANGE [(_384, 32)] []", - "EXPR [ (1, _384) (-1, _385) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _384) (-1, _385) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _385) (-1, _386) 0 ]", "BLACKBOX::RANGE [(_386, 32)] []", - "EXPR [ (1, _386) (-1, _387) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _386) (-1, _387) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _387) (-1, _388) 0 ]", "BLACKBOX::RANGE [(_388, 32)] []", - "EXPR [ (1, _388) (-1, _389) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _388) (-1, _389) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _389) (-1, _390) 0 ]", "BLACKBOX::RANGE [(_390, 32)] []", - "EXPR [ (-1, _391) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (-1, _391) (1, _2187) (1, _2188) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(390))], q_c: -4864 })], outputs: [Simple(Witness(392))]", "EXPR [ (1, _390, _392) (-4864, _392) (1, _393) -1 ]", "EXPR [ (1, _390, _393) (-4864, _393) 0 ]", @@ -632,13 +632,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _390) (-1, _397) 0 ]", "EXPR [ (1, _379, _397) (-1, _398) 0 ]", "BLACKBOX::RANGE [(_398, 32)] []", - "EXPR [ (1, _398) (-1, _399) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _398) (-1, _399) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _399) (-1, _400) 0 ]", "BLACKBOX::RANGE [(_400, 32)] []", - "EXPR [ (1, _400) (-1, _401) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _400) (-1, _401) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _401) (-1, _402) 0 ]", "BLACKBOX::RANGE [(_402, 32)] []", - "EXPR [ (1, _402) (-1, _403) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _402) (-1, _403) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _403) (-1, _404) 0 ]", "BLACKBOX::RANGE [(_404, 32)] []", "EXPR [ (1, _379, _390) (1, _381, _391) (-1, _405) 0 ]", @@ -652,13 +652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _404) (-1, _412) 0 ]", "EXPR [ (1, _379, _412) (-1, _413) 0 ]", "BLACKBOX::RANGE [(_413, 32)] []", - "EXPR [ (1, _413) (-1, _414) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _413) (-1, _414) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _414) (-1, _415) 0 ]", "BLACKBOX::RANGE [(_415, 32)] []", - "EXPR [ (1, _415) (-1, _416) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _415) (-1, _416) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _416) (-1, _417) 0 ]", "BLACKBOX::RANGE [(_417, 32)] []", - "EXPR [ (1, _417) (-1, _418) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _417) (-1, _418) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _418) (-1, _419) 0 ]", "BLACKBOX::RANGE [(_419, 32)] []", "EXPR [ (1, _379, _404) (1, _381, _405) (-1, _420) 0 ]", @@ -671,13 +671,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _419) (-1, _426) 0 ]", "EXPR [ (1, _379, _426) (-1, _427) 0 ]", "BLACKBOX::RANGE [(_427, 32)] []", - "EXPR [ (1, _427) (-1, _428) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _427) (-1, _428) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _428) (-1, _429) 0 ]", "BLACKBOX::RANGE [(_429, 32)] []", - "EXPR [ (1, _429) (-1, _430) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _429) (-1, _430) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _430) (-1, _431) 0 ]", "BLACKBOX::RANGE [(_431, 32)] []", - "EXPR [ (1, _431) (-1, _432) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _431) (-1, _432) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _432) (-1, _433) 0 ]", "BLACKBOX::RANGE [(_433, 32)] []", "EXPR [ (1, _379, _419) (1, _381, _420) (-1, _434) 0 ]", @@ -693,21 +693,21 @@ expression: artifact "EXPR [ (1, _433, _437) (1, _438, _439) (-1, _442) 0 ]", "EXPR [ (-1, _441) (-1, _443) 1 ]", "EXPR [ (1, _57, _379) (1, _381, _396) (-1, _444) 0 ]", - "EXPR [ (1, _379, _433) (-1, _2264) 0 ]", - "EXPR [ (1, _381, _434) (-1, _2265) 0 ]", - "EXPR [ (-1, _445) (1, _2090) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (1, _379, _433) (-1, _2207) 0 ]", + "EXPR [ (1, _381, _434) (-1, _2208) 0 ]", + "EXPR [ (-1, _445) (1, _2033) (1, _2207) (1, _2208) 0 ]", "EXPR [ (1, _441, _445) (-1, _446) 0 ]", "BLACKBOX::RANGE [(_446, 32)] []", - "EXPR [ (1, _446) (-1, _447) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _446) (-1, _447) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _447) (-1, _448) 0 ]", "BLACKBOX::RANGE [(_448, 32)] []", - "EXPR [ (1, _448) (-1, _449) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _448) (-1, _449) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _449) (-1, _450) 0 ]", "BLACKBOX::RANGE [(_450, 32)] []", - "EXPR [ (1, _450) (-1, _451) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _450) (-1, _451) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _451) (-1, _452) 0 ]", "BLACKBOX::RANGE [(_452, 32)] []", - "EXPR [ (-1, _453) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (-1, _453) (1, _2207) (1, _2208) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(452))], q_c: -4864 })], outputs: [Simple(Witness(454))]", "EXPR [ (1, _452, _454) (-4864, _454) (1, _455) -1 ]", "EXPR [ (1, _452, _455) (-4864, _455) 0 ]", @@ -717,13 +717,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _452) (-1, _459) 0 ]", "EXPR [ (1, _441, _459) (-1, _460) 0 ]", "BLACKBOX::RANGE [(_460, 32)] []", - "EXPR [ (1, _460) (-1, _461) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _460) (-1, _461) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _461) (-1, _462) 0 ]", "BLACKBOX::RANGE [(_462, 32)] []", - "EXPR [ (1, _462) (-1, _463) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _462) (-1, _463) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _463) (-1, _464) 0 ]", "BLACKBOX::RANGE [(_464, 32)] []", - "EXPR [ (1, _464) (-1, _465) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _464) (-1, _465) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _465) (-1, _466) 0 ]", "BLACKBOX::RANGE [(_466, 32)] []", "EXPR [ (1, _441, _452) (1, _443, _453) (-1, _467) 0 ]", @@ -737,13 +737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _466) (-1, _474) 0 ]", "EXPR [ (1, _441, _474) (-1, _475) 0 ]", "BLACKBOX::RANGE [(_475, 32)] []", - "EXPR [ (1, _475) (-1, _476) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _475) (-1, _476) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _476) (-1, _477) 0 ]", "BLACKBOX::RANGE [(_477, 32)] []", - "EXPR [ (1, _477) (-1, _478) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _477) (-1, _478) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _478) (-1, _479) 0 ]", "BLACKBOX::RANGE [(_479, 32)] []", - "EXPR [ (1, _479) (-1, _480) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _479) (-1, _480) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _480) (-1, _481) 0 ]", "BLACKBOX::RANGE [(_481, 32)] []", "EXPR [ (1, _441, _466) (1, _443, _467) (-1, _482) 0 ]", @@ -756,13 +756,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _481) (-1, _488) 0 ]", "EXPR [ (1, _441, _488) (-1, _489) 0 ]", "BLACKBOX::RANGE [(_489, 32)] []", - "EXPR [ (1, _489) (-1, _490) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _489) (-1, _490) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _490) (-1, _491) 0 ]", "BLACKBOX::RANGE [(_491, 32)] []", - "EXPR [ (1, _491) (-1, _492) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _491) (-1, _492) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _492) (-1, _493) 0 ]", "BLACKBOX::RANGE [(_493, 32)] []", - "EXPR [ (1, _493) (-1, _494) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _493) (-1, _494) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _494) (-1, _495) 0 ]", "BLACKBOX::RANGE [(_495, 32)] []", "EXPR [ (1, _441, _481) (1, _443, _482) (-1, _496) 0 ]", @@ -778,21 +778,21 @@ expression: artifact "EXPR [ (1, _495, _499) (1, _500, _501) (-1, _504) 0 ]", "EXPR [ (-1, _503) (-1, _505) 1 ]", "EXPR [ (1, _57, _441) (1, _443, _458) (-1, _506) 0 ]", - "EXPR [ (1, _441, _495) (-1, _2284) 0 ]", - "EXPR [ (1, _443, _496) (-1, _2285) 0 ]", - "EXPR [ (-1, _507) (1, _2090) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (1, _441, _495) (-1, _2227) 0 ]", + "EXPR [ (1, _443, _496) (-1, _2228) 0 ]", + "EXPR [ (-1, _507) (1, _2033) (1, _2227) (1, _2228) 0 ]", "EXPR [ (1, _503, _507) (-1, _508) 0 ]", "BLACKBOX::RANGE [(_508, 32)] []", - "EXPR [ (1, _508) (-1, _509) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _508) (-1, _509) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _509) (-1, _510) 0 ]", "BLACKBOX::RANGE [(_510, 32)] []", - "EXPR [ (1, _510) (-1, _511) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _510) (-1, _511) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _511) (-1, _512) 0 ]", "BLACKBOX::RANGE [(_512, 32)] []", - "EXPR [ (1, _512) (-1, _513) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _512) (-1, _513) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _513) (-1, _514) 0 ]", "BLACKBOX::RANGE [(_514, 32)] []", - "EXPR [ (-1, _515) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (-1, _515) (1, _2227) (1, _2228) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(514))], q_c: -4864 })], outputs: [Simple(Witness(516))]", "EXPR [ (1, _514, _516) (-4864, _516) (1, _517) -1 ]", "EXPR [ (1, _514, _517) (-4864, _517) 0 ]", @@ -802,13 +802,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _514) (-1, _521) 0 ]", "EXPR [ (1, _503, _521) (-1, _522) 0 ]", "BLACKBOX::RANGE [(_522, 32)] []", - "EXPR [ (1, _522) (-1, _523) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _522) (-1, _523) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _523) (-1, _524) 0 ]", "BLACKBOX::RANGE [(_524, 32)] []", - "EXPR [ (1, _524) (-1, _525) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _524) (-1, _525) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _525) (-1, _526) 0 ]", "BLACKBOX::RANGE [(_526, 32)] []", - "EXPR [ (1, _526) (-1, _527) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _526) (-1, _527) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _527) (-1, _528) 0 ]", "BLACKBOX::RANGE [(_528, 32)] []", "EXPR [ (1, _503, _514) (1, _505, _515) (-1, _529) 0 ]", @@ -822,13 +822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _528) (-1, _536) 0 ]", "EXPR [ (1, _503, _536) (-1, _537) 0 ]", "BLACKBOX::RANGE [(_537, 32)] []", - "EXPR [ (1, _537) (-1, _538) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _537) (-1, _538) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _538) (-1, _539) 0 ]", "BLACKBOX::RANGE [(_539, 32)] []", - "EXPR [ (1, _539) (-1, _540) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _539) (-1, _540) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _540) (-1, _541) 0 ]", "BLACKBOX::RANGE [(_541, 32)] []", - "EXPR [ (1, _541) (-1, _542) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _541) (-1, _542) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _542) (-1, _543) 0 ]", "BLACKBOX::RANGE [(_543, 32)] []", "EXPR [ (1, _503, _528) (1, _505, _529) (-1, _544) 0 ]", @@ -841,13 +841,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _543) (-1, _550) 0 ]", "EXPR [ (1, _503, _550) (-1, _551) 0 ]", "BLACKBOX::RANGE [(_551, 32)] []", - "EXPR [ (1, _551) (-1, _552) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _551) (-1, _552) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _552) (-1, _553) 0 ]", "BLACKBOX::RANGE [(_553, 32)] []", - "EXPR [ (1, _553) (-1, _554) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _553) (-1, _554) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _554) (-1, _555) 0 ]", "BLACKBOX::RANGE [(_555, 32)] []", - "EXPR [ (1, _555) (-1, _556) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _555) (-1, _556) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _556) (-1, _557) 0 ]", "BLACKBOX::RANGE [(_557, 32)] []", "EXPR [ (1, _503, _543) (1, _505, _544) (-1, _558) 0 ]", @@ -863,21 +863,21 @@ expression: artifact "EXPR [ (1, _557, _561) (1, _562, _563) (-1, _566) 0 ]", "EXPR [ (-1, _565) (-1, _567) 1 ]", "EXPR [ (1, _57, _503) (1, _505, _520) (-1, _568) 0 ]", - "EXPR [ (1, _503, _557) (-1, _2304) 0 ]", - "EXPR [ (1, _505, _558) (-1, _2305) 0 ]", - "EXPR [ (-1, _569) (1, _2090) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (1, _503, _557) (-1, _2247) 0 ]", + "EXPR [ (1, _505, _558) (-1, _2248) 0 ]", + "EXPR [ (-1, _569) (1, _2033) (1, _2247) (1, _2248) 0 ]", "EXPR [ (1, _565, _569) (-1, _570) 0 ]", "BLACKBOX::RANGE [(_570, 32)] []", - "EXPR [ (1, _570) (-1, _571) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _570) (-1, _571) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _571) (-1, _572) 0 ]", "BLACKBOX::RANGE [(_572, 32)] []", - "EXPR [ (1, _572) (-1, _573) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _572) (-1, _573) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _573) (-1, _574) 0 ]", "BLACKBOX::RANGE [(_574, 32)] []", - "EXPR [ (1, _574) (-1, _575) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _574) (-1, _575) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _575) (-1, _576) 0 ]", "BLACKBOX::RANGE [(_576, 32)] []", - "EXPR [ (-1, _577) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (-1, _577) (1, _2247) (1, _2248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(576))], q_c: -4864 })], outputs: [Simple(Witness(578))]", "EXPR [ (1, _576, _578) (-4864, _578) (1, _579) -1 ]", "EXPR [ (1, _576, _579) (-4864, _579) 0 ]", @@ -887,13 +887,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _576) (-1, _583) 0 ]", "EXPR [ (1, _565, _583) (-1, _584) 0 ]", "BLACKBOX::RANGE [(_584, 32)] []", - "EXPR [ (1, _584) (-1, _585) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _584) (-1, _585) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _585) (-1, _586) 0 ]", "BLACKBOX::RANGE [(_586, 32)] []", - "EXPR [ (1, _586) (-1, _587) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _586) (-1, _587) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _587) (-1, _588) 0 ]", "BLACKBOX::RANGE [(_588, 32)] []", - "EXPR [ (1, _588) (-1, _589) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _588) (-1, _589) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _589) (-1, _590) 0 ]", "BLACKBOX::RANGE [(_590, 32)] []", "EXPR [ (1, _565, _576) (1, _567, _577) (-1, _591) 0 ]", @@ -907,13 +907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _590) (-1, _598) 0 ]", "EXPR [ (1, _565, _598) (-1, _599) 0 ]", "BLACKBOX::RANGE [(_599, 32)] []", - "EXPR [ (1, _599) (-1, _600) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _599) (-1, _600) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _600) (-1, _601) 0 ]", "BLACKBOX::RANGE [(_601, 32)] []", - "EXPR [ (1, _601) (-1, _602) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _601) (-1, _602) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _602) (-1, _603) 0 ]", "BLACKBOX::RANGE [(_603, 32)] []", - "EXPR [ (1, _603) (-1, _604) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _603) (-1, _604) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _604) (-1, _605) 0 ]", "BLACKBOX::RANGE [(_605, 32)] []", "EXPR [ (1, _565, _590) (1, _567, _591) (-1, _606) 0 ]", @@ -926,13 +926,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _605) (-1, _612) 0 ]", "EXPR [ (1, _565, _612) (-1, _613) 0 ]", "BLACKBOX::RANGE [(_613, 32)] []", - "EXPR [ (1, _613) (-1, _614) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _613) (-1, _614) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _614) (-1, _615) 0 ]", "BLACKBOX::RANGE [(_615, 32)] []", - "EXPR [ (1, _615) (-1, _616) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _615) (-1, _616) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _616) (-1, _617) 0 ]", "BLACKBOX::RANGE [(_617, 32)] []", - "EXPR [ (1, _617) (-1, _618) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _617) (-1, _618) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _618) (-1, _619) 0 ]", "BLACKBOX::RANGE [(_619, 32)] []", "EXPR [ (1, _565, _605) (1, _567, _606) (-1, _620) 0 ]", @@ -948,21 +948,21 @@ expression: artifact "EXPR [ (1, _619, _623) (1, _624, _625) (-1, _628) 0 ]", "EXPR [ (-1, _627) (-1, _629) 1 ]", "EXPR [ (1, _57, _565) (1, _567, _582) (-1, _630) 0 ]", - "EXPR [ (1, _565, _619) (-1, _2324) 0 ]", - "EXPR [ (1, _567, _620) (-1, _2325) 0 ]", - "EXPR [ (-1, _631) (1, _2090) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (1, _565, _619) (-1, _2267) 0 ]", + "EXPR [ (1, _567, _620) (-1, _2268) 0 ]", + "EXPR [ (-1, _631) (1, _2033) (1, _2267) (1, _2268) 0 ]", "EXPR [ (1, _627, _631) (-1, _632) 0 ]", "BLACKBOX::RANGE [(_632, 32)] []", - "EXPR [ (1, _632) (-1, _633) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _632) (-1, _633) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _633) (-1, _634) 0 ]", "BLACKBOX::RANGE [(_634, 32)] []", - "EXPR [ (1, _634) (-1, _635) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _634) (-1, _635) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _635) (-1, _636) 0 ]", "BLACKBOX::RANGE [(_636, 32)] []", - "EXPR [ (1, _636) (-1, _637) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _636) (-1, _637) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _637) (-1, _638) 0 ]", "BLACKBOX::RANGE [(_638, 32)] []", - "EXPR [ (-1, _639) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (-1, _639) (1, _2267) (1, _2268) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(638))], q_c: -4864 })], outputs: [Simple(Witness(640))]", "EXPR [ (1, _638, _640) (-4864, _640) (1, _641) -1 ]", "EXPR [ (1, _638, _641) (-4864, _641) 0 ]", @@ -972,13 +972,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _638) (-1, _645) 0 ]", "EXPR [ (1, _627, _645) (-1, _646) 0 ]", "BLACKBOX::RANGE [(_646, 32)] []", - "EXPR [ (1, _646) (-1, _647) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _646) (-1, _647) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _647) (-1, _648) 0 ]", "BLACKBOX::RANGE [(_648, 32)] []", - "EXPR [ (1, _648) (-1, _649) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _648) (-1, _649) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _649) (-1, _650) 0 ]", "BLACKBOX::RANGE [(_650, 32)] []", - "EXPR [ (1, _650) (-1, _651) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _650) (-1, _651) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _651) (-1, _652) 0 ]", "BLACKBOX::RANGE [(_652, 32)] []", "EXPR [ (1, _627, _638) (1, _629, _639) (-1, _653) 0 ]", @@ -992,13 +992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _652) (-1, _660) 0 ]", "EXPR [ (1, _627, _660) (-1, _661) 0 ]", "BLACKBOX::RANGE [(_661, 32)] []", - "EXPR [ (1, _661) (-1, _662) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _661) (-1, _662) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _662) (-1, _663) 0 ]", "BLACKBOX::RANGE [(_663, 32)] []", - "EXPR [ (1, _663) (-1, _664) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _663) (-1, _664) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _664) (-1, _665) 0 ]", "BLACKBOX::RANGE [(_665, 32)] []", - "EXPR [ (1, _665) (-1, _666) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _665) (-1, _666) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _666) (-1, _667) 0 ]", "BLACKBOX::RANGE [(_667, 32)] []", "EXPR [ (1, _627, _652) (1, _629, _653) (-1, _668) 0 ]", @@ -1011,13 +1011,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _667) (-1, _674) 0 ]", "EXPR [ (1, _627, _674) (-1, _675) 0 ]", "BLACKBOX::RANGE [(_675, 32)] []", - "EXPR [ (1, _675) (-1, _676) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _675) (-1, _676) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _676) (-1, _677) 0 ]", "BLACKBOX::RANGE [(_677, 32)] []", - "EXPR [ (1, _677) (-1, _678) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _677) (-1, _678) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _678) (-1, _679) 0 ]", "BLACKBOX::RANGE [(_679, 32)] []", - "EXPR [ (1, _679) (-1, _680) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _679) (-1, _680) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _680) (-1, _681) 0 ]", "BLACKBOX::RANGE [(_681, 32)] []", "EXPR [ (1, _627, _667) (1, _629, _668) (-1, _682) 0 ]", @@ -1033,21 +1033,21 @@ expression: artifact "EXPR [ (1, _681, _685) (1, _686, _687) (-1, _690) 0 ]", "EXPR [ (-1, _689) (-1, _691) 1 ]", "EXPR [ (1, _57, _627) (1, _629, _644) (-1, _692) 0 ]", - "EXPR [ (1, _627, _681) (-1, _2344) 0 ]", - "EXPR [ (1, _629, _682) (-1, _2345) 0 ]", - "EXPR [ (-1, _693) (1, _2090) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (1, _627, _681) (-1, _2287) 0 ]", + "EXPR [ (1, _629, _682) (-1, _2288) 0 ]", + "EXPR [ (-1, _693) (1, _2033) (1, _2287) (1, _2288) 0 ]", "EXPR [ (1, _689, _693) (-1, _694) 0 ]", "BLACKBOX::RANGE [(_694, 32)] []", - "EXPR [ (1, _694) (-1, _695) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _694) (-1, _695) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _695) (-1, _696) 0 ]", "BLACKBOX::RANGE [(_696, 32)] []", - "EXPR [ (1, _696) (-1, _697) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _696) (-1, _697) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _697) (-1, _698) 0 ]", "BLACKBOX::RANGE [(_698, 32)] []", - "EXPR [ (1, _698) (-1, _699) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _698) (-1, _699) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _699) (-1, _700) 0 ]", "BLACKBOX::RANGE [(_700, 32)] []", - "EXPR [ (-1, _701) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (-1, _701) (1, _2287) (1, _2288) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(700))], q_c: -4864 })], outputs: [Simple(Witness(702))]", "EXPR [ (1, _700, _702) (-4864, _702) (1, _703) -1 ]", "EXPR [ (1, _700, _703) (-4864, _703) 0 ]", @@ -1057,13 +1057,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _700) (-1, _707) 0 ]", "EXPR [ (1, _689, _707) (-1, _708) 0 ]", "BLACKBOX::RANGE [(_708, 32)] []", - "EXPR [ (1, _708) (-1, _709) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _708) (-1, _709) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _709) (-1, _710) 0 ]", "BLACKBOX::RANGE [(_710, 32)] []", - "EXPR [ (1, _710) (-1, _711) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _710) (-1, _711) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _711) (-1, _712) 0 ]", "BLACKBOX::RANGE [(_712, 32)] []", - "EXPR [ (1, _712) (-1, _713) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _712) (-1, _713) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _713) (-1, _714) 0 ]", "BLACKBOX::RANGE [(_714, 32)] []", "EXPR [ (1, _689, _700) (1, _691, _701) (-1, _715) 0 ]", @@ -1077,13 +1077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _714) (-1, _722) 0 ]", "EXPR [ (1, _689, _722) (-1, _723) 0 ]", "BLACKBOX::RANGE [(_723, 32)] []", - "EXPR [ (1, _723) (-1, _724) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _723) (-1, _724) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _724) (-1, _725) 0 ]", "BLACKBOX::RANGE [(_725, 32)] []", - "EXPR [ (1, _725) (-1, _726) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _725) (-1, _726) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _726) (-1, _727) 0 ]", "BLACKBOX::RANGE [(_727, 32)] []", - "EXPR [ (1, _727) (-1, _728) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _727) (-1, _728) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _728) (-1, _729) 0 ]", "BLACKBOX::RANGE [(_729, 32)] []", "EXPR [ (1, _689, _714) (1, _691, _715) (-1, _730) 0 ]", @@ -1096,13 +1096,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _729) (-1, _736) 0 ]", "EXPR [ (1, _689, _736) (-1, _737) 0 ]", "BLACKBOX::RANGE [(_737, 32)] []", - "EXPR [ (1, _737) (-1, _738) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _737) (-1, _738) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _738) (-1, _739) 0 ]", "BLACKBOX::RANGE [(_739, 32)] []", - "EXPR [ (1, _739) (-1, _740) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _739) (-1, _740) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _740) (-1, _741) 0 ]", "BLACKBOX::RANGE [(_741, 32)] []", - "EXPR [ (1, _741) (-1, _742) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _741) (-1, _742) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _742) (-1, _743) 0 ]", "BLACKBOX::RANGE [(_743, 32)] []", "EXPR [ (1, _689, _729) (1, _691, _730) (-1, _744) 0 ]", @@ -1118,21 +1118,21 @@ expression: artifact "EXPR [ (1, _743, _747) (1, _748, _749) (-1, _752) 0 ]", "EXPR [ (-1, _751) (-1, _753) 1 ]", "EXPR [ (1, _57, _689) (1, _691, _706) (-1, _754) 0 ]", - "EXPR [ (1, _689, _743) (-1, _2364) 0 ]", - "EXPR [ (1, _691, _744) (-1, _2365) 0 ]", - "EXPR [ (-1, _755) (1, _2090) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (1, _689, _743) (-1, _2307) 0 ]", + "EXPR [ (1, _691, _744) (-1, _2308) 0 ]", + "EXPR [ (-1, _755) (1, _2033) (1, _2307) (1, _2308) 0 ]", "EXPR [ (1, _751, _755) (-1, _756) 0 ]", "BLACKBOX::RANGE [(_756, 32)] []", - "EXPR [ (1, _756) (-1, _757) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _756) (-1, _757) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _757) (-1, _758) 0 ]", "BLACKBOX::RANGE [(_758, 32)] []", - "EXPR [ (1, _758) (-1, _759) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _758) (-1, _759) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _759) (-1, _760) 0 ]", "BLACKBOX::RANGE [(_760, 32)] []", - "EXPR [ (1, _760) (-1, _761) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _760) (-1, _761) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _761) (-1, _762) 0 ]", "BLACKBOX::RANGE [(_762, 32)] []", - "EXPR [ (-1, _763) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (-1, _763) (1, _2307) (1, _2308) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(762))], q_c: -4864 })], outputs: [Simple(Witness(764))]", "EXPR [ (1, _762, _764) (-4864, _764) (1, _765) -1 ]", "EXPR [ (1, _762, _765) (-4864, _765) 0 ]", @@ -1142,13 +1142,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _762) (-1, _769) 0 ]", "EXPR [ (1, _751, _769) (-1, _770) 0 ]", "BLACKBOX::RANGE [(_770, 32)] []", - "EXPR [ (1, _770) (-1, _771) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _770) (-1, _771) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _771) (-1, _772) 0 ]", "BLACKBOX::RANGE [(_772, 32)] []", - "EXPR [ (1, _772) (-1, _773) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _772) (-1, _773) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _773) (-1, _774) 0 ]", "BLACKBOX::RANGE [(_774, 32)] []", - "EXPR [ (1, _774) (-1, _775) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _774) (-1, _775) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _775) (-1, _776) 0 ]", "BLACKBOX::RANGE [(_776, 32)] []", "EXPR [ (1, _751, _762) (1, _753, _763) (-1, _777) 0 ]", @@ -1162,13 +1162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _776) (-1, _784) 0 ]", "EXPR [ (1, _751, _784) (-1, _785) 0 ]", "BLACKBOX::RANGE [(_785, 32)] []", - "EXPR [ (1, _785) (-1, _786) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _785) (-1, _786) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _786) (-1, _787) 0 ]", "BLACKBOX::RANGE [(_787, 32)] []", - "EXPR [ (1, _787) (-1, _788) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _787) (-1, _788) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _788) (-1, _789) 0 ]", "BLACKBOX::RANGE [(_789, 32)] []", - "EXPR [ (1, _789) (-1, _790) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _789) (-1, _790) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _790) (-1, _791) 0 ]", "BLACKBOX::RANGE [(_791, 32)] []", "EXPR [ (1, _751, _776) (1, _753, _777) (-1, _792) 0 ]", @@ -1181,13 +1181,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _791) (-1, _798) 0 ]", "EXPR [ (1, _751, _798) (-1, _799) 0 ]", "BLACKBOX::RANGE [(_799, 32)] []", - "EXPR [ (1, _799) (-1, _800) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _799) (-1, _800) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _800) (-1, _801) 0 ]", "BLACKBOX::RANGE [(_801, 32)] []", - "EXPR [ (1, _801) (-1, _802) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _801) (-1, _802) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _802) (-1, _803) 0 ]", "BLACKBOX::RANGE [(_803, 32)] []", - "EXPR [ (1, _803) (-1, _804) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _803) (-1, _804) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _804) (-1, _805) 0 ]", "BLACKBOX::RANGE [(_805, 32)] []", "EXPR [ (1, _751, _791) (1, _753, _792) (-1, _806) 0 ]", @@ -1203,21 +1203,21 @@ expression: artifact "EXPR [ (1, _805, _809) (1, _810, _811) (-1, _814) 0 ]", "EXPR [ (-1, _813) (-1, _815) 1 ]", "EXPR [ (1, _57, _751) (1, _753, _768) (-1, _816) 0 ]", - "EXPR [ (1, _751, _805) (-1, _2384) 0 ]", - "EXPR [ (1, _753, _806) (-1, _2385) 0 ]", - "EXPR [ (-1, _817) (1, _2090) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (1, _751, _805) (-1, _2327) 0 ]", + "EXPR [ (1, _753, _806) (-1, _2328) 0 ]", + "EXPR [ (-1, _817) (1, _2033) (1, _2327) (1, _2328) 0 ]", "EXPR [ (1, _813, _817) (-1, _818) 0 ]", "BLACKBOX::RANGE [(_818, 32)] []", - "EXPR [ (1, _818) (-1, _819) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _818) (-1, _819) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _819) (-1, _820) 0 ]", "BLACKBOX::RANGE [(_820, 32)] []", - "EXPR [ (1, _820) (-1, _821) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _820) (-1, _821) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _821) (-1, _822) 0 ]", "BLACKBOX::RANGE [(_822, 32)] []", - "EXPR [ (1, _822) (-1, _823) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _822) (-1, _823) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _823) (-1, _824) 0 ]", "BLACKBOX::RANGE [(_824, 32)] []", - "EXPR [ (-1, _825) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (-1, _825) (1, _2327) (1, _2328) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(824))], q_c: -4864 })], outputs: [Simple(Witness(826))]", "EXPR [ (1, _824, _826) (-4864, _826) (1, _827) -1 ]", "EXPR [ (1, _824, _827) (-4864, _827) 0 ]", @@ -1227,13 +1227,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _824) (-1, _831) 0 ]", "EXPR [ (1, _813, _831) (-1, _832) 0 ]", "BLACKBOX::RANGE [(_832, 32)] []", - "EXPR [ (1, _832) (-1, _833) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _832) (-1, _833) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _833) (-1, _834) 0 ]", "BLACKBOX::RANGE [(_834, 32)] []", - "EXPR [ (1, _834) (-1, _835) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _834) (-1, _835) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _835) (-1, _836) 0 ]", "BLACKBOX::RANGE [(_836, 32)] []", - "EXPR [ (1, _836) (-1, _837) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _836) (-1, _837) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _837) (-1, _838) 0 ]", "BLACKBOX::RANGE [(_838, 32)] []", "EXPR [ (1, _813, _824) (1, _815, _825) (-1, _839) 0 ]", @@ -1247,13 +1247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _838) (-1, _846) 0 ]", "EXPR [ (1, _813, _846) (-1, _847) 0 ]", "BLACKBOX::RANGE [(_847, 32)] []", - "EXPR [ (1, _847) (-1, _848) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _847) (-1, _848) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _848) (-1, _849) 0 ]", "BLACKBOX::RANGE [(_849, 32)] []", - "EXPR [ (1, _849) (-1, _850) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _849) (-1, _850) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _850) (-1, _851) 0 ]", "BLACKBOX::RANGE [(_851, 32)] []", - "EXPR [ (1, _851) (-1, _852) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _851) (-1, _852) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _852) (-1, _853) 0 ]", "BLACKBOX::RANGE [(_853, 32)] []", "EXPR [ (1, _813, _838) (1, _815, _839) (-1, _854) 0 ]", @@ -1266,13 +1266,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _853) (-1, _860) 0 ]", "EXPR [ (1, _813, _860) (-1, _861) 0 ]", "BLACKBOX::RANGE [(_861, 32)] []", - "EXPR [ (1, _861) (-1, _862) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _861) (-1, _862) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _862) (-1, _863) 0 ]", "BLACKBOX::RANGE [(_863, 32)] []", - "EXPR [ (1, _863) (-1, _864) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _863) (-1, _864) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _864) (-1, _865) 0 ]", "BLACKBOX::RANGE [(_865, 32)] []", - "EXPR [ (1, _865) (-1, _866) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _865) (-1, _866) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _866) (-1, _867) 0 ]", "BLACKBOX::RANGE [(_867, 32)] []", "EXPR [ (1, _813, _853) (1, _815, _854) (-1, _868) 0 ]", @@ -1288,21 +1288,21 @@ expression: artifact "EXPR [ (1, _867, _871) (1, _872, _873) (-1, _876) 0 ]", "EXPR [ (-1, _875) (-1, _877) 1 ]", "EXPR [ (1, _57, _813) (1, _815, _830) (-1, _878) 0 ]", - "EXPR [ (1, _813, _867) (-1, _2404) 0 ]", - "EXPR [ (1, _815, _868) (-1, _2405) 0 ]", - "EXPR [ (-1, _879) (1, _2090) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (1, _813, _867) (-1, _2347) 0 ]", + "EXPR [ (1, _815, _868) (-1, _2348) 0 ]", + "EXPR [ (-1, _879) (1, _2033) (1, _2347) (1, _2348) 0 ]", "EXPR [ (1, _875, _879) (-1, _880) 0 ]", "BLACKBOX::RANGE [(_880, 32)] []", - "EXPR [ (1, _880) (-1, _881) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _880) (-1, _881) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _881) (-1, _882) 0 ]", "BLACKBOX::RANGE [(_882, 32)] []", - "EXPR [ (1, _882) (-1, _883) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _882) (-1, _883) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _883) (-1, _884) 0 ]", "BLACKBOX::RANGE [(_884, 32)] []", - "EXPR [ (1, _884) (-1, _885) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _884) (-1, _885) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _885) (-1, _886) 0 ]", "BLACKBOX::RANGE [(_886, 32)] []", - "EXPR [ (-1, _887) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (-1, _887) (1, _2347) (1, _2348) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(886))], q_c: -4864 })], outputs: [Simple(Witness(888))]", "EXPR [ (1, _886, _888) (-4864, _888) (1, _889) -1 ]", "EXPR [ (1, _886, _889) (-4864, _889) 0 ]", @@ -1312,13 +1312,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _886) (-1, _893) 0 ]", "EXPR [ (1, _875, _893) (-1, _894) 0 ]", "BLACKBOX::RANGE [(_894, 32)] []", - "EXPR [ (1, _894) (-1, _895) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _894) (-1, _895) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _895) (-1, _896) 0 ]", "BLACKBOX::RANGE [(_896, 32)] []", - "EXPR [ (1, _896) (-1, _897) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _896) (-1, _897) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _897) (-1, _898) 0 ]", "BLACKBOX::RANGE [(_898, 32)] []", - "EXPR [ (1, _898) (-1, _899) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _898) (-1, _899) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _899) (-1, _900) 0 ]", "BLACKBOX::RANGE [(_900, 32)] []", "EXPR [ (1, _875, _886) (1, _877, _887) (-1, _901) 0 ]", @@ -1332,13 +1332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _900) (-1, _908) 0 ]", "EXPR [ (1, _875, _908) (-1, _909) 0 ]", "BLACKBOX::RANGE [(_909, 32)] []", - "EXPR [ (1, _909) (-1, _910) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _909) (-1, _910) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _910) (-1, _911) 0 ]", "BLACKBOX::RANGE [(_911, 32)] []", - "EXPR [ (1, _911) (-1, _912) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _911) (-1, _912) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _912) (-1, _913) 0 ]", "BLACKBOX::RANGE [(_913, 32)] []", - "EXPR [ (1, _913) (-1, _914) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _913) (-1, _914) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _914) (-1, _915) 0 ]", "BLACKBOX::RANGE [(_915, 32)] []", "EXPR [ (1, _875, _900) (1, _877, _901) (-1, _916) 0 ]", @@ -1351,13 +1351,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _915) (-1, _922) 0 ]", "EXPR [ (1, _875, _922) (-1, _923) 0 ]", "BLACKBOX::RANGE [(_923, 32)] []", - "EXPR [ (1, _923) (-1, _924) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _923) (-1, _924) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _924) (-1, _925) 0 ]", "BLACKBOX::RANGE [(_925, 32)] []", - "EXPR [ (1, _925) (-1, _926) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _925) (-1, _926) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _926) (-1, _927) 0 ]", "BLACKBOX::RANGE [(_927, 32)] []", - "EXPR [ (1, _927) (-1, _928) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _927) (-1, _928) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _928) (-1, _929) 0 ]", "BLACKBOX::RANGE [(_929, 32)] []", "EXPR [ (1, _875, _915) (1, _877, _916) (-1, _930) 0 ]", @@ -1373,21 +1373,21 @@ expression: artifact "EXPR [ (1, _929, _933) (1, _934, _935) (-1, _938) 0 ]", "EXPR [ (-1, _937) (-1, _939) 1 ]", "EXPR [ (1, _57, _875) (1, _877, _892) (-1, _940) 0 ]", - "EXPR [ (1, _875, _929) (-1, _2424) 0 ]", - "EXPR [ (1, _877, _930) (-1, _2425) 0 ]", - "EXPR [ (-1, _941) (1, _2090) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (1, _875, _929) (-1, _2367) 0 ]", + "EXPR [ (1, _877, _930) (-1, _2368) 0 ]", + "EXPR [ (-1, _941) (1, _2033) (1, _2367) (1, _2368) 0 ]", "EXPR [ (1, _937, _941) (-1, _942) 0 ]", "BLACKBOX::RANGE [(_942, 32)] []", - "EXPR [ (1, _942) (-1, _943) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _942) (-1, _943) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _943) (-1, _944) 0 ]", "BLACKBOX::RANGE [(_944, 32)] []", - "EXPR [ (1, _944) (-1, _945) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _944) (-1, _945) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _945) (-1, _946) 0 ]", "BLACKBOX::RANGE [(_946, 32)] []", - "EXPR [ (1, _946) (-1, _947) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _946) (-1, _947) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _947) (-1, _948) 0 ]", "BLACKBOX::RANGE [(_948, 32)] []", - "EXPR [ (-1, _949) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (-1, _949) (1, _2367) (1, _2368) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(948))], q_c: -4864 })], outputs: [Simple(Witness(950))]", "EXPR [ (1, _948, _950) (-4864, _950) (1, _951) -1 ]", "EXPR [ (1, _948, _951) (-4864, _951) 0 ]", @@ -1397,13 +1397,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _948) (-1, _955) 0 ]", "EXPR [ (1, _937, _955) (-1, _956) 0 ]", "BLACKBOX::RANGE [(_956, 32)] []", - "EXPR [ (1, _956) (-1, _957) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _956) (-1, _957) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _957) (-1, _958) 0 ]", "BLACKBOX::RANGE [(_958, 32)] []", - "EXPR [ (1, _958) (-1, _959) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _958) (-1, _959) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _959) (-1, _960) 0 ]", "BLACKBOX::RANGE [(_960, 32)] []", - "EXPR [ (1, _960) (-1, _961) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _960) (-1, _961) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _961) (-1, _962) 0 ]", "BLACKBOX::RANGE [(_962, 32)] []", "EXPR [ (1, _937, _948) (1, _939, _949) (-1, _963) 0 ]", @@ -1417,13 +1417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _962) (-1, _970) 0 ]", "EXPR [ (1, _937, _970) (-1, _971) 0 ]", "BLACKBOX::RANGE [(_971, 32)] []", - "EXPR [ (1, _971) (-1, _972) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _971) (-1, _972) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _972) (-1, _973) 0 ]", "BLACKBOX::RANGE [(_973, 32)] []", - "EXPR [ (1, _973) (-1, _974) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _973) (-1, _974) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _974) (-1, _975) 0 ]", "BLACKBOX::RANGE [(_975, 32)] []", - "EXPR [ (1, _975) (-1, _976) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _975) (-1, _976) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _976) (-1, _977) 0 ]", "BLACKBOX::RANGE [(_977, 32)] []", "EXPR [ (1, _937, _962) (1, _939, _963) (-1, _978) 0 ]", @@ -1436,13 +1436,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _977) (-1, _984) 0 ]", "EXPR [ (1, _937, _984) (-1, _985) 0 ]", "BLACKBOX::RANGE [(_985, 32)] []", - "EXPR [ (1, _985) (-1, _986) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _985) (-1, _986) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _986) (-1, _987) 0 ]", "BLACKBOX::RANGE [(_987, 32)] []", - "EXPR [ (1, _987) (-1, _988) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _987) (-1, _988) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _988) (-1, _989) 0 ]", "BLACKBOX::RANGE [(_989, 32)] []", - "EXPR [ (1, _989) (-1, _990) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _989) (-1, _990) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _990) (-1, _991) 0 ]", "BLACKBOX::RANGE [(_991, 32)] []", "EXPR [ (1, _937, _977) (1, _939, _978) (-1, _992) 0 ]", @@ -1458,21 +1458,21 @@ expression: artifact "EXPR [ (1, _991, _995) (1, _996, _997) (-1, _1000) 0 ]", "EXPR [ (-1, _999) (-1, _1001) 1 ]", "EXPR [ (1, _57, _937) (1, _939, _954) (-1, _1002) 0 ]", - "EXPR [ (1, _937, _991) (-1, _2444) 0 ]", - "EXPR [ (1, _939, _992) (-1, _2445) 0 ]", - "EXPR [ (-1, _1003) (1, _2090) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (1, _937, _991) (-1, _2387) 0 ]", + "EXPR [ (1, _939, _992) (-1, _2388) 0 ]", + "EXPR [ (-1, _1003) (1, _2033) (1, _2387) (1, _2388) 0 ]", "EXPR [ (1, _999, _1003) (-1, _1004) 0 ]", "BLACKBOX::RANGE [(_1004, 32)] []", - "EXPR [ (1, _1004) (-1, _1005) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1004) (-1, _1005) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1005) (-1, _1006) 0 ]", "BLACKBOX::RANGE [(_1006, 32)] []", - "EXPR [ (1, _1006) (-1, _1007) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1006) (-1, _1007) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1007) (-1, _1008) 0 ]", "BLACKBOX::RANGE [(_1008, 32)] []", - "EXPR [ (1, _1008) (-1, _1009) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1008) (-1, _1009) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1009) (-1, _1010) 0 ]", "BLACKBOX::RANGE [(_1010, 32)] []", - "EXPR [ (-1, _1011) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (-1, _1011) (1, _2387) (1, _2388) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1010))], q_c: -4864 })], outputs: [Simple(Witness(1012))]", "EXPR [ (1, _1010, _1012) (-4864, _1012) (1, _1013) -1 ]", "EXPR [ (1, _1010, _1013) (-4864, _1013) 0 ]", @@ -1482,13 +1482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1010) (-1, _1017) 0 ]", "EXPR [ (1, _999, _1017) (-1, _1018) 0 ]", "BLACKBOX::RANGE [(_1018, 32)] []", - "EXPR [ (1, _1018) (-1, _1019) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1018) (-1, _1019) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1019) (-1, _1020) 0 ]", "BLACKBOX::RANGE [(_1020, 32)] []", - "EXPR [ (1, _1020) (-1, _1021) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1020) (-1, _1021) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1021) (-1, _1022) 0 ]", "BLACKBOX::RANGE [(_1022, 32)] []", - "EXPR [ (1, _1022) (-1, _1023) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1022) (-1, _1023) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1023) (-1, _1024) 0 ]", "BLACKBOX::RANGE [(_1024, 32)] []", "EXPR [ (1, _999, _1010) (1, _1001, _1011) (-1, _1025) 0 ]", @@ -1502,13 +1502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1024) (-1, _1032) 0 ]", "EXPR [ (1, _999, _1032) (-1, _1033) 0 ]", "BLACKBOX::RANGE [(_1033, 32)] []", - "EXPR [ (1, _1033) (-1, _1034) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1033) (-1, _1034) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1034) (-1, _1035) 0 ]", "BLACKBOX::RANGE [(_1035, 32)] []", - "EXPR [ (1, _1035) (-1, _1036) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1035) (-1, _1036) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1036) (-1, _1037) 0 ]", "BLACKBOX::RANGE [(_1037, 32)] []", - "EXPR [ (1, _1037) (-1, _1038) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1037) (-1, _1038) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1038) (-1, _1039) 0 ]", "BLACKBOX::RANGE [(_1039, 32)] []", "EXPR [ (1, _999, _1024) (1, _1001, _1025) (-1, _1040) 0 ]", @@ -1521,13 +1521,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1039) (-1, _1046) 0 ]", "EXPR [ (1, _999, _1046) (-1, _1047) 0 ]", "BLACKBOX::RANGE [(_1047, 32)] []", - "EXPR [ (1, _1047) (-1, _1048) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1047) (-1, _1048) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1048) (-1, _1049) 0 ]", "BLACKBOX::RANGE [(_1049, 32)] []", - "EXPR [ (1, _1049) (-1, _1050) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1049) (-1, _1050) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1050) (-1, _1051) 0 ]", "BLACKBOX::RANGE [(_1051, 32)] []", - "EXPR [ (1, _1051) (-1, _1052) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1051) (-1, _1052) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1052) (-1, _1053) 0 ]", "BLACKBOX::RANGE [(_1053, 32)] []", "EXPR [ (1, _999, _1039) (1, _1001, _1040) (-1, _1054) 0 ]", @@ -1543,21 +1543,21 @@ expression: artifact "EXPR [ (1, _1053, _1057) (1, _1058, _1059) (-1, _1062) 0 ]", "EXPR [ (-1, _1061) (-1, _1063) 1 ]", "EXPR [ (1, _57, _999) (1, _1001, _1016) (-1, _1064) 0 ]", - "EXPR [ (1, _999, _1053) (-1, _2464) 0 ]", - "EXPR [ (1, _1001, _1054) (-1, _2465) 0 ]", - "EXPR [ (-1, _1065) (1, _2090) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (1, _999, _1053) (-1, _2407) 0 ]", + "EXPR [ (1, _1001, _1054) (-1, _2408) 0 ]", + "EXPR [ (-1, _1065) (1, _2033) (1, _2407) (1, _2408) 0 ]", "EXPR [ (1, _1061, _1065) (-1, _1066) 0 ]", "BLACKBOX::RANGE [(_1066, 32)] []", - "EXPR [ (1, _1066) (-1, _1067) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1066) (-1, _1067) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1067) (-1, _1068) 0 ]", "BLACKBOX::RANGE [(_1068, 32)] []", - "EXPR [ (1, _1068) (-1, _1069) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1068) (-1, _1069) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1069) (-1, _1070) 0 ]", "BLACKBOX::RANGE [(_1070, 32)] []", - "EXPR [ (1, _1070) (-1, _1071) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1070) (-1, _1071) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1071) (-1, _1072) 0 ]", "BLACKBOX::RANGE [(_1072, 32)] []", - "EXPR [ (-1, _1073) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (-1, _1073) (1, _2407) (1, _2408) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1072))], q_c: -4864 })], outputs: [Simple(Witness(1074))]", "EXPR [ (1, _1072, _1074) (-4864, _1074) (1, _1075) -1 ]", "EXPR [ (1, _1072, _1075) (-4864, _1075) 0 ]", @@ -1567,13 +1567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1072) (-1, _1079) 0 ]", "EXPR [ (1, _1061, _1079) (-1, _1080) 0 ]", "BLACKBOX::RANGE [(_1080, 32)] []", - "EXPR [ (1, _1080) (-1, _1081) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1080) (-1, _1081) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1081) (-1, _1082) 0 ]", "BLACKBOX::RANGE [(_1082, 32)] []", - "EXPR [ (1, _1082) (-1, _1083) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1082) (-1, _1083) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1083) (-1, _1084) 0 ]", "BLACKBOX::RANGE [(_1084, 32)] []", - "EXPR [ (1, _1084) (-1, _1085) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1084) (-1, _1085) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1085) (-1, _1086) 0 ]", "BLACKBOX::RANGE [(_1086, 32)] []", "EXPR [ (1, _1061, _1072) (1, _1063, _1073) (-1, _1087) 0 ]", @@ -1587,13 +1587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1086) (-1, _1094) 0 ]", "EXPR [ (1, _1061, _1094) (-1, _1095) 0 ]", "BLACKBOX::RANGE [(_1095, 32)] []", - "EXPR [ (1, _1095) (-1, _1096) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1095) (-1, _1096) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1096) (-1, _1097) 0 ]", "BLACKBOX::RANGE [(_1097, 32)] []", - "EXPR [ (1, _1097) (-1, _1098) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1097) (-1, _1098) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1098) (-1, _1099) 0 ]", "BLACKBOX::RANGE [(_1099, 32)] []", - "EXPR [ (1, _1099) (-1, _1100) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1099) (-1, _1100) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1100) (-1, _1101) 0 ]", "BLACKBOX::RANGE [(_1101, 32)] []", "EXPR [ (1, _1061, _1086) (1, _1063, _1087) (-1, _1102) 0 ]", @@ -1606,13 +1606,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1101) (-1, _1108) 0 ]", "EXPR [ (1, _1061, _1108) (-1, _1109) 0 ]", "BLACKBOX::RANGE [(_1109, 32)] []", - "EXPR [ (1, _1109) (-1, _1110) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1109) (-1, _1110) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1110) (-1, _1111) 0 ]", "BLACKBOX::RANGE [(_1111, 32)] []", - "EXPR [ (1, _1111) (-1, _1112) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1111) (-1, _1112) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1112) (-1, _1113) 0 ]", "BLACKBOX::RANGE [(_1113, 32)] []", - "EXPR [ (1, _1113) (-1, _1114) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1113) (-1, _1114) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1114) (-1, _1115) 0 ]", "BLACKBOX::RANGE [(_1115, 32)] []", "EXPR [ (1, _1061, _1101) (1, _1063, _1102) (-1, _1116) 0 ]", @@ -1628,21 +1628,21 @@ expression: artifact "EXPR [ (1, _1115, _1119) (1, _1120, _1121) (-1, _1124) 0 ]", "EXPR [ (-1, _1123) (-1, _1125) 1 ]", "EXPR [ (1, _57, _1061) (1, _1063, _1078) (-1, _1126) 0 ]", - "EXPR [ (1, _1061, _1115) (-1, _2484) 0 ]", - "EXPR [ (1, _1063, _1116) (-1, _2485) 0 ]", - "EXPR [ (-1, _1127) (1, _2090) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (1, _1061, _1115) (-1, _2427) 0 ]", + "EXPR [ (1, _1063, _1116) (-1, _2428) 0 ]", + "EXPR [ (-1, _1127) (1, _2033) (1, _2427) (1, _2428) 0 ]", "EXPR [ (1, _1123, _1127) (-1, _1128) 0 ]", "BLACKBOX::RANGE [(_1128, 32)] []", - "EXPR [ (1, _1128) (-1, _1129) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1128) (-1, _1129) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1129) (-1, _1130) 0 ]", "BLACKBOX::RANGE [(_1130, 32)] []", - "EXPR [ (1, _1130) (-1, _1131) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1130) (-1, _1131) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1131) (-1, _1132) 0 ]", "BLACKBOX::RANGE [(_1132, 32)] []", - "EXPR [ (1, _1132) (-1, _1133) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1132) (-1, _1133) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1133) (-1, _1134) 0 ]", "BLACKBOX::RANGE [(_1134, 32)] []", - "EXPR [ (-1, _1135) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (-1, _1135) (1, _2427) (1, _2428) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1134))], q_c: -4864 })], outputs: [Simple(Witness(1136))]", "EXPR [ (1, _1134, _1136) (-4864, _1136) (1, _1137) -1 ]", "EXPR [ (1, _1134, _1137) (-4864, _1137) 0 ]", @@ -1652,13 +1652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1134) (-1, _1141) 0 ]", "EXPR [ (1, _1123, _1141) (-1, _1142) 0 ]", "BLACKBOX::RANGE [(_1142, 32)] []", - "EXPR [ (1, _1142) (-1, _1143) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1142) (-1, _1143) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1143) (-1, _1144) 0 ]", "BLACKBOX::RANGE [(_1144, 32)] []", - "EXPR [ (1, _1144) (-1, _1145) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1144) (-1, _1145) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1145) (-1, _1146) 0 ]", "BLACKBOX::RANGE [(_1146, 32)] []", - "EXPR [ (1, _1146) (-1, _1147) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1146) (-1, _1147) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1147) (-1, _1148) 0 ]", "BLACKBOX::RANGE [(_1148, 32)] []", "EXPR [ (1, _1123, _1134) (1, _1125, _1135) (-1, _1149) 0 ]", @@ -1672,13 +1672,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1148) (-1, _1156) 0 ]", "EXPR [ (1, _1123, _1156) (-1, _1157) 0 ]", "BLACKBOX::RANGE [(_1157, 32)] []", - "EXPR [ (1, _1157) (-1, _1158) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1157) (-1, _1158) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1158) (-1, _1159) 0 ]", "BLACKBOX::RANGE [(_1159, 32)] []", - "EXPR [ (1, _1159) (-1, _1160) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1159) (-1, _1160) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1160) (-1, _1161) 0 ]", "BLACKBOX::RANGE [(_1161, 32)] []", - "EXPR [ (1, _1161) (-1, _1162) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1161) (-1, _1162) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1162) (-1, _1163) 0 ]", "BLACKBOX::RANGE [(_1163, 32)] []", "EXPR [ (1, _1123, _1148) (1, _1125, _1149) (-1, _1164) 0 ]", @@ -1691,13 +1691,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1163) (-1, _1170) 0 ]", "EXPR [ (1, _1123, _1170) (-1, _1171) 0 ]", "BLACKBOX::RANGE [(_1171, 32)] []", - "EXPR [ (1, _1171) (-1, _1172) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1171) (-1, _1172) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1172) (-1, _1173) 0 ]", "BLACKBOX::RANGE [(_1173, 32)] []", - "EXPR [ (1, _1173) (-1, _1174) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1173) (-1, _1174) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1174) (-1, _1175) 0 ]", "BLACKBOX::RANGE [(_1175, 32)] []", - "EXPR [ (1, _1175) (-1, _1176) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1175) (-1, _1176) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1176) (-1, _1177) 0 ]", "BLACKBOX::RANGE [(_1177, 32)] []", "EXPR [ (1, _1123, _1163) (1, _1125, _1164) (-1, _1178) 0 ]", @@ -1713,21 +1713,21 @@ expression: artifact "EXPR [ (1, _1177, _1181) (1, _1182, _1183) (-1, _1186) 0 ]", "EXPR [ (-1, _1185) (-1, _1187) 1 ]", "EXPR [ (1, _57, _1123) (1, _1125, _1140) (-1, _1188) 0 ]", - "EXPR [ (1, _1123, _1177) (-1, _2504) 0 ]", - "EXPR [ (1, _1125, _1178) (-1, _2505) 0 ]", - "EXPR [ (-1, _1189) (1, _2090) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (1, _1123, _1177) (-1, _2447) 0 ]", + "EXPR [ (1, _1125, _1178) (-1, _2448) 0 ]", + "EXPR [ (-1, _1189) (1, _2033) (1, _2447) (1, _2448) 0 ]", "EXPR [ (1, _1185, _1189) (-1, _1190) 0 ]", "BLACKBOX::RANGE [(_1190, 32)] []", - "EXPR [ (1, _1190) (-1, _1191) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1190) (-1, _1191) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1191) (-1, _1192) 0 ]", "BLACKBOX::RANGE [(_1192, 32)] []", - "EXPR [ (1, _1192) (-1, _1193) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1192) (-1, _1193) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1193) (-1, _1194) 0 ]", "BLACKBOX::RANGE [(_1194, 32)] []", - "EXPR [ (1, _1194) (-1, _1195) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1194) (-1, _1195) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1195) (-1, _1196) 0 ]", "BLACKBOX::RANGE [(_1196, 32)] []", - "EXPR [ (-1, _1197) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (-1, _1197) (1, _2447) (1, _2448) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1196))], q_c: -4864 })], outputs: [Simple(Witness(1198))]", "EXPR [ (1, _1196, _1198) (-4864, _1198) (1, _1199) -1 ]", "EXPR [ (1, _1196, _1199) (-4864, _1199) 0 ]", @@ -1737,13 +1737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1196) (-1, _1203) 0 ]", "EXPR [ (1, _1185, _1203) (-1, _1204) 0 ]", "BLACKBOX::RANGE [(_1204, 32)] []", - "EXPR [ (1, _1204) (-1, _1205) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1204) (-1, _1205) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1205) (-1, _1206) 0 ]", "BLACKBOX::RANGE [(_1206, 32)] []", - "EXPR [ (1, _1206) (-1, _1207) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1206) (-1, _1207) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1207) (-1, _1208) 0 ]", "BLACKBOX::RANGE [(_1208, 32)] []", - "EXPR [ (1, _1208) (-1, _1209) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1208) (-1, _1209) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1209) (-1, _1210) 0 ]", "BLACKBOX::RANGE [(_1210, 32)] []", "EXPR [ (1, _1185, _1196) (1, _1187, _1197) (-1, _1211) 0 ]", @@ -1757,13 +1757,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1210) (-1, _1218) 0 ]", "EXPR [ (1, _1185, _1218) (-1, _1219) 0 ]", "BLACKBOX::RANGE [(_1219, 32)] []", - "EXPR [ (1, _1219) (-1, _1220) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1219) (-1, _1220) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1220) (-1, _1221) 0 ]", "BLACKBOX::RANGE [(_1221, 32)] []", - "EXPR [ (1, _1221) (-1, _1222) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1221) (-1, _1222) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1222) (-1, _1223) 0 ]", "BLACKBOX::RANGE [(_1223, 32)] []", - "EXPR [ (1, _1223) (-1, _1224) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1223) (-1, _1224) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1224) (-1, _1225) 0 ]", "BLACKBOX::RANGE [(_1225, 32)] []", "EXPR [ (1, _1185, _1210) (1, _1187, _1211) (-1, _1226) 0 ]", @@ -1776,13 +1776,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1225) (-1, _1232) 0 ]", "EXPR [ (1, _1185, _1232) (-1, _1233) 0 ]", "BLACKBOX::RANGE [(_1233, 32)] []", - "EXPR [ (1, _1233) (-1, _1234) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1233) (-1, _1234) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1234) (-1, _1235) 0 ]", "BLACKBOX::RANGE [(_1235, 32)] []", - "EXPR [ (1, _1235) (-1, _1236) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1235) (-1, _1236) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1236) (-1, _1237) 0 ]", "BLACKBOX::RANGE [(_1237, 32)] []", - "EXPR [ (1, _1237) (-1, _1238) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1237) (-1, _1238) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1238) (-1, _1239) 0 ]", "BLACKBOX::RANGE [(_1239, 32)] []", "EXPR [ (1, _1185, _1225) (1, _1187, _1226) (-1, _1240) 0 ]", @@ -1798,21 +1798,21 @@ expression: artifact "EXPR [ (1, _1239, _1243) (1, _1244, _1245) (-1, _1248) 0 ]", "EXPR [ (-1, _1247) (-1, _1249) 1 ]", "EXPR [ (1, _57, _1185) (1, _1187, _1202) (-1, _1250) 0 ]", - "EXPR [ (1, _1185, _1239) (-1, _2524) 0 ]", - "EXPR [ (1, _1187, _1240) (-1, _2525) 0 ]", - "EXPR [ (-1, _1251) (1, _2090) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (1, _1185, _1239) (-1, _2467) 0 ]", + "EXPR [ (1, _1187, _1240) (-1, _2468) 0 ]", + "EXPR [ (-1, _1251) (1, _2033) (1, _2467) (1, _2468) 0 ]", "EXPR [ (1, _1247, _1251) (-1, _1252) 0 ]", "BLACKBOX::RANGE [(_1252, 32)] []", - "EXPR [ (1, _1252) (-1, _1253) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1252) (-1, _1253) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1253) (-1, _1254) 0 ]", "BLACKBOX::RANGE [(_1254, 32)] []", - "EXPR [ (1, _1254) (-1, _1255) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1254) (-1, _1255) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1255) (-1, _1256) 0 ]", "BLACKBOX::RANGE [(_1256, 32)] []", - "EXPR [ (1, _1256) (-1, _1257) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1256) (-1, _1257) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1257) (-1, _1258) 0 ]", "BLACKBOX::RANGE [(_1258, 32)] []", - "EXPR [ (-1, _1259) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (-1, _1259) (1, _2467) (1, _2468) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1258))], q_c: -4864 })], outputs: [Simple(Witness(1260))]", "EXPR [ (1, _1258, _1260) (-4864, _1260) (1, _1261) -1 ]", "EXPR [ (1, _1258, _1261) (-4864, _1261) 0 ]", @@ -1822,13 +1822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1258) (-1, _1265) 0 ]", "EXPR [ (1, _1247, _1265) (-1, _1266) 0 ]", "BLACKBOX::RANGE [(_1266, 32)] []", - "EXPR [ (1, _1266) (-1, _1267) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1266) (-1, _1267) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1267) (-1, _1268) 0 ]", "BLACKBOX::RANGE [(_1268, 32)] []", - "EXPR [ (1, _1268) (-1, _1269) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1268) (-1, _1269) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1269) (-1, _1270) 0 ]", "BLACKBOX::RANGE [(_1270, 32)] []", - "EXPR [ (1, _1270) (-1, _1271) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1270) (-1, _1271) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1271) (-1, _1272) 0 ]", "BLACKBOX::RANGE [(_1272, 32)] []", "EXPR [ (1, _1247, _1258) (1, _1249, _1259) (-1, _1273) 0 ]", @@ -1842,13 +1842,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1272) (-1, _1280) 0 ]", "EXPR [ (1, _1247, _1280) (-1, _1281) 0 ]", "BLACKBOX::RANGE [(_1281, 32)] []", - "EXPR [ (1, _1281) (-1, _1282) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1281) (-1, _1282) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1282) (-1, _1283) 0 ]", "BLACKBOX::RANGE [(_1283, 32)] []", - "EXPR [ (1, _1283) (-1, _1284) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1283) (-1, _1284) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1284) (-1, _1285) 0 ]", "BLACKBOX::RANGE [(_1285, 32)] []", - "EXPR [ (1, _1285) (-1, _1286) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1285) (-1, _1286) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1286) (-1, _1287) 0 ]", "BLACKBOX::RANGE [(_1287, 32)] []", "EXPR [ (1, _1247, _1272) (1, _1249, _1273) (-1, _1288) 0 ]", @@ -1861,13 +1861,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1287) (-1, _1294) 0 ]", "EXPR [ (1, _1247, _1294) (-1, _1295) 0 ]", "BLACKBOX::RANGE [(_1295, 32)] []", - "EXPR [ (1, _1295) (-1, _1296) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1295) (-1, _1296) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1296) (-1, _1297) 0 ]", "BLACKBOX::RANGE [(_1297, 32)] []", - "EXPR [ (1, _1297) (-1, _1298) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1297) (-1, _1298) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1298) (-1, _1299) 0 ]", "BLACKBOX::RANGE [(_1299, 32)] []", - "EXPR [ (1, _1299) (-1, _1300) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1299) (-1, _1300) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1300) (-1, _1301) 0 ]", "BLACKBOX::RANGE [(_1301, 32)] []", "EXPR [ (1, _1247, _1287) (1, _1249, _1288) (-1, _1302) 0 ]", @@ -1883,21 +1883,21 @@ expression: artifact "EXPR [ (1, _1301, _1305) (1, _1306, _1307) (-1, _1310) 0 ]", "EXPR [ (-1, _1309) (-1, _1311) 1 ]", "EXPR [ (1, _57, _1247) (1, _1249, _1264) (-1, _1312) 0 ]", - "EXPR [ (1, _1247, _1301) (-1, _2544) 0 ]", - "EXPR [ (1, _1249, _1302) (-1, _2545) 0 ]", - "EXPR [ (-1, _1313) (1, _2090) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (1, _1247, _1301) (-1, _2487) 0 ]", + "EXPR [ (1, _1249, _1302) (-1, _2488) 0 ]", + "EXPR [ (-1, _1313) (1, _2033) (1, _2487) (1, _2488) 0 ]", "EXPR [ (1, _1309, _1313) (-1, _1314) 0 ]", "BLACKBOX::RANGE [(_1314, 32)] []", - "EXPR [ (1, _1314) (-1, _1315) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1314) (-1, _1315) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1315) (-1, _1316) 0 ]", "BLACKBOX::RANGE [(_1316, 32)] []", - "EXPR [ (1, _1316) (-1, _1317) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1316) (-1, _1317) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1317) (-1, _1318) 0 ]", "BLACKBOX::RANGE [(_1318, 32)] []", - "EXPR [ (1, _1318) (-1, _1319) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1318) (-1, _1319) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1319) (-1, _1320) 0 ]", "BLACKBOX::RANGE [(_1320, 32)] []", - "EXPR [ (-1, _1321) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (-1, _1321) (1, _2487) (1, _2488) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1320))], q_c: -4864 })], outputs: [Simple(Witness(1322))]", "EXPR [ (1, _1320, _1322) (-4864, _1322) (1, _1323) -1 ]", "EXPR [ (1, _1320, _1323) (-4864, _1323) 0 ]", @@ -1907,13 +1907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1320) (-1, _1327) 0 ]", "EXPR [ (1, _1309, _1327) (-1, _1328) 0 ]", "BLACKBOX::RANGE [(_1328, 32)] []", - "EXPR [ (1, _1328) (-1, _1329) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1328) (-1, _1329) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1329) (-1, _1330) 0 ]", "BLACKBOX::RANGE [(_1330, 32)] []", - "EXPR [ (1, _1330) (-1, _1331) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1330) (-1, _1331) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1331) (-1, _1332) 0 ]", "BLACKBOX::RANGE [(_1332, 32)] []", - "EXPR [ (1, _1332) (-1, _1333) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1332) (-1, _1333) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1333) (-1, _1334) 0 ]", "BLACKBOX::RANGE [(_1334, 32)] []", "EXPR [ (1, _1309, _1320) (1, _1311, _1321) (-1, _1335) 0 ]", @@ -1927,13 +1927,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1334) (-1, _1342) 0 ]", "EXPR [ (1, _1309, _1342) (-1, _1343) 0 ]", "BLACKBOX::RANGE [(_1343, 32)] []", - "EXPR [ (1, _1343) (-1, _1344) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1343) (-1, _1344) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1344) (-1, _1345) 0 ]", "BLACKBOX::RANGE [(_1345, 32)] []", - "EXPR [ (1, _1345) (-1, _1346) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1345) (-1, _1346) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1346) (-1, _1347) 0 ]", "BLACKBOX::RANGE [(_1347, 32)] []", - "EXPR [ (1, _1347) (-1, _1348) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1347) (-1, _1348) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1348) (-1, _1349) 0 ]", "BLACKBOX::RANGE [(_1349, 32)] []", "EXPR [ (1, _1309, _1334) (1, _1311, _1335) (-1, _1350) 0 ]", @@ -1946,13 +1946,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1349) (-1, _1356) 0 ]", "EXPR [ (1, _1309, _1356) (-1, _1357) 0 ]", "BLACKBOX::RANGE [(_1357, 32)] []", - "EXPR [ (1, _1357) (-1, _1358) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1357) (-1, _1358) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1358) (-1, _1359) 0 ]", "BLACKBOX::RANGE [(_1359, 32)] []", - "EXPR [ (1, _1359) (-1, _1360) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1359) (-1, _1360) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1360) (-1, _1361) 0 ]", "BLACKBOX::RANGE [(_1361, 32)] []", - "EXPR [ (1, _1361) (-1, _1362) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1361) (-1, _1362) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1362) (-1, _1363) 0 ]", "BLACKBOX::RANGE [(_1363, 32)] []", "EXPR [ (1, _1309, _1349) (1, _1311, _1350) (-1, _1364) 0 ]", @@ -1968,21 +1968,21 @@ expression: artifact "EXPR [ (1, _1363, _1367) (1, _1368, _1369) (-1, _1372) 0 ]", "EXPR [ (-1, _1371) (-1, _1373) 1 ]", "EXPR [ (1, _57, _1309) (1, _1311, _1326) (-1, _1374) 0 ]", - "EXPR [ (1, _1309, _1363) (-1, _2564) 0 ]", - "EXPR [ (1, _1311, _1364) (-1, _2565) 0 ]", - "EXPR [ (-1, _1375) (1, _2090) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (1, _1309, _1363) (-1, _2507) 0 ]", + "EXPR [ (1, _1311, _1364) (-1, _2508) 0 ]", + "EXPR [ (-1, _1375) (1, _2033) (1, _2507) (1, _2508) 0 ]", "EXPR [ (1, _1371, _1375) (-1, _1376) 0 ]", "BLACKBOX::RANGE [(_1376, 32)] []", - "EXPR [ (1, _1376) (-1, _1377) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1376) (-1, _1377) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1377) (-1, _1378) 0 ]", "BLACKBOX::RANGE [(_1378, 32)] []", - "EXPR [ (1, _1378) (-1, _1379) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1378) (-1, _1379) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1379) (-1, _1380) 0 ]", "BLACKBOX::RANGE [(_1380, 32)] []", - "EXPR [ (1, _1380) (-1, _1381) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1380) (-1, _1381) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1381) (-1, _1382) 0 ]", "BLACKBOX::RANGE [(_1382, 32)] []", - "EXPR [ (-1, _1383) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (-1, _1383) (1, _2507) (1, _2508) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1382))], q_c: -4864 })], outputs: [Simple(Witness(1384))]", "EXPR [ (1, _1382, _1384) (-4864, _1384) (1, _1385) -1 ]", "EXPR [ (1, _1382, _1385) (-4864, _1385) 0 ]", @@ -1992,13 +1992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1382) (-1, _1389) 0 ]", "EXPR [ (1, _1371, _1389) (-1, _1390) 0 ]", "BLACKBOX::RANGE [(_1390, 32)] []", - "EXPR [ (1, _1390) (-1, _1391) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1390) (-1, _1391) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1391) (-1, _1392) 0 ]", "BLACKBOX::RANGE [(_1392, 32)] []", - "EXPR [ (1, _1392) (-1, _1393) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1392) (-1, _1393) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1393) (-1, _1394) 0 ]", "BLACKBOX::RANGE [(_1394, 32)] []", - "EXPR [ (1, _1394) (-1, _1395) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1394) (-1, _1395) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1395) (-1, _1396) 0 ]", "BLACKBOX::RANGE [(_1396, 32)] []", "EXPR [ (1, _1371, _1382) (1, _1373, _1383) (-1, _1397) 0 ]", @@ -2012,13 +2012,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1396) (-1, _1404) 0 ]", "EXPR [ (1, _1371, _1404) (-1, _1405) 0 ]", "BLACKBOX::RANGE [(_1405, 32)] []", - "EXPR [ (1, _1405) (-1, _1406) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1405) (-1, _1406) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1406) (-1, _1407) 0 ]", "BLACKBOX::RANGE [(_1407, 32)] []", - "EXPR [ (1, _1407) (-1, _1408) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1407) (-1, _1408) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1408) (-1, _1409) 0 ]", "BLACKBOX::RANGE [(_1409, 32)] []", - "EXPR [ (1, _1409) (-1, _1410) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1409) (-1, _1410) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1410) (-1, _1411) 0 ]", "BLACKBOX::RANGE [(_1411, 32)] []", "EXPR [ (1, _1371, _1396) (1, _1373, _1397) (-1, _1412) 0 ]", @@ -2031,13 +2031,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1411) (-1, _1418) 0 ]", "EXPR [ (1, _1371, _1418) (-1, _1419) 0 ]", "BLACKBOX::RANGE [(_1419, 32)] []", - "EXPR [ (1, _1419) (-1, _1420) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1419) (-1, _1420) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1420) (-1, _1421) 0 ]", "BLACKBOX::RANGE [(_1421, 32)] []", - "EXPR [ (1, _1421) (-1, _1422) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1421) (-1, _1422) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1422) (-1, _1423) 0 ]", "BLACKBOX::RANGE [(_1423, 32)] []", - "EXPR [ (1, _1423) (-1, _1424) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1423) (-1, _1424) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1424) (-1, _1425) 0 ]", "BLACKBOX::RANGE [(_1425, 32)] []", "EXPR [ (1, _1371, _1411) (1, _1373, _1412) (-1, _1426) 0 ]", @@ -2053,21 +2053,21 @@ expression: artifact "EXPR [ (1, _1425, _1429) (1, _1430, _1431) (-1, _1434) 0 ]", "EXPR [ (-1, _1433) (-1, _1435) 1 ]", "EXPR [ (1, _57, _1371) (1, _1373, _1388) (-1, _1436) 0 ]", - "EXPR [ (1, _1371, _1425) (-1, _2584) 0 ]", - "EXPR [ (1, _1373, _1426) (-1, _2585) 0 ]", - "EXPR [ (-1, _1437) (1, _2090) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (1, _1371, _1425) (-1, _2527) 0 ]", + "EXPR [ (1, _1373, _1426) (-1, _2528) 0 ]", + "EXPR [ (-1, _1437) (1, _2033) (1, _2527) (1, _2528) 0 ]", "EXPR [ (1, _1433, _1437) (-1, _1438) 0 ]", "BLACKBOX::RANGE [(_1438, 32)] []", - "EXPR [ (1, _1438) (-1, _1439) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1438) (-1, _1439) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1439) (-1, _1440) 0 ]", "BLACKBOX::RANGE [(_1440, 32)] []", - "EXPR [ (1, _1440) (-1, _1441) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1440) (-1, _1441) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1441) (-1, _1442) 0 ]", "BLACKBOX::RANGE [(_1442, 32)] []", - "EXPR [ (1, _1442) (-1, _1443) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1442) (-1, _1443) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1443) (-1, _1444) 0 ]", "BLACKBOX::RANGE [(_1444, 32)] []", - "EXPR [ (-1, _1445) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (-1, _1445) (1, _2527) (1, _2528) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1444))], q_c: -4864 })], outputs: [Simple(Witness(1446))]", "EXPR [ (1, _1444, _1446) (-4864, _1446) (1, _1447) -1 ]", "EXPR [ (1, _1444, _1447) (-4864, _1447) 0 ]", @@ -2077,13 +2077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1444) (-1, _1451) 0 ]", "EXPR [ (1, _1433, _1451) (-1, _1452) 0 ]", "BLACKBOX::RANGE [(_1452, 32)] []", - "EXPR [ (1, _1452) (-1, _1453) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1452) (-1, _1453) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1453) (-1, _1454) 0 ]", "BLACKBOX::RANGE [(_1454, 32)] []", - "EXPR [ (1, _1454) (-1, _1455) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1454) (-1, _1455) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1455) (-1, _1456) 0 ]", "BLACKBOX::RANGE [(_1456, 32)] []", - "EXPR [ (1, _1456) (-1, _1457) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1456) (-1, _1457) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1457) (-1, _1458) 0 ]", "BLACKBOX::RANGE [(_1458, 32)] []", "EXPR [ (1, _1433, _1444) (1, _1435, _1445) (-1, _1459) 0 ]", @@ -2097,13 +2097,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1458) (-1, _1466) 0 ]", "EXPR [ (1, _1433, _1466) (-1, _1467) 0 ]", "BLACKBOX::RANGE [(_1467, 32)] []", - "EXPR [ (1, _1467) (-1, _1468) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1467) (-1, _1468) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1468) (-1, _1469) 0 ]", "BLACKBOX::RANGE [(_1469, 32)] []", - "EXPR [ (1, _1469) (-1, _1470) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1469) (-1, _1470) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1470) (-1, _1471) 0 ]", "BLACKBOX::RANGE [(_1471, 32)] []", - "EXPR [ (1, _1471) (-1, _1472) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1471) (-1, _1472) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1472) (-1, _1473) 0 ]", "BLACKBOX::RANGE [(_1473, 32)] []", "EXPR [ (1, _1433, _1458) (1, _1435, _1459) (-1, _1474) 0 ]", @@ -2116,13 +2116,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1473) (-1, _1480) 0 ]", "EXPR [ (1, _1433, _1480) (-1, _1481) 0 ]", "BLACKBOX::RANGE [(_1481, 32)] []", - "EXPR [ (1, _1481) (-1, _1482) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1481) (-1, _1482) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1482) (-1, _1483) 0 ]", "BLACKBOX::RANGE [(_1483, 32)] []", - "EXPR [ (1, _1483) (-1, _1484) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1483) (-1, _1484) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1484) (-1, _1485) 0 ]", "BLACKBOX::RANGE [(_1485, 32)] []", - "EXPR [ (1, _1485) (-1, _1486) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1485) (-1, _1486) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1486) (-1, _1487) 0 ]", "BLACKBOX::RANGE [(_1487, 32)] []", "EXPR [ (1, _1433, _1473) (1, _1435, _1474) (-1, _1488) 0 ]", @@ -2138,21 +2138,21 @@ expression: artifact "EXPR [ (1, _1487, _1491) (1, _1492, _1493) (-1, _1496) 0 ]", "EXPR [ (-1, _1495) (-1, _1497) 1 ]", "EXPR [ (1, _57, _1433) (1, _1435, _1450) (-1, _1498) 0 ]", - "EXPR [ (1, _1433, _1487) (-1, _2604) 0 ]", - "EXPR [ (1, _1435, _1488) (-1, _2605) 0 ]", - "EXPR [ (-1, _1499) (1, _2090) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (1, _1433, _1487) (-1, _2547) 0 ]", + "EXPR [ (1, _1435, _1488) (-1, _2548) 0 ]", + "EXPR [ (-1, _1499) (1, _2033) (1, _2547) (1, _2548) 0 ]", "EXPR [ (1, _1495, _1499) (-1, _1500) 0 ]", "BLACKBOX::RANGE [(_1500, 32)] []", - "EXPR [ (1, _1500) (-1, _1501) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1500) (-1, _1501) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1501) (-1, _1502) 0 ]", "BLACKBOX::RANGE [(_1502, 32)] []", - "EXPR [ (1, _1502) (-1, _1503) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1502) (-1, _1503) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1503) (-1, _1504) 0 ]", "BLACKBOX::RANGE [(_1504, 32)] []", - "EXPR [ (1, _1504) (-1, _1505) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1504) (-1, _1505) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1505) (-1, _1506) 0 ]", "BLACKBOX::RANGE [(_1506, 32)] []", - "EXPR [ (-1, _1507) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (-1, _1507) (1, _2547) (1, _2548) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1506))], q_c: -4864 })], outputs: [Simple(Witness(1508))]", "EXPR [ (1, _1506, _1508) (-4864, _1508) (1, _1509) -1 ]", "EXPR [ (1, _1506, _1509) (-4864, _1509) 0 ]", @@ -2162,13 +2162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1506) (-1, _1513) 0 ]", "EXPR [ (1, _1495, _1513) (-1, _1514) 0 ]", "BLACKBOX::RANGE [(_1514, 32)] []", - "EXPR [ (1, _1514) (-1, _1515) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1514) (-1, _1515) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1515) (-1, _1516) 0 ]", "BLACKBOX::RANGE [(_1516, 32)] []", - "EXPR [ (1, _1516) (-1, _1517) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1516) (-1, _1517) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1517) (-1, _1518) 0 ]", "BLACKBOX::RANGE [(_1518, 32)] []", - "EXPR [ (1, _1518) (-1, _1519) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1518) (-1, _1519) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1519) (-1, _1520) 0 ]", "BLACKBOX::RANGE [(_1520, 32)] []", "EXPR [ (1, _1495, _1506) (1, _1497, _1507) (-1, _1521) 0 ]", @@ -2182,13 +2182,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1520) (-1, _1528) 0 ]", "EXPR [ (1, _1495, _1528) (-1, _1529) 0 ]", "BLACKBOX::RANGE [(_1529, 32)] []", - "EXPR [ (1, _1529) (-1, _1530) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1529) (-1, _1530) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1530) (-1, _1531) 0 ]", "BLACKBOX::RANGE [(_1531, 32)] []", - "EXPR [ (1, _1531) (-1, _1532) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1531) (-1, _1532) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1532) (-1, _1533) 0 ]", "BLACKBOX::RANGE [(_1533, 32)] []", - "EXPR [ (1, _1533) (-1, _1534) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1533) (-1, _1534) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1534) (-1, _1535) 0 ]", "BLACKBOX::RANGE [(_1535, 32)] []", "EXPR [ (1, _1495, _1520) (1, _1497, _1521) (-1, _1536) 0 ]", @@ -2201,13 +2201,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1535) (-1, _1542) 0 ]", "EXPR [ (1, _1495, _1542) (-1, _1543) 0 ]", "BLACKBOX::RANGE [(_1543, 32)] []", - "EXPR [ (1, _1543) (-1, _1544) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1543) (-1, _1544) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1544) (-1, _1545) 0 ]", "BLACKBOX::RANGE [(_1545, 32)] []", - "EXPR [ (1, _1545) (-1, _1546) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1545) (-1, _1546) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1546) (-1, _1547) 0 ]", "BLACKBOX::RANGE [(_1547, 32)] []", - "EXPR [ (1, _1547) (-1, _1548) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1547) (-1, _1548) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1548) (-1, _1549) 0 ]", "BLACKBOX::RANGE [(_1549, 32)] []", "EXPR [ (1, _1495, _1535) (1, _1497, _1536) (-1, _1550) 0 ]", @@ -2223,21 +2223,21 @@ expression: artifact "EXPR [ (1, _1549, _1553) (1, _1554, _1555) (-1, _1558) 0 ]", "EXPR [ (-1, _1557) (-1, _1559) 1 ]", "EXPR [ (1, _57, _1495) (1, _1497, _1512) (-1, _1560) 0 ]", - "EXPR [ (1, _1495, _1549) (-1, _2624) 0 ]", - "EXPR [ (1, _1497, _1550) (-1, _2625) 0 ]", - "EXPR [ (-1, _1561) (1, _2090) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (1, _1495, _1549) (-1, _2567) 0 ]", + "EXPR [ (1, _1497, _1550) (-1, _2568) 0 ]", + "EXPR [ (-1, _1561) (1, _2033) (1, _2567) (1, _2568) 0 ]", "EXPR [ (1, _1557, _1561) (-1, _1562) 0 ]", "BLACKBOX::RANGE [(_1562, 32)] []", - "EXPR [ (1, _1562) (-1, _1563) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1562) (-1, _1563) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1563) (-1, _1564) 0 ]", "BLACKBOX::RANGE [(_1564, 32)] []", - "EXPR [ (1, _1564) (-1, _1565) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1564) (-1, _1565) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1565) (-1, _1566) 0 ]", "BLACKBOX::RANGE [(_1566, 32)] []", - "EXPR [ (1, _1566) (-1, _1567) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1566) (-1, _1567) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1567) (-1, _1568) 0 ]", "BLACKBOX::RANGE [(_1568, 32)] []", - "EXPR [ (-1, _1569) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (-1, _1569) (1, _2567) (1, _2568) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1568))], q_c: -4864 })], outputs: [Simple(Witness(1570))]", "EXPR [ (1, _1568, _1570) (-4864, _1570) (1, _1571) -1 ]", "EXPR [ (1, _1568, _1571) (-4864, _1571) 0 ]", @@ -2247,13 +2247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1568) (-1, _1575) 0 ]", "EXPR [ (1, _1557, _1575) (-1, _1576) 0 ]", "BLACKBOX::RANGE [(_1576, 32)] []", - "EXPR [ (1, _1576) (-1, _1577) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1576) (-1, _1577) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1577) (-1, _1578) 0 ]", "BLACKBOX::RANGE [(_1578, 32)] []", - "EXPR [ (1, _1578) (-1, _1579) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1578) (-1, _1579) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1579) (-1, _1580) 0 ]", "BLACKBOX::RANGE [(_1580, 32)] []", - "EXPR [ (1, _1580) (-1, _1581) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1580) (-1, _1581) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1581) (-1, _1582) 0 ]", "BLACKBOX::RANGE [(_1582, 32)] []", "EXPR [ (1, _1557, _1568) (1, _1559, _1569) (-1, _1583) 0 ]", @@ -2267,13 +2267,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1582) (-1, _1590) 0 ]", "EXPR [ (1, _1557, _1590) (-1, _1591) 0 ]", "BLACKBOX::RANGE [(_1591, 32)] []", - "EXPR [ (1, _1591) (-1, _1592) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1591) (-1, _1592) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1592) (-1, _1593) 0 ]", "BLACKBOX::RANGE [(_1593, 32)] []", - "EXPR [ (1, _1593) (-1, _1594) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1593) (-1, _1594) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1594) (-1, _1595) 0 ]", "BLACKBOX::RANGE [(_1595, 32)] []", - "EXPR [ (1, _1595) (-1, _1596) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1595) (-1, _1596) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1596) (-1, _1597) 0 ]", "BLACKBOX::RANGE [(_1597, 32)] []", "EXPR [ (1, _1557, _1582) (1, _1559, _1583) (-1, _1598) 0 ]", @@ -2286,13 +2286,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1597) (-1, _1604) 0 ]", "EXPR [ (1, _1557, _1604) (-1, _1605) 0 ]", "BLACKBOX::RANGE [(_1605, 32)] []", - "EXPR [ (1, _1605) (-1, _1606) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1605) (-1, _1606) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1606) (-1, _1607) 0 ]", "BLACKBOX::RANGE [(_1607, 32)] []", - "EXPR [ (1, _1607) (-1, _1608) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1607) (-1, _1608) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1608) (-1, _1609) 0 ]", "BLACKBOX::RANGE [(_1609, 32)] []", - "EXPR [ (1, _1609) (-1, _1610) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1609) (-1, _1610) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1610) (-1, _1611) 0 ]", "BLACKBOX::RANGE [(_1611, 32)] []", "EXPR [ (1, _1557, _1597) (1, _1559, _1598) (-1, _1612) 0 ]", @@ -2308,21 +2308,21 @@ expression: artifact "EXPR [ (1, _1611, _1615) (1, _1616, _1617) (-1, _1620) 0 ]", "EXPR [ (-1, _1619) (-1, _1621) 1 ]", "EXPR [ (1, _57, _1557) (1, _1559, _1574) (-1, _1622) 0 ]", - "EXPR [ (1, _1557, _1611) (-1, _2644) 0 ]", - "EXPR [ (1, _1559, _1612) (-1, _2645) 0 ]", - "EXPR [ (-1, _1623) (1, _2090) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (1, _1557, _1611) (-1, _2587) 0 ]", + "EXPR [ (1, _1559, _1612) (-1, _2588) 0 ]", + "EXPR [ (-1, _1623) (1, _2033) (1, _2587) (1, _2588) 0 ]", "EXPR [ (1, _1619, _1623) (-1, _1624) 0 ]", "BLACKBOX::RANGE [(_1624, 32)] []", - "EXPR [ (1, _1624) (-1, _1625) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1624) (-1, _1625) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1625) (-1, _1626) 0 ]", "BLACKBOX::RANGE [(_1626, 32)] []", - "EXPR [ (1, _1626) (-1, _1627) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1626) (-1, _1627) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1627) (-1, _1628) 0 ]", "BLACKBOX::RANGE [(_1628, 32)] []", - "EXPR [ (1, _1628) (-1, _1629) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1628) (-1, _1629) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1629) (-1, _1630) 0 ]", "BLACKBOX::RANGE [(_1630, 32)] []", - "EXPR [ (-1, _1631) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (-1, _1631) (1, _2587) (1, _2588) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1630))], q_c: -4864 })], outputs: [Simple(Witness(1632))]", "EXPR [ (1, _1630, _1632) (-4864, _1632) (1, _1633) -1 ]", "EXPR [ (1, _1630, _1633) (-4864, _1633) 0 ]", @@ -2332,13 +2332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1630) (-1, _1637) 0 ]", "EXPR [ (1, _1619, _1637) (-1, _1638) 0 ]", "BLACKBOX::RANGE [(_1638, 32)] []", - "EXPR [ (1, _1638) (-1, _1639) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1638) (-1, _1639) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1639) (-1, _1640) 0 ]", "BLACKBOX::RANGE [(_1640, 32)] []", - "EXPR [ (1, _1640) (-1, _1641) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1640) (-1, _1641) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1641) (-1, _1642) 0 ]", "BLACKBOX::RANGE [(_1642, 32)] []", - "EXPR [ (1, _1642) (-1, _1643) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1642) (-1, _1643) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1643) (-1, _1644) 0 ]", "BLACKBOX::RANGE [(_1644, 32)] []", "EXPR [ (1, _1619, _1630) (1, _1621, _1631) (-1, _1645) 0 ]", @@ -2352,13 +2352,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1644) (-1, _1652) 0 ]", "EXPR [ (1, _1619, _1652) (-1, _1653) 0 ]", "BLACKBOX::RANGE [(_1653, 32)] []", - "EXPR [ (1, _1653) (-1, _1654) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1653) (-1, _1654) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1654) (-1, _1655) 0 ]", "BLACKBOX::RANGE [(_1655, 32)] []", - "EXPR [ (1, _1655) (-1, _1656) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1655) (-1, _1656) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1656) (-1, _1657) 0 ]", "BLACKBOX::RANGE [(_1657, 32)] []", - "EXPR [ (1, _1657) (-1, _1658) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1657) (-1, _1658) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1658) (-1, _1659) 0 ]", "BLACKBOX::RANGE [(_1659, 32)] []", "EXPR [ (1, _1619, _1644) (1, _1621, _1645) (-1, _1660) 0 ]", @@ -2371,13 +2371,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1659) (-1, _1666) 0 ]", "EXPR [ (1, _1619, _1666) (-1, _1667) 0 ]", "BLACKBOX::RANGE [(_1667, 32)] []", - "EXPR [ (1, _1667) (-1, _1668) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1667) (-1, _1668) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1668) (-1, _1669) 0 ]", "BLACKBOX::RANGE [(_1669, 32)] []", - "EXPR [ (1, _1669) (-1, _1670) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1669) (-1, _1670) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1670) (-1, _1671) 0 ]", "BLACKBOX::RANGE [(_1671, 32)] []", - "EXPR [ (1, _1671) (-1, _1672) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1671) (-1, _1672) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1672) (-1, _1673) 0 ]", "BLACKBOX::RANGE [(_1673, 32)] []", "EXPR [ (1, _1619, _1659) (1, _1621, _1660) (-1, _1674) 0 ]", @@ -2393,21 +2393,21 @@ expression: artifact "EXPR [ (1, _1673, _1677) (1, _1678, _1679) (-1, _1682) 0 ]", "EXPR [ (-1, _1681) (-1, _1683) 1 ]", "EXPR [ (1, _57, _1619) (1, _1621, _1636) (-1, _1684) 0 ]", - "EXPR [ (1, _1619, _1673) (-1, _2664) 0 ]", - "EXPR [ (1, _1621, _1674) (-1, _2665) 0 ]", - "EXPR [ (-1, _1685) (1, _2090) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (1, _1619, _1673) (-1, _2607) 0 ]", + "EXPR [ (1, _1621, _1674) (-1, _2608) 0 ]", + "EXPR [ (-1, _1685) (1, _2033) (1, _2607) (1, _2608) 0 ]", "EXPR [ (1, _1681, _1685) (-1, _1686) 0 ]", "BLACKBOX::RANGE [(_1686, 32)] []", - "EXPR [ (1, _1686) (-1, _1687) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1686) (-1, _1687) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1687) (-1, _1688) 0 ]", "BLACKBOX::RANGE [(_1688, 32)] []", - "EXPR [ (1, _1688) (-1, _1689) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1688) (-1, _1689) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1689) (-1, _1690) 0 ]", "BLACKBOX::RANGE [(_1690, 32)] []", - "EXPR [ (1, _1690) (-1, _1691) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1690) (-1, _1691) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1691) (-1, _1692) 0 ]", "BLACKBOX::RANGE [(_1692, 32)] []", - "EXPR [ (-1, _1693) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (-1, _1693) (1, _2607) (1, _2608) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1692))], q_c: -4864 })], outputs: [Simple(Witness(1694))]", "EXPR [ (1, _1692, _1694) (-4864, _1694) (1, _1695) -1 ]", "EXPR [ (1, _1692, _1695) (-4864, _1695) 0 ]", @@ -2417,13 +2417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1692) (-1, _1699) 0 ]", "EXPR [ (1, _1681, _1699) (-1, _1700) 0 ]", "BLACKBOX::RANGE [(_1700, 32)] []", - "EXPR [ (1, _1700) (-1, _1701) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1700) (-1, _1701) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1701) (-1, _1702) 0 ]", "BLACKBOX::RANGE [(_1702, 32)] []", - "EXPR [ (1, _1702) (-1, _1703) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1702) (-1, _1703) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1703) (-1, _1704) 0 ]", "BLACKBOX::RANGE [(_1704, 32)] []", - "EXPR [ (1, _1704) (-1, _1705) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1704) (-1, _1705) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1705) (-1, _1706) 0 ]", "BLACKBOX::RANGE [(_1706, 32)] []", "EXPR [ (1, _1681, _1692) (1, _1683, _1693) (-1, _1707) 0 ]", @@ -2437,13 +2437,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1706) (-1, _1714) 0 ]", "EXPR [ (1, _1681, _1714) (-1, _1715) 0 ]", "BLACKBOX::RANGE [(_1715, 32)] []", - "EXPR [ (1, _1715) (-1, _1716) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1715) (-1, _1716) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1716) (-1, _1717) 0 ]", "BLACKBOX::RANGE [(_1717, 32)] []", - "EXPR [ (1, _1717) (-1, _1718) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1717) (-1, _1718) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1718) (-1, _1719) 0 ]", "BLACKBOX::RANGE [(_1719, 32)] []", - "EXPR [ (1, _1719) (-1, _1720) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1719) (-1, _1720) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1720) (-1, _1721) 0 ]", "BLACKBOX::RANGE [(_1721, 32)] []", "EXPR [ (1, _1681, _1706) (1, _1683, _1707) (-1, _1722) 0 ]", @@ -2456,13 +2456,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1721) (-1, _1728) 0 ]", "EXPR [ (1, _1681, _1728) (-1, _1729) 0 ]", "BLACKBOX::RANGE [(_1729, 32)] []", - "EXPR [ (1, _1729) (-1, _1730) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1729) (-1, _1730) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1730) (-1, _1731) 0 ]", "BLACKBOX::RANGE [(_1731, 32)] []", - "EXPR [ (1, _1731) (-1, _1732) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1731) (-1, _1732) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1732) (-1, _1733) 0 ]", "BLACKBOX::RANGE [(_1733, 32)] []", - "EXPR [ (1, _1733) (-1, _1734) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1733) (-1, _1734) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1734) (-1, _1735) 0 ]", "BLACKBOX::RANGE [(_1735, 32)] []", "EXPR [ (1, _1681, _1721) (1, _1683, _1722) (-1, _1736) 0 ]", @@ -2478,21 +2478,21 @@ expression: artifact "EXPR [ (1, _1735, _1739) (1, _1740, _1741) (-1, _1744) 0 ]", "EXPR [ (-1, _1743) (-1, _1745) 1 ]", "EXPR [ (1, _57, _1681) (1, _1683, _1698) (-1, _1746) 0 ]", - "EXPR [ (1, _1681, _1735) (-1, _2684) 0 ]", - "EXPR [ (1, _1683, _1736) (-1, _2685) 0 ]", - "EXPR [ (-1, _1747) (1, _2090) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (1, _1681, _1735) (-1, _2627) 0 ]", + "EXPR [ (1, _1683, _1736) (-1, _2628) 0 ]", + "EXPR [ (-1, _1747) (1, _2033) (1, _2627) (1, _2628) 0 ]", "EXPR [ (1, _1743, _1747) (-1, _1748) 0 ]", "BLACKBOX::RANGE [(_1748, 32)] []", - "EXPR [ (1, _1748) (-1, _1749) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1748) (-1, _1749) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1749) (-1, _1750) 0 ]", "BLACKBOX::RANGE [(_1750, 32)] []", - "EXPR [ (1, _1750) (-1, _1751) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1750) (-1, _1751) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1751) (-1, _1752) 0 ]", "BLACKBOX::RANGE [(_1752, 32)] []", - "EXPR [ (1, _1752) (-1, _1753) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1752) (-1, _1753) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1753) (-1, _1754) 0 ]", "BLACKBOX::RANGE [(_1754, 32)] []", - "EXPR [ (-1, _1755) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (-1, _1755) (1, _2627) (1, _2628) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1754))], q_c: -4864 })], outputs: [Simple(Witness(1756))]", "EXPR [ (1, _1754, _1756) (-4864, _1756) (1, _1757) -1 ]", "EXPR [ (1, _1754, _1757) (-4864, _1757) 0 ]", @@ -2502,13 +2502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1754) (-1, _1761) 0 ]", "EXPR [ (1, _1743, _1761) (-1, _1762) 0 ]", "BLACKBOX::RANGE [(_1762, 32)] []", - "EXPR [ (1, _1762) (-1, _1763) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1762) (-1, _1763) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1763) (-1, _1764) 0 ]", "BLACKBOX::RANGE [(_1764, 32)] []", - "EXPR [ (1, _1764) (-1, _1765) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1764) (-1, _1765) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1765) (-1, _1766) 0 ]", "BLACKBOX::RANGE [(_1766, 32)] []", - "EXPR [ (1, _1766) (-1, _1767) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1766) (-1, _1767) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1767) (-1, _1768) 0 ]", "BLACKBOX::RANGE [(_1768, 32)] []", "EXPR [ (1, _1743, _1754) (1, _1745, _1755) (-1, _1769) 0 ]", @@ -2522,13 +2522,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1768) (-1, _1776) 0 ]", "EXPR [ (1, _1743, _1776) (-1, _1777) 0 ]", "BLACKBOX::RANGE [(_1777, 32)] []", - "EXPR [ (1, _1777) (-1, _1778) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1777) (-1, _1778) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1778) (-1, _1779) 0 ]", "BLACKBOX::RANGE [(_1779, 32)] []", - "EXPR [ (1, _1779) (-1, _1780) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1779) (-1, _1780) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1780) (-1, _1781) 0 ]", "BLACKBOX::RANGE [(_1781, 32)] []", - "EXPR [ (1, _1781) (-1, _1782) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1781) (-1, _1782) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1782) (-1, _1783) 0 ]", "BLACKBOX::RANGE [(_1783, 32)] []", "EXPR [ (1, _1743, _1768) (1, _1745, _1769) (-1, _1784) 0 ]", @@ -2541,13 +2541,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1783) (-1, _1790) 0 ]", "EXPR [ (1, _1743, _1790) (-1, _1791) 0 ]", "BLACKBOX::RANGE [(_1791, 32)] []", - "EXPR [ (1, _1791) (-1, _1792) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1791) (-1, _1792) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1792) (-1, _1793) 0 ]", "BLACKBOX::RANGE [(_1793, 32)] []", - "EXPR [ (1, _1793) (-1, _1794) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1793) (-1, _1794) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1794) (-1, _1795) 0 ]", "BLACKBOX::RANGE [(_1795, 32)] []", - "EXPR [ (1, _1795) (-1, _1796) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1795) (-1, _1796) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1796) (-1, _1797) 0 ]", "BLACKBOX::RANGE [(_1797, 32)] []", "EXPR [ (1, _1743, _1783) (1, _1745, _1784) (-1, _1798) 0 ]", @@ -2563,21 +2563,21 @@ expression: artifact "EXPR [ (1, _1797, _1801) (1, _1802, _1803) (-1, _1806) 0 ]", "EXPR [ (-1, _1805) (-1, _1807) 1 ]", "EXPR [ (1, _57, _1743) (1, _1745, _1760) (-1, _1808) 0 ]", - "EXPR [ (1, _1743, _1797) (-1, _2704) 0 ]", - "EXPR [ (1, _1745, _1798) (-1, _2705) 0 ]", - "EXPR [ (-1, _1809) (1, _2090) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (1, _1743, _1797) (-1, _2647) 0 ]", + "EXPR [ (1, _1745, _1798) (-1, _2648) 0 ]", + "EXPR [ (-1, _1809) (1, _2033) (1, _2647) (1, _2648) 0 ]", "EXPR [ (1, _1805, _1809) (-1, _1810) 0 ]", "BLACKBOX::RANGE [(_1810, 32)] []", - "EXPR [ (1, _1810) (-1, _1811) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1810) (-1, _1811) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1811) (-1, _1812) 0 ]", "BLACKBOX::RANGE [(_1812, 32)] []", - "EXPR [ (1, _1812) (-1, _1813) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1812) (-1, _1813) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1813) (-1, _1814) 0 ]", "BLACKBOX::RANGE [(_1814, 32)] []", - "EXPR [ (1, _1814) (-1, _1815) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1814) (-1, _1815) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1815) (-1, _1816) 0 ]", "BLACKBOX::RANGE [(_1816, 32)] []", - "EXPR [ (-1, _1817) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (-1, _1817) (1, _2647) (1, _2648) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1816))], q_c: -4864 })], outputs: [Simple(Witness(1818))]", "EXPR [ (1, _1816, _1818) (-4864, _1818) (1, _1819) -1 ]", "EXPR [ (1, _1816, _1819) (-4864, _1819) 0 ]", @@ -2587,13 +2587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1816) (-1, _1823) 0 ]", "EXPR [ (1, _1805, _1823) (-1, _1824) 0 ]", "BLACKBOX::RANGE [(_1824, 32)] []", - "EXPR [ (1, _1824) (-1, _1825) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1824) (-1, _1825) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1825) (-1, _1826) 0 ]", "BLACKBOX::RANGE [(_1826, 32)] []", - "EXPR [ (1, _1826) (-1, _1827) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1826) (-1, _1827) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1827) (-1, _1828) 0 ]", "BLACKBOX::RANGE [(_1828, 32)] []", - "EXPR [ (1, _1828) (-1, _1829) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1828) (-1, _1829) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1829) (-1, _1830) 0 ]", "BLACKBOX::RANGE [(_1830, 32)] []", "EXPR [ (1, _1805, _1816) (1, _1807, _1817) (-1, _1831) 0 ]", @@ -2607,13 +2607,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1830) (-1, _1838) 0 ]", "EXPR [ (1, _1805, _1838) (-1, _1839) 0 ]", "BLACKBOX::RANGE [(_1839, 32)] []", - "EXPR [ (1, _1839) (-1, _1840) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1839) (-1, _1840) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1840) (-1, _1841) 0 ]", "BLACKBOX::RANGE [(_1841, 32)] []", - "EXPR [ (1, _1841) (-1, _1842) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1841) (-1, _1842) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1842) (-1, _1843) 0 ]", "BLACKBOX::RANGE [(_1843, 32)] []", - "EXPR [ (1, _1843) (-1, _1844) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1843) (-1, _1844) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1844) (-1, _1845) 0 ]", "BLACKBOX::RANGE [(_1845, 32)] []", "EXPR [ (1, _1805, _1830) (1, _1807, _1831) (-1, _1846) 0 ]", @@ -2626,9 +2626,9 @@ expression: artifact "EXPR [ (32, _1805) (-1, _1852) 0 ]", "BLACKBOX::RANGE [(_1852, 5)] []", "EXPR [ (1, _4, _43) (-1, _1853) 0 ]", - "EXPR [ (-1, _1854) (1, _2122) (1, _2151) 0 ]", - "EXPR [ (-1, _1855) (1, _2152) (1, _2179) 0 ]", - "EXPR [ (-1, _1856) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (-1, _1854) (1, _2065) (1, _2094) 0 ]", + "EXPR [ (-1, _1855) (1, _2095) (1, _2122) 0 ]", + "EXPR [ (-1, _1856) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _256) (1, _257, _258) (-1, _1857) 0 ]", "EXPR [ (1, _317, _318) (1, _319, _320) (-1, _1858) 0 ]", "EXPR [ (1, _379, _380) (1, _381, _382) (-1, _1859) 0 ]", @@ -2659,301 +2659,199 @@ expression: artifact "MEM (id: 4, read at: EXPR [ (1, _1882) 0 ], value: EXPR [ (1, _1883) 0 ]) ", "EXPR [ (1, _77, _1805) (-1, _1805, _1883) (1, _1883) (-1, _1884) 0 ]", "MEM (id: 4, write EXPR [ (1, _1884) 0 ] at: EXPR [ (1, _1882) 0 ]) ", - "EXPR [ (1, _1805, _1845) (-1, _2768) 0 ]", - "EXPR [ (1, _1805, _1853) (-1, _1885) (1, _2768) 0 ]", - "BLACKBOX::RANGE [(_1885, 32)] []", - "EXPR [ (1, _1805, _1854) (1, _1805, _1885) (-1, _1886) 0 ]", - "BLACKBOX::RANGE [(_1886, 32)] []", - "EXPR [ (1, _1805, _1855) (1, _1805, _1886) (-1, _1887) 0 ]", - "BLACKBOX::RANGE [(_1887, 32)] []", - "EXPR [ (1, _1805, _1856) (1, _1805, _1887) (-1, _1888) 0 ]", - "BLACKBOX::RANGE [(_1888, 32)] []", - "EXPR [ (1, _1807, _1846) (-1, _1889) (1, _2768) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1888))], q_c: -4864 })], outputs: [Simple(Witness(1890))]", - "EXPR [ (1, _1888, _1890) (-4864, _1890) (1, _1891) -1 ]", - "EXPR [ (1, _1888, _1891) (-4864, _1891) 0 ]", - "EXPR [ (1, _1805, _1891) (-1, _1892) 0 ]", - "EXPR [ (-1, _1805, _1891) (-1, _1893) 1 ]", - "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1894) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1895))]", - "EXPR [ (-1, _0, _1895) (30, _1895) (1, _1896) -1 ]", - "EXPR [ (-1, _0, _1896) (30, _1896) 0 ]", - "EXPR [ (1, _1888, _1892) (1, _1893, _1894) (-1, _1897) 0 ]", - "EXPR [ (-1, _1896) (-1, _1898) 1 ]", - "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1899) 0 ]", - "EXPR [ (1, _1805, _1888) (-1, _2783) 0 ]", - "EXPR [ (1, _1807, _1889) (-1, _2784) 0 ]", - "EXPR [ (1, _1853) (-1, _1900) (1, _2783) (1, _2784) 0 ]", - "EXPR [ (1, _1896, _1900) (-1, _1901) 0 ]", - "BLACKBOX::RANGE [(_1901, 32)] []", - "EXPR [ (1, _1854, _1896) (-1, _2785) 0 ]", - "EXPR [ (1, _1896, _1901) (-1, _1902) (1, _2785) 0 ]", + "EXPR [ (1, _1805, _1845) (1, _1807, _1846) (-1, _1885) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1886))]", + "EXPR [ (-1, _0, _1886) (30, _1886) (1, _1887) -1 ]", + "EXPR [ (-1, _0, _1887) (30, _1887) 0 ]", + "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1888) 0 ]", + "EXPR [ (-1, _1887) (-1, _1889) 1 ]", + "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1890) 0 ]", + "EXPR [ (1, _1807, _1885) (1, _1853) (-1, _1891) 0 ]", + "EXPR [ (1, _1887, _1891) (-1, _1892) 0 ]", + "BLACKBOX::RANGE [(_1892, 32)] []", + "EXPR [ (1, _1854, _1887) (-1, _2717) 0 ]", + "EXPR [ (1, _1887, _1892) (-1, _1893) (1, _2717) 0 ]", + "BLACKBOX::RANGE [(_1893, 32)] []", + "EXPR [ (1, _1855, _1887) (-1, _2719) 0 ]", + "EXPR [ (1, _1887, _1893) (-1, _1894) (1, _2719) 0 ]", + "BLACKBOX::RANGE [(_1894, 32)] []", + "EXPR [ (1, _1856, _1887) (-1, _2721) 0 ]", + "EXPR [ (1, _1887, _1894) (-1, _1895) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1895, 32)] []", + "EXPR [ (1, _1807, _1885) (-1, _1896) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1895))], q_c: -4864 })], outputs: [Simple(Witness(1897))]", + "EXPR [ (1, _1895, _1897) (-4864, _1897) (1, _1898) -1 ]", + "EXPR [ (1, _1895, _1898) (-4864, _1898) 0 ]", + "EXPR [ (1, _1887, _1898) (-1, _1899) 0 ]", + "EXPR [ (-1, _1887, _1898) (-1, _1900) 1 ]", + "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1901) 0 ]", + "EXPR [ (1, _1887, _1895) (-1, _2726) 0 ]", + "EXPR [ (1, _1853, _1887) (-1, _1902) (1, _2726) 0 ]", "BLACKBOX::RANGE [(_1902, 32)] []", - "EXPR [ (1, _1855, _1896) (-1, _2787) 0 ]", - "EXPR [ (1, _1896, _1902) (-1, _1903) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1902) (-1, _1903) (1, _2717) 0 ]", "BLACKBOX::RANGE [(_1903, 32)] []", - "EXPR [ (1, _1856, _1896) (-1, _2789) 0 ]", - "EXPR [ (1, _1896, _1903) (-1, _1904) (1, _2789) 0 ]", + "EXPR [ (1, _1887, _1903) (-1, _1904) (1, _2719) 0 ]", "BLACKBOX::RANGE [(_1904, 32)] []", - "EXPR [ (-1, _1905) (1, _2783) (1, _2784) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1904))], q_c: -4864 })], outputs: [Simple(Witness(1906))]", - "EXPR [ (1, _1904, _1906) (-4864, _1906) (1, _1907) -1 ]", - "EXPR [ (1, _1904, _1907) (-4864, _1907) 0 ]", - "EXPR [ (1, _1896, _1907) (-1, _1908) 0 ]", - "EXPR [ (-1, _1896, _1907) (-1, _1909) 1 ]", - "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1910) 0 ]", - "EXPR [ (1, _1853, _1896) (-1, _2793) 0 ]", - "EXPR [ (1, _1896, _1904) (-1, _2794) 0 ]", - "EXPR [ (-1, _1911) (1, _2793) (1, _2794) 0 ]", - "BLACKBOX::RANGE [(_1911, 32)] []", - "EXPR [ (1, _1896, _1911) (-1, _1912) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1912, 32)] []", - "EXPR [ (1, _1896, _1912) (-1, _1913) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1913, 32)] []", - "EXPR [ (1, _1896, _1913) (-1, _1914) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1914, 32)] []", - "EXPR [ (1, _1898, _1905) (-1, _1915) (1, _2794) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1914))], q_c: -4864 })], outputs: [Simple(Witness(1916))]", - "EXPR [ (1, _1914, _1916) (-4864, _1916) (1, _1917) -1 ]", - "EXPR [ (1, _1914, _1917) (-4864, _1917) 0 ]", - "EXPR [ (1, _1896, _1917) (-1, _1918) 0 ]", - "EXPR [ (-1, _1896, _1917) (-1, _1919) 1 ]", - "EXPR [ (1, _1897, _1909) (1, _1904, _1908) (-1, _1920) 0 ]", - "EXPR [ (32, _1896) (-1, _1921) 0 ]", - "BLACKBOX::RANGE [(_1921, 5)] []", - "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1922) 0 ]", - "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1897, _57])", - "EXPR [ (32, _1896) (-1, _1923) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1923) 0 ], value: EXPR [ (1, _1924) 0 ]) ", - "EXPR [ (1, _67, _1896) (-1, _1896, _1924) (1, _1924) (-1, _1925) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1925) 0 ] at: EXPR [ (1, _1923) 0 ]) ", - "EXPR [ (1, _1896, _1914) (-1, _2805) 0 ]", - "EXPR [ (-1, _1926) (1, _2793) (1, _2805) 0 ]", - "BLACKBOX::RANGE [(_1926, 32)] []", - "EXPR [ (1, _1896, _1926) (-1, _1927) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1927, 32)] []", - "EXPR [ (1, _1896, _1927) (-1, _1928) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1904) (-1, _1905) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1905, 32)] []", + "EXPR [ (1, _1889, _1896) (-1, _1906) (1, _2726) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1905))], q_c: -4864 })], outputs: [Simple(Witness(1907))]", + "EXPR [ (1, _1905, _1907) (-4864, _1907) (1, _1908) -1 ]", + "EXPR [ (1, _1905, _1908) (-4864, _1908) 0 ]", + "EXPR [ (1, _1887, _1908) (-1, _1909) 0 ]", + "EXPR [ (-1, _1887, _1908) (-1, _1910) 1 ]", + "EXPR [ (1, _1888, _1900) (1, _1895, _1899) (-1, _1911) 0 ]", + "EXPR [ (32, _1887) (-1, _1912) 0 ]", + "BLACKBOX::RANGE [(_1912, 5)] []", + "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1913) 0 ]", + "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1888, _57])", + "EXPR [ (32, _1887) (-1, _1914) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1914) 0 ], value: EXPR [ (1, _1915) 0 ]) ", + "EXPR [ (1, _67, _1887) (-1, _1887, _1915) (1, _1915) (-1, _1916) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1916) 0 ] at: EXPR [ (1, _1914) 0 ]) ", + "EXPR [ (1, _1887, _1905) (1, _1889, _1906) (-1, _1917) 0 ]", + "EXPR [ (33, _1887) (-1, _1918) 0 ]", + "BLACKBOX::RANGE [(_1918, 5)] []", + "EXPR [ (33, _1887) (-1, _1919) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1919) 0 ], value: EXPR [ (1, _1920) 0 ]) ", + "EXPR [ (1, _77, _1887) (-1, _1887, _1920) (1, _1920) (-1, _1921) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1921) 0 ] at: EXPR [ (1, _1919) 0 ]) ", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1922))]", + "EXPR [ (-1, _0, _1922) (31, _1922) (1, _1923) -1 ]", + "EXPR [ (-1, _0, _1923) (31, _1923) 0 ]", + "EXPR [ (1, _1905, _1909) (1, _1910, _1911) (-1, _1924) 0 ]", + "EXPR [ (-1, _1923) (-1, _1925) 1 ]", + "EXPR [ (1, _57, _1887) (1, _1889, _1901) (-1, _1926) 0 ]", + "EXPR [ (1, _1889, _1917) (1, _1853) (-1, _1927) 0 ]", + "EXPR [ (1, _1923, _1927) (-1, _1928) 0 ]", "BLACKBOX::RANGE [(_1928, 32)] []", - "EXPR [ (1, _1896, _1928) (-1, _1929) (1, _2789) 0 ]", + "EXPR [ (1, _1854, _1923) (1, _1923, _1928) (-1, _1929) 0 ]", "BLACKBOX::RANGE [(_1929, 32)] []", - "EXPR [ (1, _1898, _1915) (-1, _1930) (1, _2805) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1929))], q_c: -4864 })], outputs: [Simple(Witness(1931))]", - "EXPR [ (1, _1929, _1931) (-4864, _1931) (1, _1932) -1 ]", - "EXPR [ (1, _1929, _1932) (-4864, _1932) 0 ]", - "EXPR [ (1, _1896, _1932) (-1, _1933) 0 ]", - "EXPR [ (-1, _1896, _1932) (-1, _1934) 1 ]", - "EXPR [ (1, _1914, _1918) (1, _1919, _1920) (-1, _1935) 0 ]", - "EXPR [ (33, _1896) (-1, _1936) 0 ]", - "BLACKBOX::RANGE [(_1936, 5)] []", - "EXPR [ (33, _1896) (-1, _1937) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1937) 0 ], value: EXPR [ (1, _1938) 0 ]) ", - "EXPR [ (1, _77, _1896) (-1, _1896, _1938) (1, _1938) (-1, _1939) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1939) 0 ] at: EXPR [ (1, _1937) 0 ]) ", - "EXPR [ (1, _1896, _1929) (-1, _2814) 0 ]", - "EXPR [ (-1, _1940) (1, _2793) (1, _2814) 0 ]", - "BLACKBOX::RANGE [(_1940, 32)] []", - "EXPR [ (1, _1896, _1940) (-1, _1941) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1941, 32)] []", - "EXPR [ (1, _1896, _1941) (-1, _1942) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1942, 32)] []", - "EXPR [ (1, _1896, _1942) (-1, _1943) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1943, 32)] []", - "EXPR [ (1, _1898, _1930) (-1, _1944) (1, _2814) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1943))], q_c: -4864 })], outputs: [Simple(Witness(1945))]", - "EXPR [ (1, _1943, _1945) (-4864, _1945) (1, _1946) -1 ]", - "EXPR [ (1, _1943, _1946) (-4864, _1946) 0 ]", - "EXPR [ (1, _1896, _1946) (-1, _1947) 0 ]", - "EXPR [ (-1, _1896, _1946) (-1, _1948) 1 ]", - "EXPR [ (1, _1929, _1933) (1, _1934, _1935) (-1, _1949) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1950))]", - "EXPR [ (-1, _0, _1950) (31, _1950) (1, _1951) -1 ]", - "EXPR [ (-1, _0, _1951) (31, _1951) 0 ]", - "EXPR [ (1, _1943, _1947) (1, _1948, _1949) (-1, _1952) 0 ]", - "EXPR [ (-1, _1951) (-1, _1953) 1 ]", - "EXPR [ (1, _57, _1896) (1, _1898, _1910) (-1, _1954) 0 ]", - "EXPR [ (1, _1896, _1943) (-1, _2825) 0 ]", - "EXPR [ (1, _1898, _1944) (-1, _2826) 0 ]", - "EXPR [ (1, _1853) (-1, _1955) (1, _2825) (1, _2826) 0 ]", - "EXPR [ (1, _1951, _1955) (-1, _1956) 0 ]", - "BLACKBOX::RANGE [(_1956, 32)] []", - "EXPR [ (1, _1854, _1951) (-1, _2827) 0 ]", - "EXPR [ (1, _1951, _1956) (-1, _1957) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1957, 32)] []", - "EXPR [ (1, _1855, _1951) (-1, _2829) 0 ]", - "EXPR [ (1, _1951, _1957) (-1, _1958) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1958, 32)] []", - "EXPR [ (1, _1856, _1951) (-1, _2831) 0 ]", - "EXPR [ (1, _1951, _1958) (-1, _1959) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1959, 32)] []", - "EXPR [ (-1, _1960) (1, _2825) (1, _2826) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1959))], q_c: -4864 })], outputs: [Simple(Witness(1961))]", - "EXPR [ (1, _1959, _1961) (-4864, _1961) (1, _1962) -1 ]", - "EXPR [ (1, _1959, _1962) (-4864, _1962) 0 ]", - "EXPR [ (1, _1951, _1962) (-1, _1963) 0 ]", - "EXPR [ (-1, _1951, _1962) (-1, _1964) 1 ]", - "EXPR [ (32, _1951) (-1, _1965) 0 ]", - "BLACKBOX::RANGE [(_1965, 5)] []", - "EXPR [ (1, _1896, _1897) (1, _1898, _1899) (-1, _1966) 0 ]", - "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1966, _1952])", - "EXPR [ (32, _1951) (-1, _1967) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1967) 0 ], value: EXPR [ (1, _1968) 0 ]) ", - "EXPR [ (1, _57, _1951) (-1, _1951, _1968) (1, _1968) (-1, _1969) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1969) 0 ] at: EXPR [ (1, _1967) 0 ]) ", - "EXPR [ (1, _1853, _1951) (-1, _2837) 0 ]", - "EXPR [ (1, _1951, _1959) (-1, _2838) 0 ]", - "EXPR [ (-1, _1970) (1, _2837) (1, _2838) 0 ]", - "BLACKBOX::RANGE [(_1970, 32)] []", - "EXPR [ (1, _1951, _1970) (-1, _1971) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1971, 32)] []", - "EXPR [ (1, _1951, _1971) (-1, _1972) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1972, 32)] []", - "EXPR [ (1, _1951, _1972) (-1, _1973) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1973, 32)] []", - "EXPR [ (1, _1953, _1960) (-1, _1974) (1, _2838) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1973))], q_c: -4864 })], outputs: [Simple(Witness(1975))]", - "EXPR [ (1, _1973, _1975) (-4864, _1975) (1, _1976) -1 ]", - "EXPR [ (1, _1973, _1976) (-4864, _1976) 0 ]", - "EXPR [ (1, _1951, _1976) (-1, _1977) 0 ]", - "EXPR [ (-1, _1951, _1976) (-1, _1978) 1 ]", - "EXPR [ (1, _1952, _1964) (1, _1959, _1963) (-1, _1979) 0 ]", - "EXPR [ (33, _1951) (-1, _1980) 0 ]", - "BLACKBOX::RANGE [(_1980, 5)] []", - "EXPR [ (33, _1951) (-1, _1981) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1981) 0 ], value: EXPR [ (1, _1982) 0 ]) ", - "EXPR [ (1, _67, _1951) (-1, _1951, _1982) (1, _1982) (-1, _1983) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1983) 0 ] at: EXPR [ (1, _1981) 0 ]) ", - "EXPR [ (1, _1951, _1973) (-1, _2847) 0 ]", - "EXPR [ (-1, _1984) (1, _2837) (1, _2847) 0 ]", - "BLACKBOX::RANGE [(_1984, 32)] []", - "EXPR [ (1, _1951, _1984) (-1, _1985) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1985, 32)] []", - "EXPR [ (1, _1951, _1985) (-1, _1986) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1986, 32)] []", - "EXPR [ (1, _1951, _1986) (-1, _1987) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1987, 32)] []", - "EXPR [ (1, _1953, _1974) (-1, _1988) (1, _2847) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1987))], q_c: -4864 })], outputs: [Simple(Witness(1989))]", - "EXPR [ (1, _1987, _1989) (-4864, _1989) (1, _1990) -1 ]", - "EXPR [ (1, _1987, _1990) (-4864, _1990) 0 ]", - "EXPR [ (1, _1951, _1990) (-1, _1991) 0 ]", - "EXPR [ (-1, _1951, _1990) (-1, _1992) 1 ]", - "EXPR [ (1, _1973, _1977) (1, _1978, _1979) (-1, _1993) 0 ]", - "EXPR [ (34, _1951) (-1, _1994) 0 ]", - "BLACKBOX::RANGE [(_1994, 5)] []", - "EXPR [ (34, _1951) (-1, _1995) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1995) 0 ], value: EXPR [ (1, _1996) 0 ]) ", - "EXPR [ (1, _77, _1951) (-1, _1951, _1996) (1, _1996) (-1, _1997) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1997) 0 ] at: EXPR [ (1, _1995) 0 ]) ", - "EXPR [ (1, _1951, _1987) (-1, _2856) 0 ]", - "EXPR [ (-1, _1998) (1, _2837) (1, _2856) 0 ]", - "BLACKBOX::RANGE [(_1998, 32)] []", - "EXPR [ (1, _1951, _1998) (-1, _1999) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1999, 32)] []", - "EXPR [ (1, _1951, _1999) (-1, _2000) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_2000, 32)] []", - "EXPR [ (1, _1951, _2000) (-1, _2001) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_2001, 32)] []", - "EXPR [ (1, _1953, _1988) (-1, _2002) (1, _2856) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2001))], q_c: -4864 })], outputs: [Simple(Witness(2003))]", - "EXPR [ (1, _2001, _2003) (-4864, _2003) (1, _2004) -1 ]", - "EXPR [ (1, _2001, _2004) (-4864, _2004) 0 ]", - "EXPR [ (1, _1951, _2004) (-1, _2005) 0 ]", - "EXPR [ (-1, _1951, _2004) (-1, _2006) 1 ]", - "EXPR [ (1, _1987, _1991) (1, _1992, _1993) (-1, _2007) 0 ]", - "EXPR [ (1, _1951, _1952) (1, _1953, _1954) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1951), Witness(2001)), (1, Witness(1953), Witness(2002))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(2008))]", - "EXPR [ (1, _1951, _2001) (1, _1953, _2002) (-1, _2009) -13 ]", - "EXPR [ (1, _2008, _2009) -1 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(2010))]", - "EXPR [ (1, _0, _2010) (1, _2011) -1 ]", - "EXPR [ (1, _0, _2011) 0 ]", + "EXPR [ (1, _1855, _1923) (1, _1923, _1929) (-1, _1930) 0 ]", + "BLACKBOX::RANGE [(_1930, 32)] []", + "EXPR [ (1, _1856, _1923) (1, _1923, _1930) (-1, _1931) 0 ]", + "BLACKBOX::RANGE [(_1931, 32)] []", + "EXPR [ (1, _1889, _1917) (-1, _1932) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1931))], q_c: -4864 })], outputs: [Simple(Witness(1933))]", + "EXPR [ (1, _1931, _1933) (-4864, _1933) (1, _1934) -1 ]", + "EXPR [ (1, _1931, _1934) (-4864, _1934) 0 ]", + "EXPR [ (1, _1923, _1934) (-1, _1935) 0 ]", + "EXPR [ (-1, _1923, _1934) (-1, _1936) 1 ]", + "EXPR [ (32, _1923) (-1, _1937) 0 ]", + "BLACKBOX::RANGE [(_1937, 5)] []", + "EXPR [ (1, _1887, _1888) (1, _1889, _1890) (-1, _1938) 0 ]", + "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1938, _1924])", + "EXPR [ (32, _1923) (-1, _1939) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1939) 0 ], value: EXPR [ (1, _1940) 0 ]) ", + "EXPR [ (1, _57, _1923) (-1, _1923, _1940) (1, _1940) (-1, _1941) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1941) 0 ] at: EXPR [ (1, _1939) 0 ]) ", + "EXPR [ (1, _1923, _1931) (1, _1925, _1932) (-1, _1942) 0 ]", + "EXPR [ (33, _1923) (-1, _1943) 0 ]", + "BLACKBOX::RANGE [(_1943, 5)] []", + "EXPR [ (33, _1923) (-1, _1944) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1944) 0 ], value: EXPR [ (1, _1945) 0 ]) ", + "EXPR [ (1, _67, _1923) (-1, _1923, _1945) (1, _1945) (-1, _1946) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1946) 0 ] at: EXPR [ (1, _1944) 0 ]) ", + "EXPR [ (34, _1923) (-1, _1947) 0 ]", + "BLACKBOX::RANGE [(_1947, 5)] []", + "EXPR [ (34, _1923) (-1, _1948) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1948) 0 ], value: EXPR [ (1, _1949) 0 ]) ", + "EXPR [ (1, _77, _1923) (-1, _1923, _1949) (1, _1949) (-1, _1950) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1950) 0 ] at: EXPR [ (1, _1948) 0 ]) ", + "EXPR [ (1, _1923, _1924) (1, _1925, _1926) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1925), Witness(1942))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(1951))]", + "EXPR [ (1, _1925, _1942) (-1, _1952) -13 ]", + "EXPR [ (1, _1951, _1952) -1 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1953))]", + "EXPR [ (1, _0, _1953) (1, _1954) -1 ]", + "EXPR [ (1, _0, _1954) 0 ]", "EXPR [ (1, _0) 0 ]", - "EXPR [ (-1, _2011) 1 ]", - "EXPR [ (-1, _77, _2011) (1, _77) (3, _2011) (-1, _2012) 0 ]", - "EXPR [ (1, _2011, _2012) -3 ]", - "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_2013, _2014, _2015, _2016, _2017, _2018, _2019, _2020, _2021, _2022, _2023, _2024, _2025, _2026, _2027, _2028, _2029, _2030, _2031, _2032, _2033, _2034, _2035, _2036, _2037, _2038, _2039, _2040, _2041, _2042, _2043, _2044]", - "EXPR [ (1, _2011, _2013) (-1, _10) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2011), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2045)), Simple(Witness(2046))]", - "BLACKBOX::RANGE [(_2045, 1)] []", - "BLACKBOX::RANGE [(_2046, 32)] []", - "EXPR [ (1, _67, _2011) (-4294967296, _2045) (-1, _2046) 4294967293 ]", - "EXPR [ (-1, _2045) (-1, _2047) 1 ]", - "EXPR [ (1, _67, _2011) (-1, _2048) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2047), Witness(2048))], linear_combinations: [(1, Witness(57)), (-3, Witness(2045))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2049)), Simple(Witness(2050))]", - "BLACKBOX::RANGE [(_2049, 1)] []", - "BLACKBOX::RANGE [(_2050, 32)] []", - "EXPR [ (-1, _2047, _2048) (1, _57) (-3, _2045) (-4294967296, _2049) (-1, _2050) 4294967296 ]", - "EXPR [ (1, _2047, _2048) (3, _2045) (-1, _2051) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2045), Witness(2048)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-3, Witness(2047)), (1, Witness(2051))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2052)), Simple(Witness(2053))]", - "BLACKBOX::RANGE [(_2052, 1)] []", - "BLACKBOX::RANGE [(_2053, 32)] []", - "EXPR [ (1, _57, _2049) (-1, _2869) 0 ]", - "EXPR [ (-1, _2049, _2051) (-1, _2871) 0 ]", - "EXPR [ (-1, _2045, _2048) (-3, _2047) (1, _2051) (-4294967296, _2052) (-1, _2053) (1, _2869) (1, _2871) 4294967296 ]", - "EXPR [ (-1, _2052) (-1, _2054) 1 ]", - "EXPR [ (1, _2051) (-1, _2055) (1, _2869) (1, _2871) 0 ]", - "EXPR [ (1, _2045, _2048) (3, _2047) (-1, _2056) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2005), Witness(2001)), (1, Witness(2006), Witness(2007)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2057)), Simple(Witness(2058))]", - "BLACKBOX::RANGE [(_2057, 1)] []", - "BLACKBOX::RANGE [(_2058, 32)] []", - "EXPR [ (1, _2001, _2005) (-1, _2874) 0 ]", - "EXPR [ (1, _2006, _2007) (-1, _2875) 0 ]", - "EXPR [ (-1, _57) (-4294967296, _2057) (-1, _2058) (1, _2869) (1, _2871) (1, _2874) (1, _2875) 4294967296 ]", - "EXPR [ (-1, _2057) (-1, _2059) 1 ]", - "EXPR [ (-1, _2060) (1, _2874) (1, _2875) 0 ]", - "EXPR [ (1, _57) (-1, _2061) (-1, _2869) (-1, _2871) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2056)), (-1, Witness(2054), Witness(2055)), (1, Witness(2057), Witness(2060)), (1, Witness(2059), Witness(2061))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2062)), Simple(Witness(2063))]", - "BLACKBOX::RANGE [(_2062, 1)] []", - "BLACKBOX::RANGE [(_2063, 32)] []", - "EXPR [ (-1, _2052, _2056) (-1, _2878) 0 ]", - "EXPR [ (-1, _2054, _2055) (-1, _2879) 0 ]", - "EXPR [ (1, _2057, _2060) (-1, _2880) 0 ]", - "EXPR [ (1, _2059, _2061) (-1, _2881) 0 ]", - "EXPR [ (-4294967296, _2062) (-1, _2063) (1, _2878) (1, _2879) (1, _2880) (1, _2881) 4294967296 ]", - "EXPR [ (-1, _2062) (-1, _2064) 1 ]", - "EXPR [ (-1, _2065) (1, _2880) (1, _2881) 0 ]", - "EXPR [ (-1, _2066) (-1, _2878) (-1, _2879) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2055)), (-1, Witness(2054), Witness(2056)), (1, Witness(2062), Witness(2065)), (1, Witness(2064), Witness(2066))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2067)), Simple(Witness(2068))]", - "BLACKBOX::RANGE [(_2067, 1)] []", - "BLACKBOX::RANGE [(_2068, 32)] []", - "EXPR [ (-1, _2052, _2055) (-1, _2883) 0 ]", - "EXPR [ (-1, _2054, _2056) (-1, _2884) 0 ]", - "EXPR [ (1, _2062, _2065) (-1, _2885) 0 ]", - "EXPR [ (1, _2064, _2066) (-1, _2886) 0 ]", - "EXPR [ (-4294967296, _2067) (-1, _2068) (1, _2883) (1, _2884) (1, _2885) (1, _2886) 4294967296 ]", - "EXPR [ (-1, _2067) (-1, _2069) 1 ]", - "EXPR [ (-1, _2070) (1, _2885) (1, _2886) 0 ]", - "EXPR [ (-1, _2071) (-1, _2883) (-1, _2884) 0 ]", - "EXPR [ (1, _2057, _2061) (1, _2059, _2060) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(2011))], q_c: 0 })], outputs: [Simple(Witness(2072))]", - "EXPR [ (12, _2011, _2072) (1, _2073) -1 ]", - "EXPR [ (12, _2011, _2073) 0 ]", - "EXPR [ (-1, _2073) (-1, _2074) 1 ]", - "EXPR [ (2, _2011, _2011) (-1, _2075) 0 ]", - "EXPR [ (1, _2074, _2075) (3, _2073) -2 ]", - "EXPR [ (1, _2062, _2066) (1, _2064, _2065) (-1, _2076) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2076))], q_c: 0 })], outputs: [Simple(Witness(2077))]", - "EXPR [ (1, _2076, _2077) (1, _2078) -1 ]", - "EXPR [ (1, _2076, _2078) 0 ]", - "EXPR [ (1, _2067, _2071) (1, _2069, _2070) (-1, _2079) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2079))], q_c: 0 })], outputs: [Simple(Witness(2080))]", - "EXPR [ (1, _2079, _2080) (1, _2081) -1 ]", - "EXPR [ (1, _2079, _2081) 0 ]", - "EXPR [ (-1, _2081) (-1, _2082) 1 ]", - "EXPR [ (-2, _2073, _2078) (2, _2073) (3, _2078) (-1, _2083) 0 ]", - "EXPR [ (1, _2067, _2070) (1, _2069, _2071) (-1, _2084) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2084))], q_c: 0 })], outputs: [Simple(Witness(2085))]", - "EXPR [ (1, _2084, _2085) (1, _2086) -1 ]", - "EXPR [ (1, _2084, _2086) 0 ]", - "EXPR [ (-1, _2086) (-1, _2087) 1 ]", - "EXPR [ (1, _2082, _2083) (4, _2081) (-1, _2088) 0 ]", - "EXPR [ (1, _2087, _2088) (5, _2086) 0 ]", + "EXPR [ (-1, _1954) 1 ]", + "EXPR [ (-1, _77, _1954) (1, _77) (3, _1954) (-1, _1955) 0 ]", + "EXPR [ (1, _1954, _1955) -3 ]", + "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_1956, _1957, _1958, _1959, _1960, _1961, _1962, _1963, _1964, _1965, _1966, _1967, _1968, _1969, _1970, _1971, _1972, _1973, _1974, _1975, _1976, _1977, _1978, _1979, _1980, _1981, _1982, _1983, _1984, _1985, _1986, _1987]", + "EXPR [ (1, _1954, _1956) (-1, _10) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1954), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1988)), Simple(Witness(1989))]", + "BLACKBOX::RANGE [(_1988, 1)] []", + "BLACKBOX::RANGE [(_1989, 32)] []", + "EXPR [ (1, _67, _1954) (-4294967296, _1988) (-1, _1989) 4294967293 ]", + "EXPR [ (-1, _1988) (-1, _1990) 1 ]", + "EXPR [ (1, _67, _1954) (-1, _1991) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1990), Witness(1991))], linear_combinations: [(1, Witness(57)), (-3, Witness(1988))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1992)), Simple(Witness(1993))]", + "BLACKBOX::RANGE [(_1992, 1)] []", + "BLACKBOX::RANGE [(_1993, 32)] []", + "EXPR [ (-1, _1990, _1991) (1, _57) (-3, _1988) (-4294967296, _1992) (-1, _1993) 4294967296 ]", + "EXPR [ (1, _1990, _1991) (3, _1988) (-1, _1994) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1988), Witness(1991)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-3, Witness(1990)), (1, Witness(1994))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1995)), Simple(Witness(1996))]", + "BLACKBOX::RANGE [(_1995, 1)] []", + "BLACKBOX::RANGE [(_1996, 32)] []", + "EXPR [ (1, _57, _1992) (-1, _2765) 0 ]", + "EXPR [ (-1, _1992, _1994) (-1, _2767) 0 ]", + "EXPR [ (-1, _1988, _1991) (-3, _1990) (1, _1994) (-4294967296, _1995) (-1, _1996) (1, _2765) (1, _2767) 4294967296 ]", + "EXPR [ (-1, _1995) (-1, _1997) 1 ]", + "EXPR [ (1, _1994) (-1, _1998) (1, _2765) (1, _2767) 0 ]", + "EXPR [ (1, _1988, _1991) (3, _1990) (-1, _1999) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1935), Witness(1931)), (1, Witness(1936), Witness(1924)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2000)), Simple(Witness(2001))]", + "BLACKBOX::RANGE [(_2000, 1)] []", + "BLACKBOX::RANGE [(_2001, 32)] []", + "EXPR [ (1, _1924, _1936) (-1, _2770) 0 ]", + "EXPR [ (1, _1931, _1935) (-1, _2771) 0 ]", + "EXPR [ (-1, _57) (-4294967296, _2000) (-1, _2001) (1, _2765) (1, _2767) (1, _2770) (1, _2771) 4294967296 ]", + "EXPR [ (-1, _2000) (-1, _2002) 1 ]", + "EXPR [ (-1, _2003) (1, _2770) (1, _2771) 0 ]", + "EXPR [ (1, _57) (-1, _2004) (-1, _2765) (-1, _2767) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1999)), (-1, Witness(1997), Witness(1998)), (1, Witness(2000), Witness(2003)), (1, Witness(2002), Witness(2004))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2005)), Simple(Witness(2006))]", + "BLACKBOX::RANGE [(_2005, 1)] []", + "BLACKBOX::RANGE [(_2006, 32)] []", + "EXPR [ (-1, _1995, _1999) (-1, _2774) 0 ]", + "EXPR [ (-1, _1997, _1998) (-1, _2775) 0 ]", + "EXPR [ (1, _2000, _2003) (-1, _2776) 0 ]", + "EXPR [ (1, _2002, _2004) (-1, _2777) 0 ]", + "EXPR [ (-4294967296, _2005) (-1, _2006) (1, _2774) (1, _2775) (1, _2776) (1, _2777) 4294967296 ]", + "EXPR [ (-1, _2005) (-1, _2007) 1 ]", + "EXPR [ (-1, _2008) (1, _2776) (1, _2777) 0 ]", + "EXPR [ (-1, _2009) (-1, _2774) (-1, _2775) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1998)), (-1, Witness(1997), Witness(1999)), (1, Witness(2005), Witness(2008)), (1, Witness(2007), Witness(2009))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2010)), Simple(Witness(2011))]", + "BLACKBOX::RANGE [(_2010, 1)] []", + "BLACKBOX::RANGE [(_2011, 32)] []", + "EXPR [ (-1, _1995, _1998) (-1, _2779) 0 ]", + "EXPR [ (-1, _1997, _1999) (-1, _2780) 0 ]", + "EXPR [ (1, _2005, _2008) (-1, _2781) 0 ]", + "EXPR [ (1, _2007, _2009) (-1, _2782) 0 ]", + "EXPR [ (-4294967296, _2010) (-1, _2011) (1, _2779) (1, _2780) (1, _2781) (1, _2782) 4294967296 ]", + "EXPR [ (-1, _2010) (-1, _2012) 1 ]", + "EXPR [ (-1, _2013) (1, _2781) (1, _2782) 0 ]", + "EXPR [ (-1, _2014) (-1, _2779) (-1, _2780) 0 ]", + "EXPR [ (1, _2000, _2004) (1, _2002, _2003) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(1954))], q_c: 0 })], outputs: [Simple(Witness(2015))]", + "EXPR [ (12, _1954, _2015) (1, _2016) -1 ]", + "EXPR [ (12, _1954, _2016) 0 ]", + "EXPR [ (-1, _2016) (-1, _2017) 1 ]", + "EXPR [ (2, _1954, _1954) (-1, _2018) 0 ]", + "EXPR [ (1, _2017, _2018) (3, _2016) -2 ]", + "EXPR [ (1, _2005, _2009) (1, _2007, _2008) (-1, _2019) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2019))], q_c: 0 })], outputs: [Simple(Witness(2020))]", + "EXPR [ (1, _2019, _2020) (1, _2021) -1 ]", + "EXPR [ (1, _2019, _2021) 0 ]", + "EXPR [ (1, _2010, _2014) (1, _2012, _2013) (-1, _2022) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2022))], q_c: 0 })], outputs: [Simple(Witness(2023))]", + "EXPR [ (1, _2022, _2023) (1, _2024) -1 ]", + "EXPR [ (1, _2022, _2024) 0 ]", + "EXPR [ (-1, _2024) (-1, _2025) 1 ]", + "EXPR [ (-2, _2016, _2021) (2, _2016) (3, _2021) (-1, _2026) 0 ]", + "EXPR [ (1, _2010, _2013) (1, _2012, _2014) (-1, _2027) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2027))], q_c: 0 })], outputs: [Simple(Witness(2028))]", + "EXPR [ (1, _2027, _2028) (1, _2029) -1 ]", + "EXPR [ (1, _2027, _2029) 0 ]", + "EXPR [ (-1, _2029) (-1, _2030) 1 ]", + "EXPR [ (1, _2025, _2026) (4, _2024) (-1, _2031) 0 ]", + "EXPR [ (1, _2030, _2031) (5, _2029) 0 ]", "unconstrained func 0", "[Const { destination: Direct(21), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(20), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(21), offset_address: Direct(20) }, Const { destination: Direct(2), bit_size: Field, value: 0 }, BinaryFieldOp { destination: Direct(3), op: Equals, lhs: Direct(0), rhs: Direct(2) }, JumpIf { condition: Direct(3), location: 8 }, Const { destination: Direct(1), bit_size: Field, value: 1 }, BinaryFieldOp { destination: Direct(0), op: Div, lhs: Direct(1), rhs: Direct(0) }, Stop { return_data: HeapVector { pointer: Direct(20), size: Direct(21) } }]", "unconstrained func 1", "[Const { destination: Direct(10), bit_size: Integer(U32), value: 2 }, Const { destination: Direct(11), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(10), offset_address: Direct(11) }, BinaryFieldOp { destination: Direct(2), op: IntegerDiv, lhs: Direct(0), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Mul, lhs: Direct(2), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Sub, lhs: Direct(0), rhs: Direct(1) }, Mov { destination: Direct(0), source: Direct(2) }, Stop { return_data: HeapVector { pointer: Direct(11), size: Direct(10) } }]" ], - "debug_symbols": "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", + "debug_symbols": "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", "file_map": { "19": { "source": "// Exposed only for usage in `std::meta`\npub(crate) mod poseidon2;\n\nuse crate::default::Default;\nuse crate::embedded_curve_ops::{\n EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_array_return,\n};\nuse crate::meta::derive_via;\n\n#[foreign(sha256_compression)]\n// docs:start:sha256_compression\npub fn sha256_compression(input: [u32; 16], state: [u32; 8]) -> [u32; 8] {}\n// docs:end:sha256_compression\n\n#[foreign(keccakf1600)]\n// docs:start:keccakf1600\npub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {}\n// docs:end:keccakf1600\n\npub mod keccak {\n #[deprecated(\"This function has been moved to std::hash::keccakf1600\")]\n pub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {\n super::keccakf1600(input)\n }\n}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n// docs:start:blake3\npub fn blake3(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{\n if crate::runtime::is_unconstrained() {\n // Temporary measure while Barretenberg is main proving system.\n // Please open an issue if you're working on another proving system and running into problems due to this.\n crate::static_assert(\n N <= 1024,\n \"Barretenberg cannot prove blake3 hashes with inputs larger than 1024 bytes\",\n );\n }\n __blake3(input)\n}\n\n#[foreign(blake3)]\nfn __blake3(input: [u8; N]) -> [u8; 32] {}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[inline_always]\npub fn pedersen_commitment_with_separator(\n input: [Field; N],\n separator: u32,\n) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constrain the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[no_predicates]\npub fn pedersen_hash_with_separator(input: [Field; N], separator: u32) -> Field {\n let mut scalars: [EmbeddedCurveScalar; N + 1] = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N + 1];\n let mut generators: [EmbeddedCurvePoint; N + 1] =\n [EmbeddedCurvePoint::point_at_infinity(); N + 1];\n let domain_generators: [EmbeddedCurvePoint; N] =\n derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n\n for i in 0..N {\n scalars[i] = from_field_unsafe(input[i]);\n generators[i] = domain_generators[i];\n }\n scalars[N] = EmbeddedCurveScalar { lo: N as Field, hi: 0 as Field };\n\n let length_generator: [EmbeddedCurvePoint; 1] =\n derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n generators[N] = length_generator[0];\n multi_scalar_mul_array_return(generators, scalars)[0].x\n}\n\n#[field(bn254)]\n#[inline_always]\npub fn derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n // TODO(https://github.com/noir-lang/noir/issues/5672): Add back assert_constant on starting_index\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n// Same as from_field but:\n// does not assert the limbs are 128 bits\n// does not assert the decomposition does not overflow the EmbeddedCurveScalar\nfn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n // Safety: xlo and xhi decomposition is checked below\n let (xlo, xhi) = unsafe { crate::field::bn254::decompose_hint(scalar) };\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n// Generic hashing support.\n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\n#[derive_via(derive_hash)]\npub trait Hash {\n fn hash(self, state: &mut H)\n where\n H: Hasher;\n}\n\n// docs:start:derive_hash\ncomptime fn derive_hash(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::hash::Hash };\n let signature = quote { fn hash(_self: Self, _state: &mut H) where H: $crate::hash::Hasher };\n let for_each_field = |name| quote { _self.$name.hash(_state); };\n crate::meta::make_trait_impl(\n s,\n name,\n signature,\n for_each_field,\n quote {},\n |fields| fields,\n )\n}\n// docs:end:derive_hash\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\npub trait Hasher {\n fn finish(self) -> Field;\n\n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\npub trait BuildHasher {\n type H: Hasher;\n\n fn build_hasher(self) -> H;\n}\n\npub struct BuildHasherDefault;\n\nimpl BuildHasher for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n type H = H;\n\n fn build_hasher(_self: Self) -> H {\n H::default()\n }\n}\n\nimpl Default for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n fn default() -> Self {\n BuildHasherDefault {}\n }\n}\n\nimpl Hash for Field {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self);\n }\n}\n\nimpl Hash for u1 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u128 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u8 as Field);\n }\n}\n\nimpl Hash for i16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u16 as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u32 as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u64 as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash(_self: Self, _state: &mut H)\n where\n H: Hasher,\n {}\n}\n\nimpl Hash for [T; N]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for [T]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for (A, B)\nwhere\n A: Hash,\n B: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl Hash for (A, B, C)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D, E)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n E: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1),\n 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f,\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1),\n EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false,\n },\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2),\n 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2),\n EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3),\n 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3),\n EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4),\n 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4),\n EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5),\n 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5),\n EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6),\n 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6),\n EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false,\n },\n );\n}\n", diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_0.snap index 21f58635963..d032811c9c8 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_0.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_0.snap @@ -70,7 +70,7 @@ expression: artifact }, "bytecode": [ "func 0", - "current witness index : _2886", + "current witness index : _2782", "private parameters indices : [_0, _1, _2, _3, _4, _5, _6, _7, _8, _9]", "public parameters indices : [_10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41]", "return value indices : []", @@ -119,9 +119,9 @@ expression: artifact "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(42))]", "EXPR [ (-1, _0, _42) (1, _43) -1 ]", "EXPR [ (-1, _0, _43) 0 ]", - "EXPR [ (1, _0, _43) (-1, _2089) 0 ]", - "EXPR [ (1, _4, _43) (-1, _2090) 0 ]", - "EXPR [ (-1, _44) (1, _2089) (1, _2090) 0 ]", + "EXPR [ (1, _0, _43) (-1, _2032) 0 ]", + "EXPR [ (1, _4, _43) (-1, _2033) 0 ]", + "EXPR [ (-1, _44) (1, _2032) (1, _2033) 0 ]", "BLACKBOX::RANGE [(_44, 32)] []", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(44))], q_c: -4864 })], outputs: [Simple(Witness(45))]", "EXPR [ (1, _44, _45) (-4864, _45) (1, _46) -1 ]", @@ -130,8 +130,8 @@ expression: artifact "MEM (id: 0, read at: EXPR [ (1, _47) 0 ], value: EXPR [ (1, _48) 0 ]) ", "EXPR [ (1, _43, _46) (-1, _49) 0 ]", "INIT (id: 3, len: 4, witnesses: [_1, _2, _3, _4])", - "EXPR [ (1, _44, _49) (-1, _2091) 0 ]", - "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2091) 0 ]", + "EXPR [ (1, _44, _49) (-1, _2034) 0 ]", + "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2034) 0 ]", "MEM (id: 3, write EXPR [ (1, _50) 0 ] at: EXPR [ (1, _47) 0 ]) ", "EXPR [ (-1, _51) 0 ]", "MEM (id: 3, read at: EXPR [ (1, _51) 0 ], value: EXPR [ (1, _52) 0 ]) ", @@ -140,30 +140,30 @@ expression: artifact "EXPR [ (-1, _55) 2 ]", "MEM (id: 3, read at: EXPR [ (1, _55) 0 ], value: EXPR [ (1, _56) 0 ]) ", "EXPR [ (-1, _3, _49) (1, _49, _56) (1, _3) (-1, _57) 0 ]", - "EXPR [ (1, _43, _44) (-1, _2095) 0 ]", - "EXPR [ (-1, _58) (1, _2090) (1, _2095) 0 ]", + "EXPR [ (1, _43, _44) (-1, _2038) 0 ]", + "EXPR [ (-1, _58) (1, _2033) (1, _2038) 0 ]", "BLACKBOX::RANGE [(_58, 32)] []", - "EXPR [ (1, _43, _57) (-1, _2096) 0 ]", - "EXPR [ (1, _43, _58) (-1, _59) (1, _2096) 0 ]", + "EXPR [ (1, _43, _57) (-1, _2039) 0 ]", + "EXPR [ (1, _43, _58) (-1, _59) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_59, 32)] []", "EXPR [ (-1, _43) (-1, _60) 1 ]", - "EXPR [ (1, _0) (-1, _61) (-1, _2089) (1, _2095) 0 ]", + "EXPR [ (1, _0) (-1, _61) (-1, _2032) (1, _2038) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(59))], q_c: -4864 })], outputs: [Simple(Witness(62))]", "EXPR [ (1, _59, _62) (-4864, _62) (1, _63) -1 ]", "EXPR [ (1, _59, _63) (-4864, _63) 0 ]", "EXPR [ (1, _43, _63) (-1, _64) 0 ]", "EXPR [ (-1, _43, _63) (-1, _65) 1 ]", - "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2091) 0 ]", + "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2034) 0 ]", "EXPR [ (-1, _2, _49) (1, _49, _54) (1, _2) (-1, _67) 0 ]", - "EXPR [ (1, _43, _59) (-1, _2101) 0 ]", - "EXPR [ (-1, _68) (1, _2090) (1, _2101) 0 ]", + "EXPR [ (1, _43, _59) (-1, _2044) 0 ]", + "EXPR [ (-1, _68) (1, _2033) (1, _2044) 0 ]", "BLACKBOX::RANGE [(_68, 32)] []", - "EXPR [ (1, _43, _68) (-1, _69) (1, _2096) 0 ]", + "EXPR [ (1, _43, _68) (-1, _69) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_69, 32)] []", - "EXPR [ (1, _43, _67) (-1, _2103) 0 ]", - "EXPR [ (1, _43, _69) (-1, _70) (1, _2103) 0 ]", + "EXPR [ (1, _43, _67) (-1, _2046) 0 ]", + "EXPR [ (1, _43, _69) (-1, _70) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_70, 32)] []", - "EXPR [ (1, _60, _61) (-1, _71) (1, _2101) 0 ]", + "EXPR [ (1, _60, _61) (-1, _71) (1, _2044) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(70))], q_c: -4864 })], outputs: [Simple(Witness(72))]", "EXPR [ (1, _70, _72) (-4864, _72) (1, _73) -1 ]", "EXPR [ (1, _70, _73) (-4864, _73) 0 ]", @@ -171,16 +171,16 @@ expression: artifact "EXPR [ (-1, _43, _73) (-1, _75) 1 ]", "EXPR [ (1, _59, _64) (1, _65, _66) (-1, _76) 0 ]", "EXPR [ (-1, _1, _49) (1, _49, _52) (1, _1) (-1, _77) 0 ]", - "EXPR [ (1, _43, _70) (-1, _2110) 0 ]", - "EXPR [ (-1, _78) (1, _2090) (1, _2110) 0 ]", + "EXPR [ (1, _43, _70) (-1, _2053) 0 ]", + "EXPR [ (-1, _78) (1, _2033) (1, _2053) 0 ]", "BLACKBOX::RANGE [(_78, 32)] []", - "EXPR [ (1, _43, _78) (-1, _79) (1, _2096) 0 ]", + "EXPR [ (1, _43, _78) (-1, _79) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_79, 32)] []", - "EXPR [ (1, _43, _79) (-1, _80) (1, _2103) 0 ]", + "EXPR [ (1, _43, _79) (-1, _80) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_80, 32)] []", "EXPR [ (1, _43, _77) (1, _43, _80) (-1, _81) 0 ]", "BLACKBOX::RANGE [(_81, 32)] []", - "EXPR [ (1, _60, _71) (-1, _82) (1, _2110) 0 ]", + "EXPR [ (1, _60, _71) (-1, _82) (1, _2053) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(81))], q_c: -4864 })], outputs: [Simple(Witness(83))]", "EXPR [ (1, _81, _83) (-4864, _83) (1, _84) -1 ]", "EXPR [ (1, _81, _84) (-4864, _84) 0 ]", @@ -193,13 +193,13 @@ expression: artifact "EXPR [ (1, _81, _85) (1, _86, _87) (-1, _90) 0 ]", "EXPR [ (-1, _89) (-1, _91) 1 ]", "EXPR [ (1, _43, _57) (-1, _92) 0 ]", - "EXPR [ (1, _43, _81) (-1, _2120) 0 ]", - "EXPR [ (1, _60, _82) (-1, _2121) 0 ]", - "EXPR [ (-1, _93) (1, _2090) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (1, _43, _81) (-1, _2063) 0 ]", + "EXPR [ (1, _60, _82) (-1, _2064) 0 ]", + "EXPR [ (-1, _93) (1, _2033) (1, _2063) (1, _2064) 0 ]", "EXPR [ (1, _89, _93) (-1, _94) 0 ]", "BLACKBOX::RANGE [(_94, 32)] []", - "EXPR [ (1, _89, _90) (-1, _2122) 0 ]", - "EXPR [ (1, _89, _94) (-1, _95) (1, _2122) 0 ]", + "EXPR [ (1, _89, _90) (-1, _2065) 0 ]", + "EXPR [ (1, _89, _94) (-1, _95) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_95, 32)] []", "EXPR [ (1, _43, _67) (1, _95) (-1, _96) 0 ]", "EXPR [ (1, _89, _96) (-1, _97) 0 ]", @@ -207,7 +207,7 @@ expression: artifact "EXPR [ (1, _43, _77) (1, _97) (-1, _98) 0 ]", "EXPR [ (1, _89, _98) (-1, _99) 0 ]", "BLACKBOX::RANGE [(_99, 32)] []", - "EXPR [ (-1, _100) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (-1, _100) (1, _2063) (1, _2064) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(99))], q_c: -4864 })], outputs: [Simple(Witness(101))]", "EXPR [ (1, _99, _101) (-4864, _101) (1, _102) -1 ]", "EXPR [ (1, _99, _102) (-4864, _102) 0 ]", @@ -217,10 +217,10 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _99) (-1, _106) 0 ]", "EXPR [ (1, _89, _106) (-1, _107) 0 ]", "BLACKBOX::RANGE [(_107, 32)] []", - "EXPR [ (1, _89, _107) (-1, _108) (1, _2122) 0 ]", + "EXPR [ (1, _89, _107) (-1, _108) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_108, 32)] []", - "EXPR [ (1, _57, _89) (-1, _2125) 0 ]", - "EXPR [ (1, _89, _108) (-1, _109) (1, _2125) 0 ]", + "EXPR [ (1, _57, _89) (-1, _2068) 0 ]", + "EXPR [ (1, _89, _108) (-1, _109) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_109, 32)] []", "EXPR [ (1, _43, _77) (1, _109) (-1, _110) 0 ]", "EXPR [ (1, _89, _110) (-1, _111) 0 ]", @@ -236,12 +236,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _111) (-1, _119) 0 ]", "EXPR [ (1, _89, _119) (-1, _120) 0 ]", "BLACKBOX::RANGE [(_120, 32)] []", - "EXPR [ (1, _89, _120) (-1, _121) (1, _2122) 0 ]", + "EXPR [ (1, _89, _120) (-1, _121) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_121, 32)] []", - "EXPR [ (1, _89, _121) (-1, _122) (1, _2125) 0 ]", + "EXPR [ (1, _89, _121) (-1, _122) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_122, 32)] []", - "EXPR [ (1, _67, _89) (-1, _2133) 0 ]", - "EXPR [ (1, _89, _122) (-1, _123) (1, _2133) 0 ]", + "EXPR [ (1, _67, _89) (-1, _2076) 0 ]", + "EXPR [ (1, _89, _122) (-1, _123) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_123, 32)] []", "EXPR [ (1, _89, _111) (1, _91, _112) (-1, _124) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(123))], q_c: -4864 })], outputs: [Simple(Witness(125))]", @@ -253,11 +253,11 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _123) (-1, _130) 0 ]", "EXPR [ (1, _89, _130) (-1, _131) 0 ]", "BLACKBOX::RANGE [(_131, 32)] []", - "EXPR [ (1, _89, _131) (-1, _132) (1, _2122) 0 ]", + "EXPR [ (1, _89, _131) (-1, _132) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_132, 32)] []", - "EXPR [ (1, _89, _132) (-1, _133) (1, _2125) 0 ]", + "EXPR [ (1, _89, _132) (-1, _133) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_133, 32)] []", - "EXPR [ (1, _89, _133) (-1, _134) (1, _2133) 0 ]", + "EXPR [ (1, _89, _133) (-1, _134) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_134, 32)] []", "EXPR [ (1, _89, _123) (1, _91, _124) (-1, _135) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(134))], q_c: -4864 })], outputs: [Simple(Witness(136))]", @@ -271,40 +271,40 @@ expression: artifact "EXPR [ (-1, _0, _142) (2, _142) 0 ]", "EXPR [ (1, _134, _138) (1, _139, _140) (-1, _143) 0 ]", "EXPR [ (-1, _142) (-1, _144) 1 ]", - "EXPR [ (1, _91, _105) (-1, _145) (1, _2125) 0 ]", - "EXPR [ (1, _89, _134) (-1, _2149) 0 ]", - "EXPR [ (1, _91, _135) (-1, _2150) 0 ]", - "EXPR [ (-1, _146) (1, _2090) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (1, _91, _105) (-1, _145) (1, _2068) 0 ]", + "EXPR [ (1, _89, _134) (-1, _2092) 0 ]", + "EXPR [ (1, _91, _135) (-1, _2093) 0 ]", + "EXPR [ (-1, _146) (1, _2033) (1, _2092) (1, _2093) 0 ]", "EXPR [ (1, _142, _146) (-1, _147) 0 ]", "BLACKBOX::RANGE [(_147, 32)] []", - "EXPR [ (1, _91, _92) (-1, _2151) 0 ]", - "EXPR [ (1, _147) (-1, _148) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _91, _92) (-1, _2094) 0 ]", + "EXPR [ (1, _147) (-1, _148) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _148) (-1, _149) 0 ]", "BLACKBOX::RANGE [(_149, 32)] []", - "EXPR [ (1, _142, _143) (-1, _2152) 0 ]", - "EXPR [ (1, _142, _149) (-1, _150) (1, _2152) 0 ]", + "EXPR [ (1, _142, _143) (-1, _2095) 0 ]", + "EXPR [ (1, _142, _149) (-1, _150) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_150, 32)] []", - "EXPR [ (1, _91, _118) (-1, _2154) 0 ]", - "EXPR [ (1, _150) (-1, _151) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (1, _91, _118) (-1, _2097) 0 ]", + "EXPR [ (1, _150) (-1, _151) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _142, _151) (-1, _152) 0 ]", "BLACKBOX::RANGE [(_152, 32)] []", - "EXPR [ (-1, _153) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (-1, _153) (1, _2092) (1, _2093) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(152))], q_c: -4864 })], outputs: [Simple(Witness(154))]", "EXPR [ (1, _152, _154) (-4864, _154) (1, _155) -1 ]", "EXPR [ (1, _152, _155) (-4864, _155) 0 ]", "EXPR [ (1, _142, _155) (-1, _156) 0 ]", "EXPR [ (-1, _142, _155) (-1, _157) 1 ]", - "EXPR [ (-1, _158) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (-1, _158) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _4, _43) (1, _152) (-1, _159) 0 ]", "EXPR [ (1, _142, _159) (-1, _160) 0 ]", "BLACKBOX::RANGE [(_160, 32)] []", - "EXPR [ (1, _160) (-1, _161) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _160) (-1, _161) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _161) (-1, _162) 0 ]", "BLACKBOX::RANGE [(_162, 32)] []", - "EXPR [ (1, _142, _162) (-1, _163) (1, _2152) 0 ]", + "EXPR [ (1, _142, _162) (-1, _163) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_163, 32)] []", - "EXPR [ (1, _57, _142) (-1, _2156) 0 ]", - "EXPR [ (1, _142, _163) (-1, _164) (1, _2156) 0 ]", + "EXPR [ (1, _57, _142) (-1, _2099) 0 ]", + "EXPR [ (1, _142, _163) (-1, _164) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_164, 32)] []", "EXPR [ (1, _142, _152) (1, _144, _153) (-1, _165) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(164))], q_c: -4864 })], outputs: [Simple(Witness(166))]", @@ -317,12 +317,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _164) (-1, _172) 0 ]", "EXPR [ (1, _142, _172) (-1, _173) 0 ]", "BLACKBOX::RANGE [(_173, 32)] []", - "EXPR [ (1, _173) (-1, _174) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _173) (-1, _174) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _174) (-1, _175) 0 ]", "BLACKBOX::RANGE [(_175, 32)] []", - "EXPR [ (1, _142, _175) (-1, _176) (1, _2152) 0 ]", + "EXPR [ (1, _142, _175) (-1, _176) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_176, 32)] []", - "EXPR [ (1, _142, _176) (-1, _177) (1, _2156) 0 ]", + "EXPR [ (1, _142, _176) (-1, _177) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_177, 32)] []", "EXPR [ (1, _142, _164) (1, _144, _165) (-1, _178) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(177))], q_c: -4864 })], outputs: [Simple(Witness(179))]", @@ -334,12 +334,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _177) (-1, _184) 0 ]", "EXPR [ (1, _142, _184) (-1, _185) 0 ]", "BLACKBOX::RANGE [(_185, 32)] []", - "EXPR [ (1, _185) (-1, _186) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _185) (-1, _186) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _186) (-1, _187) 0 ]", "BLACKBOX::RANGE [(_187, 32)] []", - "EXPR [ (1, _142, _187) (-1, _188) (1, _2152) 0 ]", + "EXPR [ (1, _142, _187) (-1, _188) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_188, 32)] []", - "EXPR [ (1, _142, _188) (-1, _189) (1, _2156) 0 ]", + "EXPR [ (1, _142, _188) (-1, _189) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_189, 32)] []", "EXPR [ (1, _142, _177) (1, _144, _178) (-1, _190) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(189))], q_c: -4864 })], outputs: [Simple(Witness(191))]", @@ -353,23 +353,23 @@ expression: artifact "EXPR [ (-1, _0, _197) (3, _197) 0 ]", "EXPR [ (1, _189, _193) (1, _194, _195) (-1, _198) 0 ]", "EXPR [ (-1, _197) (-1, _199) 1 ]", - "EXPR [ (1, _144, _158) (-1, _200) (1, _2156) 0 ]", - "EXPR [ (1, _142, _189) (-1, _2177) 0 ]", - "EXPR [ (1, _144, _190) (-1, _2178) 0 ]", - "EXPR [ (-1, _201) (1, _2090) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (1, _144, _158) (-1, _200) (1, _2099) 0 ]", + "EXPR [ (1, _142, _189) (-1, _2120) 0 ]", + "EXPR [ (1, _144, _190) (-1, _2121) 0 ]", + "EXPR [ (-1, _201) (1, _2033) (1, _2120) (1, _2121) 0 ]", "EXPR [ (1, _197, _201) (-1, _202) 0 ]", "BLACKBOX::RANGE [(_202, 32)] []", - "EXPR [ (1, _202) (-1, _203) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _202) (-1, _203) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _203) (-1, _204) 0 ]", "BLACKBOX::RANGE [(_204, 32)] []", - "EXPR [ (1, _144, _145) (-1, _2179) 0 ]", - "EXPR [ (1, _204) (-1, _205) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _144, _145) (-1, _2122) 0 ]", + "EXPR [ (1, _204) (-1, _205) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _205) (-1, _206) 0 ]", "BLACKBOX::RANGE [(_206, 32)] []", - "EXPR [ (1, _197, _198) (-1, _2180) 0 ]", - "EXPR [ (1, _197, _206) (-1, _207) (1, _2180) 0 ]", + "EXPR [ (1, _197, _198) (-1, _2123) 0 ]", + "EXPR [ (1, _197, _206) (-1, _207) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_207, 32)] []", - "EXPR [ (-1, _208) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (-1, _208) (1, _2120) (1, _2121) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(207))], q_c: -4864 })], outputs: [Simple(Witness(209))]", "EXPR [ (1, _207, _209) (-4864, _209) (1, _210) -1 ]", "EXPR [ (1, _207, _210) (-4864, _210) 0 ]", @@ -379,13 +379,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _207) (-1, _214) 0 ]", "EXPR [ (1, _197, _214) (-1, _215) 0 ]", "BLACKBOX::RANGE [(_215, 32)] []", - "EXPR [ (1, _215) (-1, _216) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _215) (-1, _216) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _216) (-1, _217) 0 ]", "BLACKBOX::RANGE [(_217, 32)] []", - "EXPR [ (1, _217) (-1, _218) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _217) (-1, _218) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _218) (-1, _219) 0 ]", "BLACKBOX::RANGE [(_219, 32)] []", - "EXPR [ (1, _197, _219) (-1, _220) (1, _2180) 0 ]", + "EXPR [ (1, _197, _219) (-1, _220) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_220, 32)] []", "EXPR [ (1, _197, _207) (1, _199, _208) (-1, _221) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(220))], q_c: -4864 })], outputs: [Simple(Witness(222))]", @@ -398,13 +398,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _220) (-1, _228) 0 ]", "EXPR [ (1, _197, _228) (-1, _229) 0 ]", "BLACKBOX::RANGE [(_229, 32)] []", - "EXPR [ (1, _229) (-1, _230) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _229) (-1, _230) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _230) (-1, _231) 0 ]", "BLACKBOX::RANGE [(_231, 32)] []", - "EXPR [ (1, _231) (-1, _232) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _231) (-1, _232) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _232) (-1, _233) 0 ]", "BLACKBOX::RANGE [(_233, 32)] []", - "EXPR [ (1, _197, _233) (-1, _234) (1, _2180) 0 ]", + "EXPR [ (1, _197, _233) (-1, _234) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_234, 32)] []", "EXPR [ (1, _197, _220) (1, _199, _221) (-1, _235) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(234))], q_c: -4864 })], outputs: [Simple(Witness(236))]", @@ -416,13 +416,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _234) (-1, _241) 0 ]", "EXPR [ (1, _197, _241) (-1, _242) 0 ]", "BLACKBOX::RANGE [(_242, 32)] []", - "EXPR [ (1, _242) (-1, _243) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _242) (-1, _243) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _243) (-1, _244) 0 ]", "BLACKBOX::RANGE [(_244, 32)] []", - "EXPR [ (1, _244) (-1, _245) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _244) (-1, _245) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _245) (-1, _246) 0 ]", "BLACKBOX::RANGE [(_246, 32)] []", - "EXPR [ (1, _197, _246) (-1, _247) (1, _2180) 0 ]", + "EXPR [ (1, _197, _246) (-1, _247) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_247, 32)] []", "EXPR [ (1, _197, _234) (1, _199, _235) (-1, _248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(247))], q_c: -4864 })], outputs: [Simple(Witness(249))]", @@ -437,22 +437,22 @@ expression: artifact "EXPR [ (1, _247, _251) (1, _252, _253) (-1, _256) 0 ]", "EXPR [ (-1, _255) (-1, _257) 1 ]", "EXPR [ (1, _57, _197) (1, _199, _213) (-1, _258) 0 ]", - "EXPR [ (1, _197, _247) (-1, _2203) 0 ]", - "EXPR [ (1, _199, _248) (-1, _2204) 0 ]", - "EXPR [ (-1, _259) (1, _2090) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (1, _197, _247) (-1, _2146) 0 ]", + "EXPR [ (1, _199, _248) (-1, _2147) 0 ]", + "EXPR [ (-1, _259) (1, _2033) (1, _2146) (1, _2147) 0 ]", "EXPR [ (1, _255, _259) (-1, _260) 0 ]", "BLACKBOX::RANGE [(_260, 32)] []", - "EXPR [ (1, _260) (-1, _261) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _260) (-1, _261) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _261) (-1, _262) 0 ]", "BLACKBOX::RANGE [(_262, 32)] []", - "EXPR [ (1, _262) (-1, _263) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _262) (-1, _263) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _263) (-1, _264) 0 ]", "BLACKBOX::RANGE [(_264, 32)] []", - "EXPR [ (1, _199, _200) (-1, _2205) 0 ]", - "EXPR [ (1, _264) (-1, _265) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _199, _200) (-1, _2148) 0 ]", + "EXPR [ (1, _264) (-1, _265) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _265) (-1, _266) 0 ]", "BLACKBOX::RANGE [(_266, 32)] []", - "EXPR [ (-1, _267) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (-1, _267) (1, _2146) (1, _2147) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(266))], q_c: -4864 })], outputs: [Simple(Witness(268))]", "EXPR [ (1, _266, _268) (-4864, _268) (1, _269) -1 ]", "EXPR [ (1, _266, _269) (-4864, _269) 0 ]", @@ -462,13 +462,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _266) (-1, _273) 0 ]", "EXPR [ (1, _255, _273) (-1, _274) 0 ]", "BLACKBOX::RANGE [(_274, 32)] []", - "EXPR [ (1, _274) (-1, _275) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _274) (-1, _275) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _275) (-1, _276) 0 ]", "BLACKBOX::RANGE [(_276, 32)] []", - "EXPR [ (1, _276) (-1, _277) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _276) (-1, _277) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _277) (-1, _278) 0 ]", "BLACKBOX::RANGE [(_278, 32)] []", - "EXPR [ (1, _278) (-1, _279) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _278) (-1, _279) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _279) (-1, _280) 0 ]", "BLACKBOX::RANGE [(_280, 32)] []", "EXPR [ (1, _255, _266) (1, _257, _267) (-1, _281) 0 ]", @@ -482,13 +482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _280) (-1, _288) 0 ]", "EXPR [ (1, _255, _288) (-1, _289) 0 ]", "BLACKBOX::RANGE [(_289, 32)] []", - "EXPR [ (1, _289) (-1, _290) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _289) (-1, _290) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _290) (-1, _291) 0 ]", "BLACKBOX::RANGE [(_291, 32)] []", - "EXPR [ (1, _291) (-1, _292) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _291) (-1, _292) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _292) (-1, _293) 0 ]", "BLACKBOX::RANGE [(_293, 32)] []", - "EXPR [ (1, _293) (-1, _294) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _293) (-1, _294) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _294) (-1, _295) 0 ]", "BLACKBOX::RANGE [(_295, 32)] []", "EXPR [ (1, _255, _280) (1, _257, _281) (-1, _296) 0 ]", @@ -501,13 +501,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _295) (-1, _302) 0 ]", "EXPR [ (1, _255, _302) (-1, _303) 0 ]", "BLACKBOX::RANGE [(_303, 32)] []", - "EXPR [ (1, _303) (-1, _304) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _303) (-1, _304) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _304) (-1, _305) 0 ]", "BLACKBOX::RANGE [(_305, 32)] []", - "EXPR [ (1, _305) (-1, _306) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _305) (-1, _306) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _306) (-1, _307) 0 ]", "BLACKBOX::RANGE [(_307, 32)] []", - "EXPR [ (1, _307) (-1, _308) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _307) (-1, _308) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _308) (-1, _309) 0 ]", "BLACKBOX::RANGE [(_309, 32)] []", "EXPR [ (1, _255, _295) (1, _257, _296) (-1, _310) 0 ]", @@ -523,21 +523,21 @@ expression: artifact "EXPR [ (1, _309, _313) (1, _314, _315) (-1, _318) 0 ]", "EXPR [ (-1, _317) (-1, _319) 1 ]", "EXPR [ (1, _57, _255) (1, _257, _272) (-1, _320) 0 ]", - "EXPR [ (1, _255, _309) (-1, _2224) 0 ]", - "EXPR [ (1, _257, _310) (-1, _2225) 0 ]", - "EXPR [ (-1, _321) (1, _2090) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (1, _255, _309) (-1, _2167) 0 ]", + "EXPR [ (1, _257, _310) (-1, _2168) 0 ]", + "EXPR [ (-1, _321) (1, _2033) (1, _2167) (1, _2168) 0 ]", "EXPR [ (1, _317, _321) (-1, _322) 0 ]", "BLACKBOX::RANGE [(_322, 32)] []", - "EXPR [ (1, _322) (-1, _323) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _322) (-1, _323) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _323) (-1, _324) 0 ]", "BLACKBOX::RANGE [(_324, 32)] []", - "EXPR [ (1, _324) (-1, _325) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _324) (-1, _325) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _325) (-1, _326) 0 ]", "BLACKBOX::RANGE [(_326, 32)] []", - "EXPR [ (1, _326) (-1, _327) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _326) (-1, _327) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _327) (-1, _328) 0 ]", "BLACKBOX::RANGE [(_328, 32)] []", - "EXPR [ (-1, _329) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (-1, _329) (1, _2167) (1, _2168) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(328))], q_c: -4864 })], outputs: [Simple(Witness(330))]", "EXPR [ (1, _328, _330) (-4864, _330) (1, _331) -1 ]", "EXPR [ (1, _328, _331) (-4864, _331) 0 ]", @@ -547,13 +547,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _328) (-1, _335) 0 ]", "EXPR [ (1, _317, _335) (-1, _336) 0 ]", "BLACKBOX::RANGE [(_336, 32)] []", - "EXPR [ (1, _336) (-1, _337) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _336) (-1, _337) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _337) (-1, _338) 0 ]", "BLACKBOX::RANGE [(_338, 32)] []", - "EXPR [ (1, _338) (-1, _339) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _338) (-1, _339) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _339) (-1, _340) 0 ]", "BLACKBOX::RANGE [(_340, 32)] []", - "EXPR [ (1, _340) (-1, _341) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _340) (-1, _341) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _341) (-1, _342) 0 ]", "BLACKBOX::RANGE [(_342, 32)] []", "EXPR [ (1, _317, _328) (1, _319, _329) (-1, _343) 0 ]", @@ -567,13 +567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _342) (-1, _350) 0 ]", "EXPR [ (1, _317, _350) (-1, _351) 0 ]", "BLACKBOX::RANGE [(_351, 32)] []", - "EXPR [ (1, _351) (-1, _352) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _351) (-1, _352) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _352) (-1, _353) 0 ]", "BLACKBOX::RANGE [(_353, 32)] []", - "EXPR [ (1, _353) (-1, _354) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _353) (-1, _354) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _354) (-1, _355) 0 ]", "BLACKBOX::RANGE [(_355, 32)] []", - "EXPR [ (1, _355) (-1, _356) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _355) (-1, _356) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _356) (-1, _357) 0 ]", "BLACKBOX::RANGE [(_357, 32)] []", "EXPR [ (1, _317, _342) (1, _319, _343) (-1, _358) 0 ]", @@ -586,13 +586,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _357) (-1, _364) 0 ]", "EXPR [ (1, _317, _364) (-1, _365) 0 ]", "BLACKBOX::RANGE [(_365, 32)] []", - "EXPR [ (1, _365) (-1, _366) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _365) (-1, _366) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _366) (-1, _367) 0 ]", "BLACKBOX::RANGE [(_367, 32)] []", - "EXPR [ (1, _367) (-1, _368) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _367) (-1, _368) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _368) (-1, _369) 0 ]", "BLACKBOX::RANGE [(_369, 32)] []", - "EXPR [ (1, _369) (-1, _370) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _369) (-1, _370) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _370) (-1, _371) 0 ]", "BLACKBOX::RANGE [(_371, 32)] []", "EXPR [ (1, _317, _357) (1, _319, _358) (-1, _372) 0 ]", @@ -608,21 +608,21 @@ expression: artifact "EXPR [ (1, _371, _375) (1, _376, _377) (-1, _380) 0 ]", "EXPR [ (-1, _379) (-1, _381) 1 ]", "EXPR [ (1, _57, _317) (1, _319, _334) (-1, _382) 0 ]", - "EXPR [ (1, _317, _371) (-1, _2244) 0 ]", - "EXPR [ (1, _319, _372) (-1, _2245) 0 ]", - "EXPR [ (-1, _383) (1, _2090) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (1, _317, _371) (-1, _2187) 0 ]", + "EXPR [ (1, _319, _372) (-1, _2188) 0 ]", + "EXPR [ (-1, _383) (1, _2033) (1, _2187) (1, _2188) 0 ]", "EXPR [ (1, _379, _383) (-1, _384) 0 ]", "BLACKBOX::RANGE [(_384, 32)] []", - "EXPR [ (1, _384) (-1, _385) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _384) (-1, _385) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _385) (-1, _386) 0 ]", "BLACKBOX::RANGE [(_386, 32)] []", - "EXPR [ (1, _386) (-1, _387) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _386) (-1, _387) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _387) (-1, _388) 0 ]", "BLACKBOX::RANGE [(_388, 32)] []", - "EXPR [ (1, _388) (-1, _389) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _388) (-1, _389) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _389) (-1, _390) 0 ]", "BLACKBOX::RANGE [(_390, 32)] []", - "EXPR [ (-1, _391) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (-1, _391) (1, _2187) (1, _2188) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(390))], q_c: -4864 })], outputs: [Simple(Witness(392))]", "EXPR [ (1, _390, _392) (-4864, _392) (1, _393) -1 ]", "EXPR [ (1, _390, _393) (-4864, _393) 0 ]", @@ -632,13 +632,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _390) (-1, _397) 0 ]", "EXPR [ (1, _379, _397) (-1, _398) 0 ]", "BLACKBOX::RANGE [(_398, 32)] []", - "EXPR [ (1, _398) (-1, _399) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _398) (-1, _399) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _399) (-1, _400) 0 ]", "BLACKBOX::RANGE [(_400, 32)] []", - "EXPR [ (1, _400) (-1, _401) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _400) (-1, _401) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _401) (-1, _402) 0 ]", "BLACKBOX::RANGE [(_402, 32)] []", - "EXPR [ (1, _402) (-1, _403) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _402) (-1, _403) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _403) (-1, _404) 0 ]", "BLACKBOX::RANGE [(_404, 32)] []", "EXPR [ (1, _379, _390) (1, _381, _391) (-1, _405) 0 ]", @@ -652,13 +652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _404) (-1, _412) 0 ]", "EXPR [ (1, _379, _412) (-1, _413) 0 ]", "BLACKBOX::RANGE [(_413, 32)] []", - "EXPR [ (1, _413) (-1, _414) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _413) (-1, _414) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _414) (-1, _415) 0 ]", "BLACKBOX::RANGE [(_415, 32)] []", - "EXPR [ (1, _415) (-1, _416) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _415) (-1, _416) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _416) (-1, _417) 0 ]", "BLACKBOX::RANGE [(_417, 32)] []", - "EXPR [ (1, _417) (-1, _418) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _417) (-1, _418) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _418) (-1, _419) 0 ]", "BLACKBOX::RANGE [(_419, 32)] []", "EXPR [ (1, _379, _404) (1, _381, _405) (-1, _420) 0 ]", @@ -671,13 +671,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _419) (-1, _426) 0 ]", "EXPR [ (1, _379, _426) (-1, _427) 0 ]", "BLACKBOX::RANGE [(_427, 32)] []", - "EXPR [ (1, _427) (-1, _428) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _427) (-1, _428) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _428) (-1, _429) 0 ]", "BLACKBOX::RANGE [(_429, 32)] []", - "EXPR [ (1, _429) (-1, _430) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _429) (-1, _430) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _430) (-1, _431) 0 ]", "BLACKBOX::RANGE [(_431, 32)] []", - "EXPR [ (1, _431) (-1, _432) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _431) (-1, _432) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _432) (-1, _433) 0 ]", "BLACKBOX::RANGE [(_433, 32)] []", "EXPR [ (1, _379, _419) (1, _381, _420) (-1, _434) 0 ]", @@ -693,21 +693,21 @@ expression: artifact "EXPR [ (1, _433, _437) (1, _438, _439) (-1, _442) 0 ]", "EXPR [ (-1, _441) (-1, _443) 1 ]", "EXPR [ (1, _57, _379) (1, _381, _396) (-1, _444) 0 ]", - "EXPR [ (1, _379, _433) (-1, _2264) 0 ]", - "EXPR [ (1, _381, _434) (-1, _2265) 0 ]", - "EXPR [ (-1, _445) (1, _2090) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (1, _379, _433) (-1, _2207) 0 ]", + "EXPR [ (1, _381, _434) (-1, _2208) 0 ]", + "EXPR [ (-1, _445) (1, _2033) (1, _2207) (1, _2208) 0 ]", "EXPR [ (1, _441, _445) (-1, _446) 0 ]", "BLACKBOX::RANGE [(_446, 32)] []", - "EXPR [ (1, _446) (-1, _447) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _446) (-1, _447) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _447) (-1, _448) 0 ]", "BLACKBOX::RANGE [(_448, 32)] []", - "EXPR [ (1, _448) (-1, _449) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _448) (-1, _449) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _449) (-1, _450) 0 ]", "BLACKBOX::RANGE [(_450, 32)] []", - "EXPR [ (1, _450) (-1, _451) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _450) (-1, _451) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _451) (-1, _452) 0 ]", "BLACKBOX::RANGE [(_452, 32)] []", - "EXPR [ (-1, _453) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (-1, _453) (1, _2207) (1, _2208) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(452))], q_c: -4864 })], outputs: [Simple(Witness(454))]", "EXPR [ (1, _452, _454) (-4864, _454) (1, _455) -1 ]", "EXPR [ (1, _452, _455) (-4864, _455) 0 ]", @@ -717,13 +717,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _452) (-1, _459) 0 ]", "EXPR [ (1, _441, _459) (-1, _460) 0 ]", "BLACKBOX::RANGE [(_460, 32)] []", - "EXPR [ (1, _460) (-1, _461) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _460) (-1, _461) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _461) (-1, _462) 0 ]", "BLACKBOX::RANGE [(_462, 32)] []", - "EXPR [ (1, _462) (-1, _463) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _462) (-1, _463) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _463) (-1, _464) 0 ]", "BLACKBOX::RANGE [(_464, 32)] []", - "EXPR [ (1, _464) (-1, _465) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _464) (-1, _465) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _465) (-1, _466) 0 ]", "BLACKBOX::RANGE [(_466, 32)] []", "EXPR [ (1, _441, _452) (1, _443, _453) (-1, _467) 0 ]", @@ -737,13 +737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _466) (-1, _474) 0 ]", "EXPR [ (1, _441, _474) (-1, _475) 0 ]", "BLACKBOX::RANGE [(_475, 32)] []", - "EXPR [ (1, _475) (-1, _476) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _475) (-1, _476) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _476) (-1, _477) 0 ]", "BLACKBOX::RANGE [(_477, 32)] []", - "EXPR [ (1, _477) (-1, _478) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _477) (-1, _478) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _478) (-1, _479) 0 ]", "BLACKBOX::RANGE [(_479, 32)] []", - "EXPR [ (1, _479) (-1, _480) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _479) (-1, _480) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _480) (-1, _481) 0 ]", "BLACKBOX::RANGE [(_481, 32)] []", "EXPR [ (1, _441, _466) (1, _443, _467) (-1, _482) 0 ]", @@ -756,13 +756,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _481) (-1, _488) 0 ]", "EXPR [ (1, _441, _488) (-1, _489) 0 ]", "BLACKBOX::RANGE [(_489, 32)] []", - "EXPR [ (1, _489) (-1, _490) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _489) (-1, _490) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _490) (-1, _491) 0 ]", "BLACKBOX::RANGE [(_491, 32)] []", - "EXPR [ (1, _491) (-1, _492) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _491) (-1, _492) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _492) (-1, _493) 0 ]", "BLACKBOX::RANGE [(_493, 32)] []", - "EXPR [ (1, _493) (-1, _494) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _493) (-1, _494) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _494) (-1, _495) 0 ]", "BLACKBOX::RANGE [(_495, 32)] []", "EXPR [ (1, _441, _481) (1, _443, _482) (-1, _496) 0 ]", @@ -778,21 +778,21 @@ expression: artifact "EXPR [ (1, _495, _499) (1, _500, _501) (-1, _504) 0 ]", "EXPR [ (-1, _503) (-1, _505) 1 ]", "EXPR [ (1, _57, _441) (1, _443, _458) (-1, _506) 0 ]", - "EXPR [ (1, _441, _495) (-1, _2284) 0 ]", - "EXPR [ (1, _443, _496) (-1, _2285) 0 ]", - "EXPR [ (-1, _507) (1, _2090) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (1, _441, _495) (-1, _2227) 0 ]", + "EXPR [ (1, _443, _496) (-1, _2228) 0 ]", + "EXPR [ (-1, _507) (1, _2033) (1, _2227) (1, _2228) 0 ]", "EXPR [ (1, _503, _507) (-1, _508) 0 ]", "BLACKBOX::RANGE [(_508, 32)] []", - "EXPR [ (1, _508) (-1, _509) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _508) (-1, _509) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _509) (-1, _510) 0 ]", "BLACKBOX::RANGE [(_510, 32)] []", - "EXPR [ (1, _510) (-1, _511) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _510) (-1, _511) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _511) (-1, _512) 0 ]", "BLACKBOX::RANGE [(_512, 32)] []", - "EXPR [ (1, _512) (-1, _513) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _512) (-1, _513) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _513) (-1, _514) 0 ]", "BLACKBOX::RANGE [(_514, 32)] []", - "EXPR [ (-1, _515) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (-1, _515) (1, _2227) (1, _2228) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(514))], q_c: -4864 })], outputs: [Simple(Witness(516))]", "EXPR [ (1, _514, _516) (-4864, _516) (1, _517) -1 ]", "EXPR [ (1, _514, _517) (-4864, _517) 0 ]", @@ -802,13 +802,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _514) (-1, _521) 0 ]", "EXPR [ (1, _503, _521) (-1, _522) 0 ]", "BLACKBOX::RANGE [(_522, 32)] []", - "EXPR [ (1, _522) (-1, _523) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _522) (-1, _523) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _523) (-1, _524) 0 ]", "BLACKBOX::RANGE [(_524, 32)] []", - "EXPR [ (1, _524) (-1, _525) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _524) (-1, _525) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _525) (-1, _526) 0 ]", "BLACKBOX::RANGE [(_526, 32)] []", - "EXPR [ (1, _526) (-1, _527) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _526) (-1, _527) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _527) (-1, _528) 0 ]", "BLACKBOX::RANGE [(_528, 32)] []", "EXPR [ (1, _503, _514) (1, _505, _515) (-1, _529) 0 ]", @@ -822,13 +822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _528) (-1, _536) 0 ]", "EXPR [ (1, _503, _536) (-1, _537) 0 ]", "BLACKBOX::RANGE [(_537, 32)] []", - "EXPR [ (1, _537) (-1, _538) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _537) (-1, _538) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _538) (-1, _539) 0 ]", "BLACKBOX::RANGE [(_539, 32)] []", - "EXPR [ (1, _539) (-1, _540) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _539) (-1, _540) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _540) (-1, _541) 0 ]", "BLACKBOX::RANGE [(_541, 32)] []", - "EXPR [ (1, _541) (-1, _542) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _541) (-1, _542) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _542) (-1, _543) 0 ]", "BLACKBOX::RANGE [(_543, 32)] []", "EXPR [ (1, _503, _528) (1, _505, _529) (-1, _544) 0 ]", @@ -841,13 +841,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _543) (-1, _550) 0 ]", "EXPR [ (1, _503, _550) (-1, _551) 0 ]", "BLACKBOX::RANGE [(_551, 32)] []", - "EXPR [ (1, _551) (-1, _552) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _551) (-1, _552) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _552) (-1, _553) 0 ]", "BLACKBOX::RANGE [(_553, 32)] []", - "EXPR [ (1, _553) (-1, _554) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _553) (-1, _554) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _554) (-1, _555) 0 ]", "BLACKBOX::RANGE [(_555, 32)] []", - "EXPR [ (1, _555) (-1, _556) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _555) (-1, _556) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _556) (-1, _557) 0 ]", "BLACKBOX::RANGE [(_557, 32)] []", "EXPR [ (1, _503, _543) (1, _505, _544) (-1, _558) 0 ]", @@ -863,21 +863,21 @@ expression: artifact "EXPR [ (1, _557, _561) (1, _562, _563) (-1, _566) 0 ]", "EXPR [ (-1, _565) (-1, _567) 1 ]", "EXPR [ (1, _57, _503) (1, _505, _520) (-1, _568) 0 ]", - "EXPR [ (1, _503, _557) (-1, _2304) 0 ]", - "EXPR [ (1, _505, _558) (-1, _2305) 0 ]", - "EXPR [ (-1, _569) (1, _2090) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (1, _503, _557) (-1, _2247) 0 ]", + "EXPR [ (1, _505, _558) (-1, _2248) 0 ]", + "EXPR [ (-1, _569) (1, _2033) (1, _2247) (1, _2248) 0 ]", "EXPR [ (1, _565, _569) (-1, _570) 0 ]", "BLACKBOX::RANGE [(_570, 32)] []", - "EXPR [ (1, _570) (-1, _571) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _570) (-1, _571) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _571) (-1, _572) 0 ]", "BLACKBOX::RANGE [(_572, 32)] []", - "EXPR [ (1, _572) (-1, _573) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _572) (-1, _573) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _573) (-1, _574) 0 ]", "BLACKBOX::RANGE [(_574, 32)] []", - "EXPR [ (1, _574) (-1, _575) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _574) (-1, _575) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _575) (-1, _576) 0 ]", "BLACKBOX::RANGE [(_576, 32)] []", - "EXPR [ (-1, _577) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (-1, _577) (1, _2247) (1, _2248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(576))], q_c: -4864 })], outputs: [Simple(Witness(578))]", "EXPR [ (1, _576, _578) (-4864, _578) (1, _579) -1 ]", "EXPR [ (1, _576, _579) (-4864, _579) 0 ]", @@ -887,13 +887,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _576) (-1, _583) 0 ]", "EXPR [ (1, _565, _583) (-1, _584) 0 ]", "BLACKBOX::RANGE [(_584, 32)] []", - "EXPR [ (1, _584) (-1, _585) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _584) (-1, _585) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _585) (-1, _586) 0 ]", "BLACKBOX::RANGE [(_586, 32)] []", - "EXPR [ (1, _586) (-1, _587) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _586) (-1, _587) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _587) (-1, _588) 0 ]", "BLACKBOX::RANGE [(_588, 32)] []", - "EXPR [ (1, _588) (-1, _589) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _588) (-1, _589) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _589) (-1, _590) 0 ]", "BLACKBOX::RANGE [(_590, 32)] []", "EXPR [ (1, _565, _576) (1, _567, _577) (-1, _591) 0 ]", @@ -907,13 +907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _590) (-1, _598) 0 ]", "EXPR [ (1, _565, _598) (-1, _599) 0 ]", "BLACKBOX::RANGE [(_599, 32)] []", - "EXPR [ (1, _599) (-1, _600) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _599) (-1, _600) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _600) (-1, _601) 0 ]", "BLACKBOX::RANGE [(_601, 32)] []", - "EXPR [ (1, _601) (-1, _602) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _601) (-1, _602) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _602) (-1, _603) 0 ]", "BLACKBOX::RANGE [(_603, 32)] []", - "EXPR [ (1, _603) (-1, _604) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _603) (-1, _604) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _604) (-1, _605) 0 ]", "BLACKBOX::RANGE [(_605, 32)] []", "EXPR [ (1, _565, _590) (1, _567, _591) (-1, _606) 0 ]", @@ -926,13 +926,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _605) (-1, _612) 0 ]", "EXPR [ (1, _565, _612) (-1, _613) 0 ]", "BLACKBOX::RANGE [(_613, 32)] []", - "EXPR [ (1, _613) (-1, _614) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _613) (-1, _614) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _614) (-1, _615) 0 ]", "BLACKBOX::RANGE [(_615, 32)] []", - "EXPR [ (1, _615) (-1, _616) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _615) (-1, _616) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _616) (-1, _617) 0 ]", "BLACKBOX::RANGE [(_617, 32)] []", - "EXPR [ (1, _617) (-1, _618) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _617) (-1, _618) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _618) (-1, _619) 0 ]", "BLACKBOX::RANGE [(_619, 32)] []", "EXPR [ (1, _565, _605) (1, _567, _606) (-1, _620) 0 ]", @@ -948,21 +948,21 @@ expression: artifact "EXPR [ (1, _619, _623) (1, _624, _625) (-1, _628) 0 ]", "EXPR [ (-1, _627) (-1, _629) 1 ]", "EXPR [ (1, _57, _565) (1, _567, _582) (-1, _630) 0 ]", - "EXPR [ (1, _565, _619) (-1, _2324) 0 ]", - "EXPR [ (1, _567, _620) (-1, _2325) 0 ]", - "EXPR [ (-1, _631) (1, _2090) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (1, _565, _619) (-1, _2267) 0 ]", + "EXPR [ (1, _567, _620) (-1, _2268) 0 ]", + "EXPR [ (-1, _631) (1, _2033) (1, _2267) (1, _2268) 0 ]", "EXPR [ (1, _627, _631) (-1, _632) 0 ]", "BLACKBOX::RANGE [(_632, 32)] []", - "EXPR [ (1, _632) (-1, _633) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _632) (-1, _633) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _633) (-1, _634) 0 ]", "BLACKBOX::RANGE [(_634, 32)] []", - "EXPR [ (1, _634) (-1, _635) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _634) (-1, _635) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _635) (-1, _636) 0 ]", "BLACKBOX::RANGE [(_636, 32)] []", - "EXPR [ (1, _636) (-1, _637) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _636) (-1, _637) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _637) (-1, _638) 0 ]", "BLACKBOX::RANGE [(_638, 32)] []", - "EXPR [ (-1, _639) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (-1, _639) (1, _2267) (1, _2268) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(638))], q_c: -4864 })], outputs: [Simple(Witness(640))]", "EXPR [ (1, _638, _640) (-4864, _640) (1, _641) -1 ]", "EXPR [ (1, _638, _641) (-4864, _641) 0 ]", @@ -972,13 +972,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _638) (-1, _645) 0 ]", "EXPR [ (1, _627, _645) (-1, _646) 0 ]", "BLACKBOX::RANGE [(_646, 32)] []", - "EXPR [ (1, _646) (-1, _647) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _646) (-1, _647) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _647) (-1, _648) 0 ]", "BLACKBOX::RANGE [(_648, 32)] []", - "EXPR [ (1, _648) (-1, _649) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _648) (-1, _649) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _649) (-1, _650) 0 ]", "BLACKBOX::RANGE [(_650, 32)] []", - "EXPR [ (1, _650) (-1, _651) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _650) (-1, _651) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _651) (-1, _652) 0 ]", "BLACKBOX::RANGE [(_652, 32)] []", "EXPR [ (1, _627, _638) (1, _629, _639) (-1, _653) 0 ]", @@ -992,13 +992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _652) (-1, _660) 0 ]", "EXPR [ (1, _627, _660) (-1, _661) 0 ]", "BLACKBOX::RANGE [(_661, 32)] []", - "EXPR [ (1, _661) (-1, _662) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _661) (-1, _662) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _662) (-1, _663) 0 ]", "BLACKBOX::RANGE [(_663, 32)] []", - "EXPR [ (1, _663) (-1, _664) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _663) (-1, _664) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _664) (-1, _665) 0 ]", "BLACKBOX::RANGE [(_665, 32)] []", - "EXPR [ (1, _665) (-1, _666) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _665) (-1, _666) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _666) (-1, _667) 0 ]", "BLACKBOX::RANGE [(_667, 32)] []", "EXPR [ (1, _627, _652) (1, _629, _653) (-1, _668) 0 ]", @@ -1011,13 +1011,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _667) (-1, _674) 0 ]", "EXPR [ (1, _627, _674) (-1, _675) 0 ]", "BLACKBOX::RANGE [(_675, 32)] []", - "EXPR [ (1, _675) (-1, _676) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _675) (-1, _676) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _676) (-1, _677) 0 ]", "BLACKBOX::RANGE [(_677, 32)] []", - "EXPR [ (1, _677) (-1, _678) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _677) (-1, _678) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _678) (-1, _679) 0 ]", "BLACKBOX::RANGE [(_679, 32)] []", - "EXPR [ (1, _679) (-1, _680) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _679) (-1, _680) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _680) (-1, _681) 0 ]", "BLACKBOX::RANGE [(_681, 32)] []", "EXPR [ (1, _627, _667) (1, _629, _668) (-1, _682) 0 ]", @@ -1033,21 +1033,21 @@ expression: artifact "EXPR [ (1, _681, _685) (1, _686, _687) (-1, _690) 0 ]", "EXPR [ (-1, _689) (-1, _691) 1 ]", "EXPR [ (1, _57, _627) (1, _629, _644) (-1, _692) 0 ]", - "EXPR [ (1, _627, _681) (-1, _2344) 0 ]", - "EXPR [ (1, _629, _682) (-1, _2345) 0 ]", - "EXPR [ (-1, _693) (1, _2090) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (1, _627, _681) (-1, _2287) 0 ]", + "EXPR [ (1, _629, _682) (-1, _2288) 0 ]", + "EXPR [ (-1, _693) (1, _2033) (1, _2287) (1, _2288) 0 ]", "EXPR [ (1, _689, _693) (-1, _694) 0 ]", "BLACKBOX::RANGE [(_694, 32)] []", - "EXPR [ (1, _694) (-1, _695) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _694) (-1, _695) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _695) (-1, _696) 0 ]", "BLACKBOX::RANGE [(_696, 32)] []", - "EXPR [ (1, _696) (-1, _697) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _696) (-1, _697) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _697) (-1, _698) 0 ]", "BLACKBOX::RANGE [(_698, 32)] []", - "EXPR [ (1, _698) (-1, _699) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _698) (-1, _699) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _699) (-1, _700) 0 ]", "BLACKBOX::RANGE [(_700, 32)] []", - "EXPR [ (-1, _701) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (-1, _701) (1, _2287) (1, _2288) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(700))], q_c: -4864 })], outputs: [Simple(Witness(702))]", "EXPR [ (1, _700, _702) (-4864, _702) (1, _703) -1 ]", "EXPR [ (1, _700, _703) (-4864, _703) 0 ]", @@ -1057,13 +1057,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _700) (-1, _707) 0 ]", "EXPR [ (1, _689, _707) (-1, _708) 0 ]", "BLACKBOX::RANGE [(_708, 32)] []", - "EXPR [ (1, _708) (-1, _709) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _708) (-1, _709) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _709) (-1, _710) 0 ]", "BLACKBOX::RANGE [(_710, 32)] []", - "EXPR [ (1, _710) (-1, _711) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _710) (-1, _711) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _711) (-1, _712) 0 ]", "BLACKBOX::RANGE [(_712, 32)] []", - "EXPR [ (1, _712) (-1, _713) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _712) (-1, _713) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _713) (-1, _714) 0 ]", "BLACKBOX::RANGE [(_714, 32)] []", "EXPR [ (1, _689, _700) (1, _691, _701) (-1, _715) 0 ]", @@ -1077,13 +1077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _714) (-1, _722) 0 ]", "EXPR [ (1, _689, _722) (-1, _723) 0 ]", "BLACKBOX::RANGE [(_723, 32)] []", - "EXPR [ (1, _723) (-1, _724) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _723) (-1, _724) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _724) (-1, _725) 0 ]", "BLACKBOX::RANGE [(_725, 32)] []", - "EXPR [ (1, _725) (-1, _726) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _725) (-1, _726) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _726) (-1, _727) 0 ]", "BLACKBOX::RANGE [(_727, 32)] []", - "EXPR [ (1, _727) (-1, _728) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _727) (-1, _728) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _728) (-1, _729) 0 ]", "BLACKBOX::RANGE [(_729, 32)] []", "EXPR [ (1, _689, _714) (1, _691, _715) (-1, _730) 0 ]", @@ -1096,13 +1096,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _729) (-1, _736) 0 ]", "EXPR [ (1, _689, _736) (-1, _737) 0 ]", "BLACKBOX::RANGE [(_737, 32)] []", - "EXPR [ (1, _737) (-1, _738) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _737) (-1, _738) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _738) (-1, _739) 0 ]", "BLACKBOX::RANGE [(_739, 32)] []", - "EXPR [ (1, _739) (-1, _740) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _739) (-1, _740) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _740) (-1, _741) 0 ]", "BLACKBOX::RANGE [(_741, 32)] []", - "EXPR [ (1, _741) (-1, _742) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _741) (-1, _742) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _742) (-1, _743) 0 ]", "BLACKBOX::RANGE [(_743, 32)] []", "EXPR [ (1, _689, _729) (1, _691, _730) (-1, _744) 0 ]", @@ -1118,21 +1118,21 @@ expression: artifact "EXPR [ (1, _743, _747) (1, _748, _749) (-1, _752) 0 ]", "EXPR [ (-1, _751) (-1, _753) 1 ]", "EXPR [ (1, _57, _689) (1, _691, _706) (-1, _754) 0 ]", - "EXPR [ (1, _689, _743) (-1, _2364) 0 ]", - "EXPR [ (1, _691, _744) (-1, _2365) 0 ]", - "EXPR [ (-1, _755) (1, _2090) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (1, _689, _743) (-1, _2307) 0 ]", + "EXPR [ (1, _691, _744) (-1, _2308) 0 ]", + "EXPR [ (-1, _755) (1, _2033) (1, _2307) (1, _2308) 0 ]", "EXPR [ (1, _751, _755) (-1, _756) 0 ]", "BLACKBOX::RANGE [(_756, 32)] []", - "EXPR [ (1, _756) (-1, _757) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _756) (-1, _757) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _757) (-1, _758) 0 ]", "BLACKBOX::RANGE [(_758, 32)] []", - "EXPR [ (1, _758) (-1, _759) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _758) (-1, _759) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _759) (-1, _760) 0 ]", "BLACKBOX::RANGE [(_760, 32)] []", - "EXPR [ (1, _760) (-1, _761) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _760) (-1, _761) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _761) (-1, _762) 0 ]", "BLACKBOX::RANGE [(_762, 32)] []", - "EXPR [ (-1, _763) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (-1, _763) (1, _2307) (1, _2308) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(762))], q_c: -4864 })], outputs: [Simple(Witness(764))]", "EXPR [ (1, _762, _764) (-4864, _764) (1, _765) -1 ]", "EXPR [ (1, _762, _765) (-4864, _765) 0 ]", @@ -1142,13 +1142,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _762) (-1, _769) 0 ]", "EXPR [ (1, _751, _769) (-1, _770) 0 ]", "BLACKBOX::RANGE [(_770, 32)] []", - "EXPR [ (1, _770) (-1, _771) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _770) (-1, _771) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _771) (-1, _772) 0 ]", "BLACKBOX::RANGE [(_772, 32)] []", - "EXPR [ (1, _772) (-1, _773) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _772) (-1, _773) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _773) (-1, _774) 0 ]", "BLACKBOX::RANGE [(_774, 32)] []", - "EXPR [ (1, _774) (-1, _775) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _774) (-1, _775) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _775) (-1, _776) 0 ]", "BLACKBOX::RANGE [(_776, 32)] []", "EXPR [ (1, _751, _762) (1, _753, _763) (-1, _777) 0 ]", @@ -1162,13 +1162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _776) (-1, _784) 0 ]", "EXPR [ (1, _751, _784) (-1, _785) 0 ]", "BLACKBOX::RANGE [(_785, 32)] []", - "EXPR [ (1, _785) (-1, _786) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _785) (-1, _786) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _786) (-1, _787) 0 ]", "BLACKBOX::RANGE [(_787, 32)] []", - "EXPR [ (1, _787) (-1, _788) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _787) (-1, _788) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _788) (-1, _789) 0 ]", "BLACKBOX::RANGE [(_789, 32)] []", - "EXPR [ (1, _789) (-1, _790) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _789) (-1, _790) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _790) (-1, _791) 0 ]", "BLACKBOX::RANGE [(_791, 32)] []", "EXPR [ (1, _751, _776) (1, _753, _777) (-1, _792) 0 ]", @@ -1181,13 +1181,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _791) (-1, _798) 0 ]", "EXPR [ (1, _751, _798) (-1, _799) 0 ]", "BLACKBOX::RANGE [(_799, 32)] []", - "EXPR [ (1, _799) (-1, _800) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _799) (-1, _800) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _800) (-1, _801) 0 ]", "BLACKBOX::RANGE [(_801, 32)] []", - "EXPR [ (1, _801) (-1, _802) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _801) (-1, _802) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _802) (-1, _803) 0 ]", "BLACKBOX::RANGE [(_803, 32)] []", - "EXPR [ (1, _803) (-1, _804) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _803) (-1, _804) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _804) (-1, _805) 0 ]", "BLACKBOX::RANGE [(_805, 32)] []", "EXPR [ (1, _751, _791) (1, _753, _792) (-1, _806) 0 ]", @@ -1203,21 +1203,21 @@ expression: artifact "EXPR [ (1, _805, _809) (1, _810, _811) (-1, _814) 0 ]", "EXPR [ (-1, _813) (-1, _815) 1 ]", "EXPR [ (1, _57, _751) (1, _753, _768) (-1, _816) 0 ]", - "EXPR [ (1, _751, _805) (-1, _2384) 0 ]", - "EXPR [ (1, _753, _806) (-1, _2385) 0 ]", - "EXPR [ (-1, _817) (1, _2090) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (1, _751, _805) (-1, _2327) 0 ]", + "EXPR [ (1, _753, _806) (-1, _2328) 0 ]", + "EXPR [ (-1, _817) (1, _2033) (1, _2327) (1, _2328) 0 ]", "EXPR [ (1, _813, _817) (-1, _818) 0 ]", "BLACKBOX::RANGE [(_818, 32)] []", - "EXPR [ (1, _818) (-1, _819) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _818) (-1, _819) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _819) (-1, _820) 0 ]", "BLACKBOX::RANGE [(_820, 32)] []", - "EXPR [ (1, _820) (-1, _821) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _820) (-1, _821) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _821) (-1, _822) 0 ]", "BLACKBOX::RANGE [(_822, 32)] []", - "EXPR [ (1, _822) (-1, _823) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _822) (-1, _823) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _823) (-1, _824) 0 ]", "BLACKBOX::RANGE [(_824, 32)] []", - "EXPR [ (-1, _825) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (-1, _825) (1, _2327) (1, _2328) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(824))], q_c: -4864 })], outputs: [Simple(Witness(826))]", "EXPR [ (1, _824, _826) (-4864, _826) (1, _827) -1 ]", "EXPR [ (1, _824, _827) (-4864, _827) 0 ]", @@ -1227,13 +1227,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _824) (-1, _831) 0 ]", "EXPR [ (1, _813, _831) (-1, _832) 0 ]", "BLACKBOX::RANGE [(_832, 32)] []", - "EXPR [ (1, _832) (-1, _833) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _832) (-1, _833) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _833) (-1, _834) 0 ]", "BLACKBOX::RANGE [(_834, 32)] []", - "EXPR [ (1, _834) (-1, _835) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _834) (-1, _835) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _835) (-1, _836) 0 ]", "BLACKBOX::RANGE [(_836, 32)] []", - "EXPR [ (1, _836) (-1, _837) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _836) (-1, _837) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _837) (-1, _838) 0 ]", "BLACKBOX::RANGE [(_838, 32)] []", "EXPR [ (1, _813, _824) (1, _815, _825) (-1, _839) 0 ]", @@ -1247,13 +1247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _838) (-1, _846) 0 ]", "EXPR [ (1, _813, _846) (-1, _847) 0 ]", "BLACKBOX::RANGE [(_847, 32)] []", - "EXPR [ (1, _847) (-1, _848) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _847) (-1, _848) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _848) (-1, _849) 0 ]", "BLACKBOX::RANGE [(_849, 32)] []", - "EXPR [ (1, _849) (-1, _850) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _849) (-1, _850) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _850) (-1, _851) 0 ]", "BLACKBOX::RANGE [(_851, 32)] []", - "EXPR [ (1, _851) (-1, _852) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _851) (-1, _852) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _852) (-1, _853) 0 ]", "BLACKBOX::RANGE [(_853, 32)] []", "EXPR [ (1, _813, _838) (1, _815, _839) (-1, _854) 0 ]", @@ -1266,13 +1266,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _853) (-1, _860) 0 ]", "EXPR [ (1, _813, _860) (-1, _861) 0 ]", "BLACKBOX::RANGE [(_861, 32)] []", - "EXPR [ (1, _861) (-1, _862) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _861) (-1, _862) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _862) (-1, _863) 0 ]", "BLACKBOX::RANGE [(_863, 32)] []", - "EXPR [ (1, _863) (-1, _864) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _863) (-1, _864) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _864) (-1, _865) 0 ]", "BLACKBOX::RANGE [(_865, 32)] []", - "EXPR [ (1, _865) (-1, _866) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _865) (-1, _866) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _866) (-1, _867) 0 ]", "BLACKBOX::RANGE [(_867, 32)] []", "EXPR [ (1, _813, _853) (1, _815, _854) (-1, _868) 0 ]", @@ -1288,21 +1288,21 @@ expression: artifact "EXPR [ (1, _867, _871) (1, _872, _873) (-1, _876) 0 ]", "EXPR [ (-1, _875) (-1, _877) 1 ]", "EXPR [ (1, _57, _813) (1, _815, _830) (-1, _878) 0 ]", - "EXPR [ (1, _813, _867) (-1, _2404) 0 ]", - "EXPR [ (1, _815, _868) (-1, _2405) 0 ]", - "EXPR [ (-1, _879) (1, _2090) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (1, _813, _867) (-1, _2347) 0 ]", + "EXPR [ (1, _815, _868) (-1, _2348) 0 ]", + "EXPR [ (-1, _879) (1, _2033) (1, _2347) (1, _2348) 0 ]", "EXPR [ (1, _875, _879) (-1, _880) 0 ]", "BLACKBOX::RANGE [(_880, 32)] []", - "EXPR [ (1, _880) (-1, _881) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _880) (-1, _881) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _881) (-1, _882) 0 ]", "BLACKBOX::RANGE [(_882, 32)] []", - "EXPR [ (1, _882) (-1, _883) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _882) (-1, _883) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _883) (-1, _884) 0 ]", "BLACKBOX::RANGE [(_884, 32)] []", - "EXPR [ (1, _884) (-1, _885) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _884) (-1, _885) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _885) (-1, _886) 0 ]", "BLACKBOX::RANGE [(_886, 32)] []", - "EXPR [ (-1, _887) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (-1, _887) (1, _2347) (1, _2348) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(886))], q_c: -4864 })], outputs: [Simple(Witness(888))]", "EXPR [ (1, _886, _888) (-4864, _888) (1, _889) -1 ]", "EXPR [ (1, _886, _889) (-4864, _889) 0 ]", @@ -1312,13 +1312,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _886) (-1, _893) 0 ]", "EXPR [ (1, _875, _893) (-1, _894) 0 ]", "BLACKBOX::RANGE [(_894, 32)] []", - "EXPR [ (1, _894) (-1, _895) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _894) (-1, _895) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _895) (-1, _896) 0 ]", "BLACKBOX::RANGE [(_896, 32)] []", - "EXPR [ (1, _896) (-1, _897) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _896) (-1, _897) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _897) (-1, _898) 0 ]", "BLACKBOX::RANGE [(_898, 32)] []", - "EXPR [ (1, _898) (-1, _899) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _898) (-1, _899) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _899) (-1, _900) 0 ]", "BLACKBOX::RANGE [(_900, 32)] []", "EXPR [ (1, _875, _886) (1, _877, _887) (-1, _901) 0 ]", @@ -1332,13 +1332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _900) (-1, _908) 0 ]", "EXPR [ (1, _875, _908) (-1, _909) 0 ]", "BLACKBOX::RANGE [(_909, 32)] []", - "EXPR [ (1, _909) (-1, _910) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _909) (-1, _910) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _910) (-1, _911) 0 ]", "BLACKBOX::RANGE [(_911, 32)] []", - "EXPR [ (1, _911) (-1, _912) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _911) (-1, _912) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _912) (-1, _913) 0 ]", "BLACKBOX::RANGE [(_913, 32)] []", - "EXPR [ (1, _913) (-1, _914) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _913) (-1, _914) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _914) (-1, _915) 0 ]", "BLACKBOX::RANGE [(_915, 32)] []", "EXPR [ (1, _875, _900) (1, _877, _901) (-1, _916) 0 ]", @@ -1351,13 +1351,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _915) (-1, _922) 0 ]", "EXPR [ (1, _875, _922) (-1, _923) 0 ]", "BLACKBOX::RANGE [(_923, 32)] []", - "EXPR [ (1, _923) (-1, _924) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _923) (-1, _924) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _924) (-1, _925) 0 ]", "BLACKBOX::RANGE [(_925, 32)] []", - "EXPR [ (1, _925) (-1, _926) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _925) (-1, _926) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _926) (-1, _927) 0 ]", "BLACKBOX::RANGE [(_927, 32)] []", - "EXPR [ (1, _927) (-1, _928) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _927) (-1, _928) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _928) (-1, _929) 0 ]", "BLACKBOX::RANGE [(_929, 32)] []", "EXPR [ (1, _875, _915) (1, _877, _916) (-1, _930) 0 ]", @@ -1373,21 +1373,21 @@ expression: artifact "EXPR [ (1, _929, _933) (1, _934, _935) (-1, _938) 0 ]", "EXPR [ (-1, _937) (-1, _939) 1 ]", "EXPR [ (1, _57, _875) (1, _877, _892) (-1, _940) 0 ]", - "EXPR [ (1, _875, _929) (-1, _2424) 0 ]", - "EXPR [ (1, _877, _930) (-1, _2425) 0 ]", - "EXPR [ (-1, _941) (1, _2090) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (1, _875, _929) (-1, _2367) 0 ]", + "EXPR [ (1, _877, _930) (-1, _2368) 0 ]", + "EXPR [ (-1, _941) (1, _2033) (1, _2367) (1, _2368) 0 ]", "EXPR [ (1, _937, _941) (-1, _942) 0 ]", "BLACKBOX::RANGE [(_942, 32)] []", - "EXPR [ (1, _942) (-1, _943) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _942) (-1, _943) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _943) (-1, _944) 0 ]", "BLACKBOX::RANGE [(_944, 32)] []", - "EXPR [ (1, _944) (-1, _945) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _944) (-1, _945) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _945) (-1, _946) 0 ]", "BLACKBOX::RANGE [(_946, 32)] []", - "EXPR [ (1, _946) (-1, _947) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _946) (-1, _947) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _947) (-1, _948) 0 ]", "BLACKBOX::RANGE [(_948, 32)] []", - "EXPR [ (-1, _949) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (-1, _949) (1, _2367) (1, _2368) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(948))], q_c: -4864 })], outputs: [Simple(Witness(950))]", "EXPR [ (1, _948, _950) (-4864, _950) (1, _951) -1 ]", "EXPR [ (1, _948, _951) (-4864, _951) 0 ]", @@ -1397,13 +1397,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _948) (-1, _955) 0 ]", "EXPR [ (1, _937, _955) (-1, _956) 0 ]", "BLACKBOX::RANGE [(_956, 32)] []", - "EXPR [ (1, _956) (-1, _957) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _956) (-1, _957) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _957) (-1, _958) 0 ]", "BLACKBOX::RANGE [(_958, 32)] []", - "EXPR [ (1, _958) (-1, _959) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _958) (-1, _959) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _959) (-1, _960) 0 ]", "BLACKBOX::RANGE [(_960, 32)] []", - "EXPR [ (1, _960) (-1, _961) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _960) (-1, _961) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _961) (-1, _962) 0 ]", "BLACKBOX::RANGE [(_962, 32)] []", "EXPR [ (1, _937, _948) (1, _939, _949) (-1, _963) 0 ]", @@ -1417,13 +1417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _962) (-1, _970) 0 ]", "EXPR [ (1, _937, _970) (-1, _971) 0 ]", "BLACKBOX::RANGE [(_971, 32)] []", - "EXPR [ (1, _971) (-1, _972) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _971) (-1, _972) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _972) (-1, _973) 0 ]", "BLACKBOX::RANGE [(_973, 32)] []", - "EXPR [ (1, _973) (-1, _974) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _973) (-1, _974) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _974) (-1, _975) 0 ]", "BLACKBOX::RANGE [(_975, 32)] []", - "EXPR [ (1, _975) (-1, _976) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _975) (-1, _976) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _976) (-1, _977) 0 ]", "BLACKBOX::RANGE [(_977, 32)] []", "EXPR [ (1, _937, _962) (1, _939, _963) (-1, _978) 0 ]", @@ -1436,13 +1436,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _977) (-1, _984) 0 ]", "EXPR [ (1, _937, _984) (-1, _985) 0 ]", "BLACKBOX::RANGE [(_985, 32)] []", - "EXPR [ (1, _985) (-1, _986) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _985) (-1, _986) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _986) (-1, _987) 0 ]", "BLACKBOX::RANGE [(_987, 32)] []", - "EXPR [ (1, _987) (-1, _988) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _987) (-1, _988) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _988) (-1, _989) 0 ]", "BLACKBOX::RANGE [(_989, 32)] []", - "EXPR [ (1, _989) (-1, _990) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _989) (-1, _990) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _990) (-1, _991) 0 ]", "BLACKBOX::RANGE [(_991, 32)] []", "EXPR [ (1, _937, _977) (1, _939, _978) (-1, _992) 0 ]", @@ -1458,21 +1458,21 @@ expression: artifact "EXPR [ (1, _991, _995) (1, _996, _997) (-1, _1000) 0 ]", "EXPR [ (-1, _999) (-1, _1001) 1 ]", "EXPR [ (1, _57, _937) (1, _939, _954) (-1, _1002) 0 ]", - "EXPR [ (1, _937, _991) (-1, _2444) 0 ]", - "EXPR [ (1, _939, _992) (-1, _2445) 0 ]", - "EXPR [ (-1, _1003) (1, _2090) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (1, _937, _991) (-1, _2387) 0 ]", + "EXPR [ (1, _939, _992) (-1, _2388) 0 ]", + "EXPR [ (-1, _1003) (1, _2033) (1, _2387) (1, _2388) 0 ]", "EXPR [ (1, _999, _1003) (-1, _1004) 0 ]", "BLACKBOX::RANGE [(_1004, 32)] []", - "EXPR [ (1, _1004) (-1, _1005) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1004) (-1, _1005) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1005) (-1, _1006) 0 ]", "BLACKBOX::RANGE [(_1006, 32)] []", - "EXPR [ (1, _1006) (-1, _1007) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1006) (-1, _1007) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1007) (-1, _1008) 0 ]", "BLACKBOX::RANGE [(_1008, 32)] []", - "EXPR [ (1, _1008) (-1, _1009) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1008) (-1, _1009) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1009) (-1, _1010) 0 ]", "BLACKBOX::RANGE [(_1010, 32)] []", - "EXPR [ (-1, _1011) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (-1, _1011) (1, _2387) (1, _2388) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1010))], q_c: -4864 })], outputs: [Simple(Witness(1012))]", "EXPR [ (1, _1010, _1012) (-4864, _1012) (1, _1013) -1 ]", "EXPR [ (1, _1010, _1013) (-4864, _1013) 0 ]", @@ -1482,13 +1482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1010) (-1, _1017) 0 ]", "EXPR [ (1, _999, _1017) (-1, _1018) 0 ]", "BLACKBOX::RANGE [(_1018, 32)] []", - "EXPR [ (1, _1018) (-1, _1019) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1018) (-1, _1019) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1019) (-1, _1020) 0 ]", "BLACKBOX::RANGE [(_1020, 32)] []", - "EXPR [ (1, _1020) (-1, _1021) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1020) (-1, _1021) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1021) (-1, _1022) 0 ]", "BLACKBOX::RANGE [(_1022, 32)] []", - "EXPR [ (1, _1022) (-1, _1023) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1022) (-1, _1023) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1023) (-1, _1024) 0 ]", "BLACKBOX::RANGE [(_1024, 32)] []", "EXPR [ (1, _999, _1010) (1, _1001, _1011) (-1, _1025) 0 ]", @@ -1502,13 +1502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1024) (-1, _1032) 0 ]", "EXPR [ (1, _999, _1032) (-1, _1033) 0 ]", "BLACKBOX::RANGE [(_1033, 32)] []", - "EXPR [ (1, _1033) (-1, _1034) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1033) (-1, _1034) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1034) (-1, _1035) 0 ]", "BLACKBOX::RANGE [(_1035, 32)] []", - "EXPR [ (1, _1035) (-1, _1036) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1035) (-1, _1036) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1036) (-1, _1037) 0 ]", "BLACKBOX::RANGE [(_1037, 32)] []", - "EXPR [ (1, _1037) (-1, _1038) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1037) (-1, _1038) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1038) (-1, _1039) 0 ]", "BLACKBOX::RANGE [(_1039, 32)] []", "EXPR [ (1, _999, _1024) (1, _1001, _1025) (-1, _1040) 0 ]", @@ -1521,13 +1521,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1039) (-1, _1046) 0 ]", "EXPR [ (1, _999, _1046) (-1, _1047) 0 ]", "BLACKBOX::RANGE [(_1047, 32)] []", - "EXPR [ (1, _1047) (-1, _1048) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1047) (-1, _1048) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1048) (-1, _1049) 0 ]", "BLACKBOX::RANGE [(_1049, 32)] []", - "EXPR [ (1, _1049) (-1, _1050) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1049) (-1, _1050) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1050) (-1, _1051) 0 ]", "BLACKBOX::RANGE [(_1051, 32)] []", - "EXPR [ (1, _1051) (-1, _1052) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1051) (-1, _1052) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1052) (-1, _1053) 0 ]", "BLACKBOX::RANGE [(_1053, 32)] []", "EXPR [ (1, _999, _1039) (1, _1001, _1040) (-1, _1054) 0 ]", @@ -1543,21 +1543,21 @@ expression: artifact "EXPR [ (1, _1053, _1057) (1, _1058, _1059) (-1, _1062) 0 ]", "EXPR [ (-1, _1061) (-1, _1063) 1 ]", "EXPR [ (1, _57, _999) (1, _1001, _1016) (-1, _1064) 0 ]", - "EXPR [ (1, _999, _1053) (-1, _2464) 0 ]", - "EXPR [ (1, _1001, _1054) (-1, _2465) 0 ]", - "EXPR [ (-1, _1065) (1, _2090) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (1, _999, _1053) (-1, _2407) 0 ]", + "EXPR [ (1, _1001, _1054) (-1, _2408) 0 ]", + "EXPR [ (-1, _1065) (1, _2033) (1, _2407) (1, _2408) 0 ]", "EXPR [ (1, _1061, _1065) (-1, _1066) 0 ]", "BLACKBOX::RANGE [(_1066, 32)] []", - "EXPR [ (1, _1066) (-1, _1067) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1066) (-1, _1067) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1067) (-1, _1068) 0 ]", "BLACKBOX::RANGE [(_1068, 32)] []", - "EXPR [ (1, _1068) (-1, _1069) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1068) (-1, _1069) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1069) (-1, _1070) 0 ]", "BLACKBOX::RANGE [(_1070, 32)] []", - "EXPR [ (1, _1070) (-1, _1071) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1070) (-1, _1071) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1071) (-1, _1072) 0 ]", "BLACKBOX::RANGE [(_1072, 32)] []", - "EXPR [ (-1, _1073) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (-1, _1073) (1, _2407) (1, _2408) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1072))], q_c: -4864 })], outputs: [Simple(Witness(1074))]", "EXPR [ (1, _1072, _1074) (-4864, _1074) (1, _1075) -1 ]", "EXPR [ (1, _1072, _1075) (-4864, _1075) 0 ]", @@ -1567,13 +1567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1072) (-1, _1079) 0 ]", "EXPR [ (1, _1061, _1079) (-1, _1080) 0 ]", "BLACKBOX::RANGE [(_1080, 32)] []", - "EXPR [ (1, _1080) (-1, _1081) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1080) (-1, _1081) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1081) (-1, _1082) 0 ]", "BLACKBOX::RANGE [(_1082, 32)] []", - "EXPR [ (1, _1082) (-1, _1083) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1082) (-1, _1083) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1083) (-1, _1084) 0 ]", "BLACKBOX::RANGE [(_1084, 32)] []", - "EXPR [ (1, _1084) (-1, _1085) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1084) (-1, _1085) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1085) (-1, _1086) 0 ]", "BLACKBOX::RANGE [(_1086, 32)] []", "EXPR [ (1, _1061, _1072) (1, _1063, _1073) (-1, _1087) 0 ]", @@ -1587,13 +1587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1086) (-1, _1094) 0 ]", "EXPR [ (1, _1061, _1094) (-1, _1095) 0 ]", "BLACKBOX::RANGE [(_1095, 32)] []", - "EXPR [ (1, _1095) (-1, _1096) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1095) (-1, _1096) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1096) (-1, _1097) 0 ]", "BLACKBOX::RANGE [(_1097, 32)] []", - "EXPR [ (1, _1097) (-1, _1098) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1097) (-1, _1098) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1098) (-1, _1099) 0 ]", "BLACKBOX::RANGE [(_1099, 32)] []", - "EXPR [ (1, _1099) (-1, _1100) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1099) (-1, _1100) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1100) (-1, _1101) 0 ]", "BLACKBOX::RANGE [(_1101, 32)] []", "EXPR [ (1, _1061, _1086) (1, _1063, _1087) (-1, _1102) 0 ]", @@ -1606,13 +1606,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1101) (-1, _1108) 0 ]", "EXPR [ (1, _1061, _1108) (-1, _1109) 0 ]", "BLACKBOX::RANGE [(_1109, 32)] []", - "EXPR [ (1, _1109) (-1, _1110) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1109) (-1, _1110) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1110) (-1, _1111) 0 ]", "BLACKBOX::RANGE [(_1111, 32)] []", - "EXPR [ (1, _1111) (-1, _1112) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1111) (-1, _1112) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1112) (-1, _1113) 0 ]", "BLACKBOX::RANGE [(_1113, 32)] []", - "EXPR [ (1, _1113) (-1, _1114) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1113) (-1, _1114) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1114) (-1, _1115) 0 ]", "BLACKBOX::RANGE [(_1115, 32)] []", "EXPR [ (1, _1061, _1101) (1, _1063, _1102) (-1, _1116) 0 ]", @@ -1628,21 +1628,21 @@ expression: artifact "EXPR [ (1, _1115, _1119) (1, _1120, _1121) (-1, _1124) 0 ]", "EXPR [ (-1, _1123) (-1, _1125) 1 ]", "EXPR [ (1, _57, _1061) (1, _1063, _1078) (-1, _1126) 0 ]", - "EXPR [ (1, _1061, _1115) (-1, _2484) 0 ]", - "EXPR [ (1, _1063, _1116) (-1, _2485) 0 ]", - "EXPR [ (-1, _1127) (1, _2090) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (1, _1061, _1115) (-1, _2427) 0 ]", + "EXPR [ (1, _1063, _1116) (-1, _2428) 0 ]", + "EXPR [ (-1, _1127) (1, _2033) (1, _2427) (1, _2428) 0 ]", "EXPR [ (1, _1123, _1127) (-1, _1128) 0 ]", "BLACKBOX::RANGE [(_1128, 32)] []", - "EXPR [ (1, _1128) (-1, _1129) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1128) (-1, _1129) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1129) (-1, _1130) 0 ]", "BLACKBOX::RANGE [(_1130, 32)] []", - "EXPR [ (1, _1130) (-1, _1131) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1130) (-1, _1131) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1131) (-1, _1132) 0 ]", "BLACKBOX::RANGE [(_1132, 32)] []", - "EXPR [ (1, _1132) (-1, _1133) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1132) (-1, _1133) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1133) (-1, _1134) 0 ]", "BLACKBOX::RANGE [(_1134, 32)] []", - "EXPR [ (-1, _1135) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (-1, _1135) (1, _2427) (1, _2428) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1134))], q_c: -4864 })], outputs: [Simple(Witness(1136))]", "EXPR [ (1, _1134, _1136) (-4864, _1136) (1, _1137) -1 ]", "EXPR [ (1, _1134, _1137) (-4864, _1137) 0 ]", @@ -1652,13 +1652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1134) (-1, _1141) 0 ]", "EXPR [ (1, _1123, _1141) (-1, _1142) 0 ]", "BLACKBOX::RANGE [(_1142, 32)] []", - "EXPR [ (1, _1142) (-1, _1143) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1142) (-1, _1143) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1143) (-1, _1144) 0 ]", "BLACKBOX::RANGE [(_1144, 32)] []", - "EXPR [ (1, _1144) (-1, _1145) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1144) (-1, _1145) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1145) (-1, _1146) 0 ]", "BLACKBOX::RANGE [(_1146, 32)] []", - "EXPR [ (1, _1146) (-1, _1147) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1146) (-1, _1147) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1147) (-1, _1148) 0 ]", "BLACKBOX::RANGE [(_1148, 32)] []", "EXPR [ (1, _1123, _1134) (1, _1125, _1135) (-1, _1149) 0 ]", @@ -1672,13 +1672,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1148) (-1, _1156) 0 ]", "EXPR [ (1, _1123, _1156) (-1, _1157) 0 ]", "BLACKBOX::RANGE [(_1157, 32)] []", - "EXPR [ (1, _1157) (-1, _1158) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1157) (-1, _1158) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1158) (-1, _1159) 0 ]", "BLACKBOX::RANGE [(_1159, 32)] []", - "EXPR [ (1, _1159) (-1, _1160) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1159) (-1, _1160) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1160) (-1, _1161) 0 ]", "BLACKBOX::RANGE [(_1161, 32)] []", - "EXPR [ (1, _1161) (-1, _1162) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1161) (-1, _1162) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1162) (-1, _1163) 0 ]", "BLACKBOX::RANGE [(_1163, 32)] []", "EXPR [ (1, _1123, _1148) (1, _1125, _1149) (-1, _1164) 0 ]", @@ -1691,13 +1691,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1163) (-1, _1170) 0 ]", "EXPR [ (1, _1123, _1170) (-1, _1171) 0 ]", "BLACKBOX::RANGE [(_1171, 32)] []", - "EXPR [ (1, _1171) (-1, _1172) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1171) (-1, _1172) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1172) (-1, _1173) 0 ]", "BLACKBOX::RANGE [(_1173, 32)] []", - "EXPR [ (1, _1173) (-1, _1174) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1173) (-1, _1174) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1174) (-1, _1175) 0 ]", "BLACKBOX::RANGE [(_1175, 32)] []", - "EXPR [ (1, _1175) (-1, _1176) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1175) (-1, _1176) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1176) (-1, _1177) 0 ]", "BLACKBOX::RANGE [(_1177, 32)] []", "EXPR [ (1, _1123, _1163) (1, _1125, _1164) (-1, _1178) 0 ]", @@ -1713,21 +1713,21 @@ expression: artifact "EXPR [ (1, _1177, _1181) (1, _1182, _1183) (-1, _1186) 0 ]", "EXPR [ (-1, _1185) (-1, _1187) 1 ]", "EXPR [ (1, _57, _1123) (1, _1125, _1140) (-1, _1188) 0 ]", - "EXPR [ (1, _1123, _1177) (-1, _2504) 0 ]", - "EXPR [ (1, _1125, _1178) (-1, _2505) 0 ]", - "EXPR [ (-1, _1189) (1, _2090) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (1, _1123, _1177) (-1, _2447) 0 ]", + "EXPR [ (1, _1125, _1178) (-1, _2448) 0 ]", + "EXPR [ (-1, _1189) (1, _2033) (1, _2447) (1, _2448) 0 ]", "EXPR [ (1, _1185, _1189) (-1, _1190) 0 ]", "BLACKBOX::RANGE [(_1190, 32)] []", - "EXPR [ (1, _1190) (-1, _1191) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1190) (-1, _1191) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1191) (-1, _1192) 0 ]", "BLACKBOX::RANGE [(_1192, 32)] []", - "EXPR [ (1, _1192) (-1, _1193) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1192) (-1, _1193) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1193) (-1, _1194) 0 ]", "BLACKBOX::RANGE [(_1194, 32)] []", - "EXPR [ (1, _1194) (-1, _1195) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1194) (-1, _1195) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1195) (-1, _1196) 0 ]", "BLACKBOX::RANGE [(_1196, 32)] []", - "EXPR [ (-1, _1197) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (-1, _1197) (1, _2447) (1, _2448) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1196))], q_c: -4864 })], outputs: [Simple(Witness(1198))]", "EXPR [ (1, _1196, _1198) (-4864, _1198) (1, _1199) -1 ]", "EXPR [ (1, _1196, _1199) (-4864, _1199) 0 ]", @@ -1737,13 +1737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1196) (-1, _1203) 0 ]", "EXPR [ (1, _1185, _1203) (-1, _1204) 0 ]", "BLACKBOX::RANGE [(_1204, 32)] []", - "EXPR [ (1, _1204) (-1, _1205) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1204) (-1, _1205) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1205) (-1, _1206) 0 ]", "BLACKBOX::RANGE [(_1206, 32)] []", - "EXPR [ (1, _1206) (-1, _1207) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1206) (-1, _1207) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1207) (-1, _1208) 0 ]", "BLACKBOX::RANGE [(_1208, 32)] []", - "EXPR [ (1, _1208) (-1, _1209) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1208) (-1, _1209) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1209) (-1, _1210) 0 ]", "BLACKBOX::RANGE [(_1210, 32)] []", "EXPR [ (1, _1185, _1196) (1, _1187, _1197) (-1, _1211) 0 ]", @@ -1757,13 +1757,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1210) (-1, _1218) 0 ]", "EXPR [ (1, _1185, _1218) (-1, _1219) 0 ]", "BLACKBOX::RANGE [(_1219, 32)] []", - "EXPR [ (1, _1219) (-1, _1220) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1219) (-1, _1220) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1220) (-1, _1221) 0 ]", "BLACKBOX::RANGE [(_1221, 32)] []", - "EXPR [ (1, _1221) (-1, _1222) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1221) (-1, _1222) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1222) (-1, _1223) 0 ]", "BLACKBOX::RANGE [(_1223, 32)] []", - "EXPR [ (1, _1223) (-1, _1224) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1223) (-1, _1224) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1224) (-1, _1225) 0 ]", "BLACKBOX::RANGE [(_1225, 32)] []", "EXPR [ (1, _1185, _1210) (1, _1187, _1211) (-1, _1226) 0 ]", @@ -1776,13 +1776,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1225) (-1, _1232) 0 ]", "EXPR [ (1, _1185, _1232) (-1, _1233) 0 ]", "BLACKBOX::RANGE [(_1233, 32)] []", - "EXPR [ (1, _1233) (-1, _1234) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1233) (-1, _1234) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1234) (-1, _1235) 0 ]", "BLACKBOX::RANGE [(_1235, 32)] []", - "EXPR [ (1, _1235) (-1, _1236) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1235) (-1, _1236) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1236) (-1, _1237) 0 ]", "BLACKBOX::RANGE [(_1237, 32)] []", - "EXPR [ (1, _1237) (-1, _1238) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1237) (-1, _1238) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1238) (-1, _1239) 0 ]", "BLACKBOX::RANGE [(_1239, 32)] []", "EXPR [ (1, _1185, _1225) (1, _1187, _1226) (-1, _1240) 0 ]", @@ -1798,21 +1798,21 @@ expression: artifact "EXPR [ (1, _1239, _1243) (1, _1244, _1245) (-1, _1248) 0 ]", "EXPR [ (-1, _1247) (-1, _1249) 1 ]", "EXPR [ (1, _57, _1185) (1, _1187, _1202) (-1, _1250) 0 ]", - "EXPR [ (1, _1185, _1239) (-1, _2524) 0 ]", - "EXPR [ (1, _1187, _1240) (-1, _2525) 0 ]", - "EXPR [ (-1, _1251) (1, _2090) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (1, _1185, _1239) (-1, _2467) 0 ]", + "EXPR [ (1, _1187, _1240) (-1, _2468) 0 ]", + "EXPR [ (-1, _1251) (1, _2033) (1, _2467) (1, _2468) 0 ]", "EXPR [ (1, _1247, _1251) (-1, _1252) 0 ]", "BLACKBOX::RANGE [(_1252, 32)] []", - "EXPR [ (1, _1252) (-1, _1253) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1252) (-1, _1253) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1253) (-1, _1254) 0 ]", "BLACKBOX::RANGE [(_1254, 32)] []", - "EXPR [ (1, _1254) (-1, _1255) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1254) (-1, _1255) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1255) (-1, _1256) 0 ]", "BLACKBOX::RANGE [(_1256, 32)] []", - "EXPR [ (1, _1256) (-1, _1257) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1256) (-1, _1257) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1257) (-1, _1258) 0 ]", "BLACKBOX::RANGE [(_1258, 32)] []", - "EXPR [ (-1, _1259) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (-1, _1259) (1, _2467) (1, _2468) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1258))], q_c: -4864 })], outputs: [Simple(Witness(1260))]", "EXPR [ (1, _1258, _1260) (-4864, _1260) (1, _1261) -1 ]", "EXPR [ (1, _1258, _1261) (-4864, _1261) 0 ]", @@ -1822,13 +1822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1258) (-1, _1265) 0 ]", "EXPR [ (1, _1247, _1265) (-1, _1266) 0 ]", "BLACKBOX::RANGE [(_1266, 32)] []", - "EXPR [ (1, _1266) (-1, _1267) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1266) (-1, _1267) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1267) (-1, _1268) 0 ]", "BLACKBOX::RANGE [(_1268, 32)] []", - "EXPR [ (1, _1268) (-1, _1269) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1268) (-1, _1269) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1269) (-1, _1270) 0 ]", "BLACKBOX::RANGE [(_1270, 32)] []", - "EXPR [ (1, _1270) (-1, _1271) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1270) (-1, _1271) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1271) (-1, _1272) 0 ]", "BLACKBOX::RANGE [(_1272, 32)] []", "EXPR [ (1, _1247, _1258) (1, _1249, _1259) (-1, _1273) 0 ]", @@ -1842,13 +1842,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1272) (-1, _1280) 0 ]", "EXPR [ (1, _1247, _1280) (-1, _1281) 0 ]", "BLACKBOX::RANGE [(_1281, 32)] []", - "EXPR [ (1, _1281) (-1, _1282) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1281) (-1, _1282) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1282) (-1, _1283) 0 ]", "BLACKBOX::RANGE [(_1283, 32)] []", - "EXPR [ (1, _1283) (-1, _1284) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1283) (-1, _1284) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1284) (-1, _1285) 0 ]", "BLACKBOX::RANGE [(_1285, 32)] []", - "EXPR [ (1, _1285) (-1, _1286) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1285) (-1, _1286) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1286) (-1, _1287) 0 ]", "BLACKBOX::RANGE [(_1287, 32)] []", "EXPR [ (1, _1247, _1272) (1, _1249, _1273) (-1, _1288) 0 ]", @@ -1861,13 +1861,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1287) (-1, _1294) 0 ]", "EXPR [ (1, _1247, _1294) (-1, _1295) 0 ]", "BLACKBOX::RANGE [(_1295, 32)] []", - "EXPR [ (1, _1295) (-1, _1296) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1295) (-1, _1296) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1296) (-1, _1297) 0 ]", "BLACKBOX::RANGE [(_1297, 32)] []", - "EXPR [ (1, _1297) (-1, _1298) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1297) (-1, _1298) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1298) (-1, _1299) 0 ]", "BLACKBOX::RANGE [(_1299, 32)] []", - "EXPR [ (1, _1299) (-1, _1300) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1299) (-1, _1300) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1300) (-1, _1301) 0 ]", "BLACKBOX::RANGE [(_1301, 32)] []", "EXPR [ (1, _1247, _1287) (1, _1249, _1288) (-1, _1302) 0 ]", @@ -1883,21 +1883,21 @@ expression: artifact "EXPR [ (1, _1301, _1305) (1, _1306, _1307) (-1, _1310) 0 ]", "EXPR [ (-1, _1309) (-1, _1311) 1 ]", "EXPR [ (1, _57, _1247) (1, _1249, _1264) (-1, _1312) 0 ]", - "EXPR [ (1, _1247, _1301) (-1, _2544) 0 ]", - "EXPR [ (1, _1249, _1302) (-1, _2545) 0 ]", - "EXPR [ (-1, _1313) (1, _2090) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (1, _1247, _1301) (-1, _2487) 0 ]", + "EXPR [ (1, _1249, _1302) (-1, _2488) 0 ]", + "EXPR [ (-1, _1313) (1, _2033) (1, _2487) (1, _2488) 0 ]", "EXPR [ (1, _1309, _1313) (-1, _1314) 0 ]", "BLACKBOX::RANGE [(_1314, 32)] []", - "EXPR [ (1, _1314) (-1, _1315) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1314) (-1, _1315) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1315) (-1, _1316) 0 ]", "BLACKBOX::RANGE [(_1316, 32)] []", - "EXPR [ (1, _1316) (-1, _1317) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1316) (-1, _1317) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1317) (-1, _1318) 0 ]", "BLACKBOX::RANGE [(_1318, 32)] []", - "EXPR [ (1, _1318) (-1, _1319) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1318) (-1, _1319) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1319) (-1, _1320) 0 ]", "BLACKBOX::RANGE [(_1320, 32)] []", - "EXPR [ (-1, _1321) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (-1, _1321) (1, _2487) (1, _2488) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1320))], q_c: -4864 })], outputs: [Simple(Witness(1322))]", "EXPR [ (1, _1320, _1322) (-4864, _1322) (1, _1323) -1 ]", "EXPR [ (1, _1320, _1323) (-4864, _1323) 0 ]", @@ -1907,13 +1907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1320) (-1, _1327) 0 ]", "EXPR [ (1, _1309, _1327) (-1, _1328) 0 ]", "BLACKBOX::RANGE [(_1328, 32)] []", - "EXPR [ (1, _1328) (-1, _1329) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1328) (-1, _1329) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1329) (-1, _1330) 0 ]", "BLACKBOX::RANGE [(_1330, 32)] []", - "EXPR [ (1, _1330) (-1, _1331) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1330) (-1, _1331) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1331) (-1, _1332) 0 ]", "BLACKBOX::RANGE [(_1332, 32)] []", - "EXPR [ (1, _1332) (-1, _1333) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1332) (-1, _1333) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1333) (-1, _1334) 0 ]", "BLACKBOX::RANGE [(_1334, 32)] []", "EXPR [ (1, _1309, _1320) (1, _1311, _1321) (-1, _1335) 0 ]", @@ -1927,13 +1927,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1334) (-1, _1342) 0 ]", "EXPR [ (1, _1309, _1342) (-1, _1343) 0 ]", "BLACKBOX::RANGE [(_1343, 32)] []", - "EXPR [ (1, _1343) (-1, _1344) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1343) (-1, _1344) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1344) (-1, _1345) 0 ]", "BLACKBOX::RANGE [(_1345, 32)] []", - "EXPR [ (1, _1345) (-1, _1346) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1345) (-1, _1346) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1346) (-1, _1347) 0 ]", "BLACKBOX::RANGE [(_1347, 32)] []", - "EXPR [ (1, _1347) (-1, _1348) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1347) (-1, _1348) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1348) (-1, _1349) 0 ]", "BLACKBOX::RANGE [(_1349, 32)] []", "EXPR [ (1, _1309, _1334) (1, _1311, _1335) (-1, _1350) 0 ]", @@ -1946,13 +1946,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1349) (-1, _1356) 0 ]", "EXPR [ (1, _1309, _1356) (-1, _1357) 0 ]", "BLACKBOX::RANGE [(_1357, 32)] []", - "EXPR [ (1, _1357) (-1, _1358) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1357) (-1, _1358) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1358) (-1, _1359) 0 ]", "BLACKBOX::RANGE [(_1359, 32)] []", - "EXPR [ (1, _1359) (-1, _1360) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1359) (-1, _1360) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1360) (-1, _1361) 0 ]", "BLACKBOX::RANGE [(_1361, 32)] []", - "EXPR [ (1, _1361) (-1, _1362) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1361) (-1, _1362) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1362) (-1, _1363) 0 ]", "BLACKBOX::RANGE [(_1363, 32)] []", "EXPR [ (1, _1309, _1349) (1, _1311, _1350) (-1, _1364) 0 ]", @@ -1968,21 +1968,21 @@ expression: artifact "EXPR [ (1, _1363, _1367) (1, _1368, _1369) (-1, _1372) 0 ]", "EXPR [ (-1, _1371) (-1, _1373) 1 ]", "EXPR [ (1, _57, _1309) (1, _1311, _1326) (-1, _1374) 0 ]", - "EXPR [ (1, _1309, _1363) (-1, _2564) 0 ]", - "EXPR [ (1, _1311, _1364) (-1, _2565) 0 ]", - "EXPR [ (-1, _1375) (1, _2090) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (1, _1309, _1363) (-1, _2507) 0 ]", + "EXPR [ (1, _1311, _1364) (-1, _2508) 0 ]", + "EXPR [ (-1, _1375) (1, _2033) (1, _2507) (1, _2508) 0 ]", "EXPR [ (1, _1371, _1375) (-1, _1376) 0 ]", "BLACKBOX::RANGE [(_1376, 32)] []", - "EXPR [ (1, _1376) (-1, _1377) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1376) (-1, _1377) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1377) (-1, _1378) 0 ]", "BLACKBOX::RANGE [(_1378, 32)] []", - "EXPR [ (1, _1378) (-1, _1379) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1378) (-1, _1379) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1379) (-1, _1380) 0 ]", "BLACKBOX::RANGE [(_1380, 32)] []", - "EXPR [ (1, _1380) (-1, _1381) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1380) (-1, _1381) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1381) (-1, _1382) 0 ]", "BLACKBOX::RANGE [(_1382, 32)] []", - "EXPR [ (-1, _1383) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (-1, _1383) (1, _2507) (1, _2508) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1382))], q_c: -4864 })], outputs: [Simple(Witness(1384))]", "EXPR [ (1, _1382, _1384) (-4864, _1384) (1, _1385) -1 ]", "EXPR [ (1, _1382, _1385) (-4864, _1385) 0 ]", @@ -1992,13 +1992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1382) (-1, _1389) 0 ]", "EXPR [ (1, _1371, _1389) (-1, _1390) 0 ]", "BLACKBOX::RANGE [(_1390, 32)] []", - "EXPR [ (1, _1390) (-1, _1391) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1390) (-1, _1391) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1391) (-1, _1392) 0 ]", "BLACKBOX::RANGE [(_1392, 32)] []", - "EXPR [ (1, _1392) (-1, _1393) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1392) (-1, _1393) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1393) (-1, _1394) 0 ]", "BLACKBOX::RANGE [(_1394, 32)] []", - "EXPR [ (1, _1394) (-1, _1395) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1394) (-1, _1395) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1395) (-1, _1396) 0 ]", "BLACKBOX::RANGE [(_1396, 32)] []", "EXPR [ (1, _1371, _1382) (1, _1373, _1383) (-1, _1397) 0 ]", @@ -2012,13 +2012,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1396) (-1, _1404) 0 ]", "EXPR [ (1, _1371, _1404) (-1, _1405) 0 ]", "BLACKBOX::RANGE [(_1405, 32)] []", - "EXPR [ (1, _1405) (-1, _1406) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1405) (-1, _1406) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1406) (-1, _1407) 0 ]", "BLACKBOX::RANGE [(_1407, 32)] []", - "EXPR [ (1, _1407) (-1, _1408) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1407) (-1, _1408) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1408) (-1, _1409) 0 ]", "BLACKBOX::RANGE [(_1409, 32)] []", - "EXPR [ (1, _1409) (-1, _1410) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1409) (-1, _1410) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1410) (-1, _1411) 0 ]", "BLACKBOX::RANGE [(_1411, 32)] []", "EXPR [ (1, _1371, _1396) (1, _1373, _1397) (-1, _1412) 0 ]", @@ -2031,13 +2031,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1411) (-1, _1418) 0 ]", "EXPR [ (1, _1371, _1418) (-1, _1419) 0 ]", "BLACKBOX::RANGE [(_1419, 32)] []", - "EXPR [ (1, _1419) (-1, _1420) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1419) (-1, _1420) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1420) (-1, _1421) 0 ]", "BLACKBOX::RANGE [(_1421, 32)] []", - "EXPR [ (1, _1421) (-1, _1422) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1421) (-1, _1422) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1422) (-1, _1423) 0 ]", "BLACKBOX::RANGE [(_1423, 32)] []", - "EXPR [ (1, _1423) (-1, _1424) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1423) (-1, _1424) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1424) (-1, _1425) 0 ]", "BLACKBOX::RANGE [(_1425, 32)] []", "EXPR [ (1, _1371, _1411) (1, _1373, _1412) (-1, _1426) 0 ]", @@ -2053,21 +2053,21 @@ expression: artifact "EXPR [ (1, _1425, _1429) (1, _1430, _1431) (-1, _1434) 0 ]", "EXPR [ (-1, _1433) (-1, _1435) 1 ]", "EXPR [ (1, _57, _1371) (1, _1373, _1388) (-1, _1436) 0 ]", - "EXPR [ (1, _1371, _1425) (-1, _2584) 0 ]", - "EXPR [ (1, _1373, _1426) (-1, _2585) 0 ]", - "EXPR [ (-1, _1437) (1, _2090) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (1, _1371, _1425) (-1, _2527) 0 ]", + "EXPR [ (1, _1373, _1426) (-1, _2528) 0 ]", + "EXPR [ (-1, _1437) (1, _2033) (1, _2527) (1, _2528) 0 ]", "EXPR [ (1, _1433, _1437) (-1, _1438) 0 ]", "BLACKBOX::RANGE [(_1438, 32)] []", - "EXPR [ (1, _1438) (-1, _1439) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1438) (-1, _1439) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1439) (-1, _1440) 0 ]", "BLACKBOX::RANGE [(_1440, 32)] []", - "EXPR [ (1, _1440) (-1, _1441) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1440) (-1, _1441) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1441) (-1, _1442) 0 ]", "BLACKBOX::RANGE [(_1442, 32)] []", - "EXPR [ (1, _1442) (-1, _1443) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1442) (-1, _1443) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1443) (-1, _1444) 0 ]", "BLACKBOX::RANGE [(_1444, 32)] []", - "EXPR [ (-1, _1445) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (-1, _1445) (1, _2527) (1, _2528) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1444))], q_c: -4864 })], outputs: [Simple(Witness(1446))]", "EXPR [ (1, _1444, _1446) (-4864, _1446) (1, _1447) -1 ]", "EXPR [ (1, _1444, _1447) (-4864, _1447) 0 ]", @@ -2077,13 +2077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1444) (-1, _1451) 0 ]", "EXPR [ (1, _1433, _1451) (-1, _1452) 0 ]", "BLACKBOX::RANGE [(_1452, 32)] []", - "EXPR [ (1, _1452) (-1, _1453) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1452) (-1, _1453) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1453) (-1, _1454) 0 ]", "BLACKBOX::RANGE [(_1454, 32)] []", - "EXPR [ (1, _1454) (-1, _1455) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1454) (-1, _1455) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1455) (-1, _1456) 0 ]", "BLACKBOX::RANGE [(_1456, 32)] []", - "EXPR [ (1, _1456) (-1, _1457) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1456) (-1, _1457) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1457) (-1, _1458) 0 ]", "BLACKBOX::RANGE [(_1458, 32)] []", "EXPR [ (1, _1433, _1444) (1, _1435, _1445) (-1, _1459) 0 ]", @@ -2097,13 +2097,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1458) (-1, _1466) 0 ]", "EXPR [ (1, _1433, _1466) (-1, _1467) 0 ]", "BLACKBOX::RANGE [(_1467, 32)] []", - "EXPR [ (1, _1467) (-1, _1468) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1467) (-1, _1468) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1468) (-1, _1469) 0 ]", "BLACKBOX::RANGE [(_1469, 32)] []", - "EXPR [ (1, _1469) (-1, _1470) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1469) (-1, _1470) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1470) (-1, _1471) 0 ]", "BLACKBOX::RANGE [(_1471, 32)] []", - "EXPR [ (1, _1471) (-1, _1472) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1471) (-1, _1472) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1472) (-1, _1473) 0 ]", "BLACKBOX::RANGE [(_1473, 32)] []", "EXPR [ (1, _1433, _1458) (1, _1435, _1459) (-1, _1474) 0 ]", @@ -2116,13 +2116,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1473) (-1, _1480) 0 ]", "EXPR [ (1, _1433, _1480) (-1, _1481) 0 ]", "BLACKBOX::RANGE [(_1481, 32)] []", - "EXPR [ (1, _1481) (-1, _1482) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1481) (-1, _1482) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1482) (-1, _1483) 0 ]", "BLACKBOX::RANGE [(_1483, 32)] []", - "EXPR [ (1, _1483) (-1, _1484) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1483) (-1, _1484) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1484) (-1, _1485) 0 ]", "BLACKBOX::RANGE [(_1485, 32)] []", - "EXPR [ (1, _1485) (-1, _1486) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1485) (-1, _1486) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1486) (-1, _1487) 0 ]", "BLACKBOX::RANGE [(_1487, 32)] []", "EXPR [ (1, _1433, _1473) (1, _1435, _1474) (-1, _1488) 0 ]", @@ -2138,21 +2138,21 @@ expression: artifact "EXPR [ (1, _1487, _1491) (1, _1492, _1493) (-1, _1496) 0 ]", "EXPR [ (-1, _1495) (-1, _1497) 1 ]", "EXPR [ (1, _57, _1433) (1, _1435, _1450) (-1, _1498) 0 ]", - "EXPR [ (1, _1433, _1487) (-1, _2604) 0 ]", - "EXPR [ (1, _1435, _1488) (-1, _2605) 0 ]", - "EXPR [ (-1, _1499) (1, _2090) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (1, _1433, _1487) (-1, _2547) 0 ]", + "EXPR [ (1, _1435, _1488) (-1, _2548) 0 ]", + "EXPR [ (-1, _1499) (1, _2033) (1, _2547) (1, _2548) 0 ]", "EXPR [ (1, _1495, _1499) (-1, _1500) 0 ]", "BLACKBOX::RANGE [(_1500, 32)] []", - "EXPR [ (1, _1500) (-1, _1501) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1500) (-1, _1501) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1501) (-1, _1502) 0 ]", "BLACKBOX::RANGE [(_1502, 32)] []", - "EXPR [ (1, _1502) (-1, _1503) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1502) (-1, _1503) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1503) (-1, _1504) 0 ]", "BLACKBOX::RANGE [(_1504, 32)] []", - "EXPR [ (1, _1504) (-1, _1505) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1504) (-1, _1505) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1505) (-1, _1506) 0 ]", "BLACKBOX::RANGE [(_1506, 32)] []", - "EXPR [ (-1, _1507) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (-1, _1507) (1, _2547) (1, _2548) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1506))], q_c: -4864 })], outputs: [Simple(Witness(1508))]", "EXPR [ (1, _1506, _1508) (-4864, _1508) (1, _1509) -1 ]", "EXPR [ (1, _1506, _1509) (-4864, _1509) 0 ]", @@ -2162,13 +2162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1506) (-1, _1513) 0 ]", "EXPR [ (1, _1495, _1513) (-1, _1514) 0 ]", "BLACKBOX::RANGE [(_1514, 32)] []", - "EXPR [ (1, _1514) (-1, _1515) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1514) (-1, _1515) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1515) (-1, _1516) 0 ]", "BLACKBOX::RANGE [(_1516, 32)] []", - "EXPR [ (1, _1516) (-1, _1517) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1516) (-1, _1517) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1517) (-1, _1518) 0 ]", "BLACKBOX::RANGE [(_1518, 32)] []", - "EXPR [ (1, _1518) (-1, _1519) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1518) (-1, _1519) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1519) (-1, _1520) 0 ]", "BLACKBOX::RANGE [(_1520, 32)] []", "EXPR [ (1, _1495, _1506) (1, _1497, _1507) (-1, _1521) 0 ]", @@ -2182,13 +2182,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1520) (-1, _1528) 0 ]", "EXPR [ (1, _1495, _1528) (-1, _1529) 0 ]", "BLACKBOX::RANGE [(_1529, 32)] []", - "EXPR [ (1, _1529) (-1, _1530) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1529) (-1, _1530) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1530) (-1, _1531) 0 ]", "BLACKBOX::RANGE [(_1531, 32)] []", - "EXPR [ (1, _1531) (-1, _1532) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1531) (-1, _1532) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1532) (-1, _1533) 0 ]", "BLACKBOX::RANGE [(_1533, 32)] []", - "EXPR [ (1, _1533) (-1, _1534) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1533) (-1, _1534) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1534) (-1, _1535) 0 ]", "BLACKBOX::RANGE [(_1535, 32)] []", "EXPR [ (1, _1495, _1520) (1, _1497, _1521) (-1, _1536) 0 ]", @@ -2201,13 +2201,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1535) (-1, _1542) 0 ]", "EXPR [ (1, _1495, _1542) (-1, _1543) 0 ]", "BLACKBOX::RANGE [(_1543, 32)] []", - "EXPR [ (1, _1543) (-1, _1544) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1543) (-1, _1544) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1544) (-1, _1545) 0 ]", "BLACKBOX::RANGE [(_1545, 32)] []", - "EXPR [ (1, _1545) (-1, _1546) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1545) (-1, _1546) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1546) (-1, _1547) 0 ]", "BLACKBOX::RANGE [(_1547, 32)] []", - "EXPR [ (1, _1547) (-1, _1548) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1547) (-1, _1548) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1548) (-1, _1549) 0 ]", "BLACKBOX::RANGE [(_1549, 32)] []", "EXPR [ (1, _1495, _1535) (1, _1497, _1536) (-1, _1550) 0 ]", @@ -2223,21 +2223,21 @@ expression: artifact "EXPR [ (1, _1549, _1553) (1, _1554, _1555) (-1, _1558) 0 ]", "EXPR [ (-1, _1557) (-1, _1559) 1 ]", "EXPR [ (1, _57, _1495) (1, _1497, _1512) (-1, _1560) 0 ]", - "EXPR [ (1, _1495, _1549) (-1, _2624) 0 ]", - "EXPR [ (1, _1497, _1550) (-1, _2625) 0 ]", - "EXPR [ (-1, _1561) (1, _2090) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (1, _1495, _1549) (-1, _2567) 0 ]", + "EXPR [ (1, _1497, _1550) (-1, _2568) 0 ]", + "EXPR [ (-1, _1561) (1, _2033) (1, _2567) (1, _2568) 0 ]", "EXPR [ (1, _1557, _1561) (-1, _1562) 0 ]", "BLACKBOX::RANGE [(_1562, 32)] []", - "EXPR [ (1, _1562) (-1, _1563) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1562) (-1, _1563) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1563) (-1, _1564) 0 ]", "BLACKBOX::RANGE [(_1564, 32)] []", - "EXPR [ (1, _1564) (-1, _1565) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1564) (-1, _1565) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1565) (-1, _1566) 0 ]", "BLACKBOX::RANGE [(_1566, 32)] []", - "EXPR [ (1, _1566) (-1, _1567) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1566) (-1, _1567) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1567) (-1, _1568) 0 ]", "BLACKBOX::RANGE [(_1568, 32)] []", - "EXPR [ (-1, _1569) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (-1, _1569) (1, _2567) (1, _2568) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1568))], q_c: -4864 })], outputs: [Simple(Witness(1570))]", "EXPR [ (1, _1568, _1570) (-4864, _1570) (1, _1571) -1 ]", "EXPR [ (1, _1568, _1571) (-4864, _1571) 0 ]", @@ -2247,13 +2247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1568) (-1, _1575) 0 ]", "EXPR [ (1, _1557, _1575) (-1, _1576) 0 ]", "BLACKBOX::RANGE [(_1576, 32)] []", - "EXPR [ (1, _1576) (-1, _1577) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1576) (-1, _1577) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1577) (-1, _1578) 0 ]", "BLACKBOX::RANGE [(_1578, 32)] []", - "EXPR [ (1, _1578) (-1, _1579) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1578) (-1, _1579) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1579) (-1, _1580) 0 ]", "BLACKBOX::RANGE [(_1580, 32)] []", - "EXPR [ (1, _1580) (-1, _1581) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1580) (-1, _1581) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1581) (-1, _1582) 0 ]", "BLACKBOX::RANGE [(_1582, 32)] []", "EXPR [ (1, _1557, _1568) (1, _1559, _1569) (-1, _1583) 0 ]", @@ -2267,13 +2267,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1582) (-1, _1590) 0 ]", "EXPR [ (1, _1557, _1590) (-1, _1591) 0 ]", "BLACKBOX::RANGE [(_1591, 32)] []", - "EXPR [ (1, _1591) (-1, _1592) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1591) (-1, _1592) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1592) (-1, _1593) 0 ]", "BLACKBOX::RANGE [(_1593, 32)] []", - "EXPR [ (1, _1593) (-1, _1594) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1593) (-1, _1594) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1594) (-1, _1595) 0 ]", "BLACKBOX::RANGE [(_1595, 32)] []", - "EXPR [ (1, _1595) (-1, _1596) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1595) (-1, _1596) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1596) (-1, _1597) 0 ]", "BLACKBOX::RANGE [(_1597, 32)] []", "EXPR [ (1, _1557, _1582) (1, _1559, _1583) (-1, _1598) 0 ]", @@ -2286,13 +2286,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1597) (-1, _1604) 0 ]", "EXPR [ (1, _1557, _1604) (-1, _1605) 0 ]", "BLACKBOX::RANGE [(_1605, 32)] []", - "EXPR [ (1, _1605) (-1, _1606) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1605) (-1, _1606) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1606) (-1, _1607) 0 ]", "BLACKBOX::RANGE [(_1607, 32)] []", - "EXPR [ (1, _1607) (-1, _1608) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1607) (-1, _1608) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1608) (-1, _1609) 0 ]", "BLACKBOX::RANGE [(_1609, 32)] []", - "EXPR [ (1, _1609) (-1, _1610) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1609) (-1, _1610) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1610) (-1, _1611) 0 ]", "BLACKBOX::RANGE [(_1611, 32)] []", "EXPR [ (1, _1557, _1597) (1, _1559, _1598) (-1, _1612) 0 ]", @@ -2308,21 +2308,21 @@ expression: artifact "EXPR [ (1, _1611, _1615) (1, _1616, _1617) (-1, _1620) 0 ]", "EXPR [ (-1, _1619) (-1, _1621) 1 ]", "EXPR [ (1, _57, _1557) (1, _1559, _1574) (-1, _1622) 0 ]", - "EXPR [ (1, _1557, _1611) (-1, _2644) 0 ]", - "EXPR [ (1, _1559, _1612) (-1, _2645) 0 ]", - "EXPR [ (-1, _1623) (1, _2090) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (1, _1557, _1611) (-1, _2587) 0 ]", + "EXPR [ (1, _1559, _1612) (-1, _2588) 0 ]", + "EXPR [ (-1, _1623) (1, _2033) (1, _2587) (1, _2588) 0 ]", "EXPR [ (1, _1619, _1623) (-1, _1624) 0 ]", "BLACKBOX::RANGE [(_1624, 32)] []", - "EXPR [ (1, _1624) (-1, _1625) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1624) (-1, _1625) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1625) (-1, _1626) 0 ]", "BLACKBOX::RANGE [(_1626, 32)] []", - "EXPR [ (1, _1626) (-1, _1627) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1626) (-1, _1627) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1627) (-1, _1628) 0 ]", "BLACKBOX::RANGE [(_1628, 32)] []", - "EXPR [ (1, _1628) (-1, _1629) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1628) (-1, _1629) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1629) (-1, _1630) 0 ]", "BLACKBOX::RANGE [(_1630, 32)] []", - "EXPR [ (-1, _1631) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (-1, _1631) (1, _2587) (1, _2588) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1630))], q_c: -4864 })], outputs: [Simple(Witness(1632))]", "EXPR [ (1, _1630, _1632) (-4864, _1632) (1, _1633) -1 ]", "EXPR [ (1, _1630, _1633) (-4864, _1633) 0 ]", @@ -2332,13 +2332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1630) (-1, _1637) 0 ]", "EXPR [ (1, _1619, _1637) (-1, _1638) 0 ]", "BLACKBOX::RANGE [(_1638, 32)] []", - "EXPR [ (1, _1638) (-1, _1639) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1638) (-1, _1639) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1639) (-1, _1640) 0 ]", "BLACKBOX::RANGE [(_1640, 32)] []", - "EXPR [ (1, _1640) (-1, _1641) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1640) (-1, _1641) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1641) (-1, _1642) 0 ]", "BLACKBOX::RANGE [(_1642, 32)] []", - "EXPR [ (1, _1642) (-1, _1643) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1642) (-1, _1643) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1643) (-1, _1644) 0 ]", "BLACKBOX::RANGE [(_1644, 32)] []", "EXPR [ (1, _1619, _1630) (1, _1621, _1631) (-1, _1645) 0 ]", @@ -2352,13 +2352,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1644) (-1, _1652) 0 ]", "EXPR [ (1, _1619, _1652) (-1, _1653) 0 ]", "BLACKBOX::RANGE [(_1653, 32)] []", - "EXPR [ (1, _1653) (-1, _1654) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1653) (-1, _1654) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1654) (-1, _1655) 0 ]", "BLACKBOX::RANGE [(_1655, 32)] []", - "EXPR [ (1, _1655) (-1, _1656) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1655) (-1, _1656) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1656) (-1, _1657) 0 ]", "BLACKBOX::RANGE [(_1657, 32)] []", - "EXPR [ (1, _1657) (-1, _1658) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1657) (-1, _1658) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1658) (-1, _1659) 0 ]", "BLACKBOX::RANGE [(_1659, 32)] []", "EXPR [ (1, _1619, _1644) (1, _1621, _1645) (-1, _1660) 0 ]", @@ -2371,13 +2371,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1659) (-1, _1666) 0 ]", "EXPR [ (1, _1619, _1666) (-1, _1667) 0 ]", "BLACKBOX::RANGE [(_1667, 32)] []", - "EXPR [ (1, _1667) (-1, _1668) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1667) (-1, _1668) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1668) (-1, _1669) 0 ]", "BLACKBOX::RANGE [(_1669, 32)] []", - "EXPR [ (1, _1669) (-1, _1670) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1669) (-1, _1670) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1670) (-1, _1671) 0 ]", "BLACKBOX::RANGE [(_1671, 32)] []", - "EXPR [ (1, _1671) (-1, _1672) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1671) (-1, _1672) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1672) (-1, _1673) 0 ]", "BLACKBOX::RANGE [(_1673, 32)] []", "EXPR [ (1, _1619, _1659) (1, _1621, _1660) (-1, _1674) 0 ]", @@ -2393,21 +2393,21 @@ expression: artifact "EXPR [ (1, _1673, _1677) (1, _1678, _1679) (-1, _1682) 0 ]", "EXPR [ (-1, _1681) (-1, _1683) 1 ]", "EXPR [ (1, _57, _1619) (1, _1621, _1636) (-1, _1684) 0 ]", - "EXPR [ (1, _1619, _1673) (-1, _2664) 0 ]", - "EXPR [ (1, _1621, _1674) (-1, _2665) 0 ]", - "EXPR [ (-1, _1685) (1, _2090) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (1, _1619, _1673) (-1, _2607) 0 ]", + "EXPR [ (1, _1621, _1674) (-1, _2608) 0 ]", + "EXPR [ (-1, _1685) (1, _2033) (1, _2607) (1, _2608) 0 ]", "EXPR [ (1, _1681, _1685) (-1, _1686) 0 ]", "BLACKBOX::RANGE [(_1686, 32)] []", - "EXPR [ (1, _1686) (-1, _1687) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1686) (-1, _1687) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1687) (-1, _1688) 0 ]", "BLACKBOX::RANGE [(_1688, 32)] []", - "EXPR [ (1, _1688) (-1, _1689) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1688) (-1, _1689) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1689) (-1, _1690) 0 ]", "BLACKBOX::RANGE [(_1690, 32)] []", - "EXPR [ (1, _1690) (-1, _1691) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1690) (-1, _1691) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1691) (-1, _1692) 0 ]", "BLACKBOX::RANGE [(_1692, 32)] []", - "EXPR [ (-1, _1693) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (-1, _1693) (1, _2607) (1, _2608) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1692))], q_c: -4864 })], outputs: [Simple(Witness(1694))]", "EXPR [ (1, _1692, _1694) (-4864, _1694) (1, _1695) -1 ]", "EXPR [ (1, _1692, _1695) (-4864, _1695) 0 ]", @@ -2417,13 +2417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1692) (-1, _1699) 0 ]", "EXPR [ (1, _1681, _1699) (-1, _1700) 0 ]", "BLACKBOX::RANGE [(_1700, 32)] []", - "EXPR [ (1, _1700) (-1, _1701) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1700) (-1, _1701) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1701) (-1, _1702) 0 ]", "BLACKBOX::RANGE [(_1702, 32)] []", - "EXPR [ (1, _1702) (-1, _1703) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1702) (-1, _1703) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1703) (-1, _1704) 0 ]", "BLACKBOX::RANGE [(_1704, 32)] []", - "EXPR [ (1, _1704) (-1, _1705) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1704) (-1, _1705) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1705) (-1, _1706) 0 ]", "BLACKBOX::RANGE [(_1706, 32)] []", "EXPR [ (1, _1681, _1692) (1, _1683, _1693) (-1, _1707) 0 ]", @@ -2437,13 +2437,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1706) (-1, _1714) 0 ]", "EXPR [ (1, _1681, _1714) (-1, _1715) 0 ]", "BLACKBOX::RANGE [(_1715, 32)] []", - "EXPR [ (1, _1715) (-1, _1716) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1715) (-1, _1716) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1716) (-1, _1717) 0 ]", "BLACKBOX::RANGE [(_1717, 32)] []", - "EXPR [ (1, _1717) (-1, _1718) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1717) (-1, _1718) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1718) (-1, _1719) 0 ]", "BLACKBOX::RANGE [(_1719, 32)] []", - "EXPR [ (1, _1719) (-1, _1720) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1719) (-1, _1720) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1720) (-1, _1721) 0 ]", "BLACKBOX::RANGE [(_1721, 32)] []", "EXPR [ (1, _1681, _1706) (1, _1683, _1707) (-1, _1722) 0 ]", @@ -2456,13 +2456,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1721) (-1, _1728) 0 ]", "EXPR [ (1, _1681, _1728) (-1, _1729) 0 ]", "BLACKBOX::RANGE [(_1729, 32)] []", - "EXPR [ (1, _1729) (-1, _1730) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1729) (-1, _1730) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1730) (-1, _1731) 0 ]", "BLACKBOX::RANGE [(_1731, 32)] []", - "EXPR [ (1, _1731) (-1, _1732) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1731) (-1, _1732) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1732) (-1, _1733) 0 ]", "BLACKBOX::RANGE [(_1733, 32)] []", - "EXPR [ (1, _1733) (-1, _1734) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1733) (-1, _1734) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1734) (-1, _1735) 0 ]", "BLACKBOX::RANGE [(_1735, 32)] []", "EXPR [ (1, _1681, _1721) (1, _1683, _1722) (-1, _1736) 0 ]", @@ -2478,21 +2478,21 @@ expression: artifact "EXPR [ (1, _1735, _1739) (1, _1740, _1741) (-1, _1744) 0 ]", "EXPR [ (-1, _1743) (-1, _1745) 1 ]", "EXPR [ (1, _57, _1681) (1, _1683, _1698) (-1, _1746) 0 ]", - "EXPR [ (1, _1681, _1735) (-1, _2684) 0 ]", - "EXPR [ (1, _1683, _1736) (-1, _2685) 0 ]", - "EXPR [ (-1, _1747) (1, _2090) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (1, _1681, _1735) (-1, _2627) 0 ]", + "EXPR [ (1, _1683, _1736) (-1, _2628) 0 ]", + "EXPR [ (-1, _1747) (1, _2033) (1, _2627) (1, _2628) 0 ]", "EXPR [ (1, _1743, _1747) (-1, _1748) 0 ]", "BLACKBOX::RANGE [(_1748, 32)] []", - "EXPR [ (1, _1748) (-1, _1749) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1748) (-1, _1749) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1749) (-1, _1750) 0 ]", "BLACKBOX::RANGE [(_1750, 32)] []", - "EXPR [ (1, _1750) (-1, _1751) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1750) (-1, _1751) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1751) (-1, _1752) 0 ]", "BLACKBOX::RANGE [(_1752, 32)] []", - "EXPR [ (1, _1752) (-1, _1753) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1752) (-1, _1753) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1753) (-1, _1754) 0 ]", "BLACKBOX::RANGE [(_1754, 32)] []", - "EXPR [ (-1, _1755) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (-1, _1755) (1, _2627) (1, _2628) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1754))], q_c: -4864 })], outputs: [Simple(Witness(1756))]", "EXPR [ (1, _1754, _1756) (-4864, _1756) (1, _1757) -1 ]", "EXPR [ (1, _1754, _1757) (-4864, _1757) 0 ]", @@ -2502,13 +2502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1754) (-1, _1761) 0 ]", "EXPR [ (1, _1743, _1761) (-1, _1762) 0 ]", "BLACKBOX::RANGE [(_1762, 32)] []", - "EXPR [ (1, _1762) (-1, _1763) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1762) (-1, _1763) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1763) (-1, _1764) 0 ]", "BLACKBOX::RANGE [(_1764, 32)] []", - "EXPR [ (1, _1764) (-1, _1765) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1764) (-1, _1765) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1765) (-1, _1766) 0 ]", "BLACKBOX::RANGE [(_1766, 32)] []", - "EXPR [ (1, _1766) (-1, _1767) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1766) (-1, _1767) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1767) (-1, _1768) 0 ]", "BLACKBOX::RANGE [(_1768, 32)] []", "EXPR [ (1, _1743, _1754) (1, _1745, _1755) (-1, _1769) 0 ]", @@ -2522,13 +2522,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1768) (-1, _1776) 0 ]", "EXPR [ (1, _1743, _1776) (-1, _1777) 0 ]", "BLACKBOX::RANGE [(_1777, 32)] []", - "EXPR [ (1, _1777) (-1, _1778) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1777) (-1, _1778) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1778) (-1, _1779) 0 ]", "BLACKBOX::RANGE [(_1779, 32)] []", - "EXPR [ (1, _1779) (-1, _1780) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1779) (-1, _1780) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1780) (-1, _1781) 0 ]", "BLACKBOX::RANGE [(_1781, 32)] []", - "EXPR [ (1, _1781) (-1, _1782) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1781) (-1, _1782) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1782) (-1, _1783) 0 ]", "BLACKBOX::RANGE [(_1783, 32)] []", "EXPR [ (1, _1743, _1768) (1, _1745, _1769) (-1, _1784) 0 ]", @@ -2541,13 +2541,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1783) (-1, _1790) 0 ]", "EXPR [ (1, _1743, _1790) (-1, _1791) 0 ]", "BLACKBOX::RANGE [(_1791, 32)] []", - "EXPR [ (1, _1791) (-1, _1792) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1791) (-1, _1792) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1792) (-1, _1793) 0 ]", "BLACKBOX::RANGE [(_1793, 32)] []", - "EXPR [ (1, _1793) (-1, _1794) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1793) (-1, _1794) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1794) (-1, _1795) 0 ]", "BLACKBOX::RANGE [(_1795, 32)] []", - "EXPR [ (1, _1795) (-1, _1796) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1795) (-1, _1796) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1796) (-1, _1797) 0 ]", "BLACKBOX::RANGE [(_1797, 32)] []", "EXPR [ (1, _1743, _1783) (1, _1745, _1784) (-1, _1798) 0 ]", @@ -2563,21 +2563,21 @@ expression: artifact "EXPR [ (1, _1797, _1801) (1, _1802, _1803) (-1, _1806) 0 ]", "EXPR [ (-1, _1805) (-1, _1807) 1 ]", "EXPR [ (1, _57, _1743) (1, _1745, _1760) (-1, _1808) 0 ]", - "EXPR [ (1, _1743, _1797) (-1, _2704) 0 ]", - "EXPR [ (1, _1745, _1798) (-1, _2705) 0 ]", - "EXPR [ (-1, _1809) (1, _2090) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (1, _1743, _1797) (-1, _2647) 0 ]", + "EXPR [ (1, _1745, _1798) (-1, _2648) 0 ]", + "EXPR [ (-1, _1809) (1, _2033) (1, _2647) (1, _2648) 0 ]", "EXPR [ (1, _1805, _1809) (-1, _1810) 0 ]", "BLACKBOX::RANGE [(_1810, 32)] []", - "EXPR [ (1, _1810) (-1, _1811) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1810) (-1, _1811) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1811) (-1, _1812) 0 ]", "BLACKBOX::RANGE [(_1812, 32)] []", - "EXPR [ (1, _1812) (-1, _1813) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1812) (-1, _1813) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1813) (-1, _1814) 0 ]", "BLACKBOX::RANGE [(_1814, 32)] []", - "EXPR [ (1, _1814) (-1, _1815) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1814) (-1, _1815) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1815) (-1, _1816) 0 ]", "BLACKBOX::RANGE [(_1816, 32)] []", - "EXPR [ (-1, _1817) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (-1, _1817) (1, _2647) (1, _2648) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1816))], q_c: -4864 })], outputs: [Simple(Witness(1818))]", "EXPR [ (1, _1816, _1818) (-4864, _1818) (1, _1819) -1 ]", "EXPR [ (1, _1816, _1819) (-4864, _1819) 0 ]", @@ -2587,13 +2587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1816) (-1, _1823) 0 ]", "EXPR [ (1, _1805, _1823) (-1, _1824) 0 ]", "BLACKBOX::RANGE [(_1824, 32)] []", - "EXPR [ (1, _1824) (-1, _1825) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1824) (-1, _1825) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1825) (-1, _1826) 0 ]", "BLACKBOX::RANGE [(_1826, 32)] []", - "EXPR [ (1, _1826) (-1, _1827) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1826) (-1, _1827) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1827) (-1, _1828) 0 ]", "BLACKBOX::RANGE [(_1828, 32)] []", - "EXPR [ (1, _1828) (-1, _1829) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1828) (-1, _1829) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1829) (-1, _1830) 0 ]", "BLACKBOX::RANGE [(_1830, 32)] []", "EXPR [ (1, _1805, _1816) (1, _1807, _1817) (-1, _1831) 0 ]", @@ -2607,13 +2607,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1830) (-1, _1838) 0 ]", "EXPR [ (1, _1805, _1838) (-1, _1839) 0 ]", "BLACKBOX::RANGE [(_1839, 32)] []", - "EXPR [ (1, _1839) (-1, _1840) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1839) (-1, _1840) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1840) (-1, _1841) 0 ]", "BLACKBOX::RANGE [(_1841, 32)] []", - "EXPR [ (1, _1841) (-1, _1842) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1841) (-1, _1842) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1842) (-1, _1843) 0 ]", "BLACKBOX::RANGE [(_1843, 32)] []", - "EXPR [ (1, _1843) (-1, _1844) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1843) (-1, _1844) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1844) (-1, _1845) 0 ]", "BLACKBOX::RANGE [(_1845, 32)] []", "EXPR [ (1, _1805, _1830) (1, _1807, _1831) (-1, _1846) 0 ]", @@ -2626,9 +2626,9 @@ expression: artifact "EXPR [ (32, _1805) (-1, _1852) 0 ]", "BLACKBOX::RANGE [(_1852, 5)] []", "EXPR [ (1, _4, _43) (-1, _1853) 0 ]", - "EXPR [ (-1, _1854) (1, _2122) (1, _2151) 0 ]", - "EXPR [ (-1, _1855) (1, _2152) (1, _2179) 0 ]", - "EXPR [ (-1, _1856) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (-1, _1854) (1, _2065) (1, _2094) 0 ]", + "EXPR [ (-1, _1855) (1, _2095) (1, _2122) 0 ]", + "EXPR [ (-1, _1856) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _256) (1, _257, _258) (-1, _1857) 0 ]", "EXPR [ (1, _317, _318) (1, _319, _320) (-1, _1858) 0 ]", "EXPR [ (1, _379, _380) (1, _381, _382) (-1, _1859) 0 ]", @@ -2659,301 +2659,199 @@ expression: artifact "MEM (id: 4, read at: EXPR [ (1, _1882) 0 ], value: EXPR [ (1, _1883) 0 ]) ", "EXPR [ (1, _77, _1805) (-1, _1805, _1883) (1, _1883) (-1, _1884) 0 ]", "MEM (id: 4, write EXPR [ (1, _1884) 0 ] at: EXPR [ (1, _1882) 0 ]) ", - "EXPR [ (1, _1805, _1845) (-1, _2768) 0 ]", - "EXPR [ (1, _1805, _1853) (-1, _1885) (1, _2768) 0 ]", - "BLACKBOX::RANGE [(_1885, 32)] []", - "EXPR [ (1, _1805, _1854) (1, _1805, _1885) (-1, _1886) 0 ]", - "BLACKBOX::RANGE [(_1886, 32)] []", - "EXPR [ (1, _1805, _1855) (1, _1805, _1886) (-1, _1887) 0 ]", - "BLACKBOX::RANGE [(_1887, 32)] []", - "EXPR [ (1, _1805, _1856) (1, _1805, _1887) (-1, _1888) 0 ]", - "BLACKBOX::RANGE [(_1888, 32)] []", - "EXPR [ (1, _1807, _1846) (-1, _1889) (1, _2768) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1888))], q_c: -4864 })], outputs: [Simple(Witness(1890))]", - "EXPR [ (1, _1888, _1890) (-4864, _1890) (1, _1891) -1 ]", - "EXPR [ (1, _1888, _1891) (-4864, _1891) 0 ]", - "EXPR [ (1, _1805, _1891) (-1, _1892) 0 ]", - "EXPR [ (-1, _1805, _1891) (-1, _1893) 1 ]", - "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1894) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1895))]", - "EXPR [ (-1, _0, _1895) (30, _1895) (1, _1896) -1 ]", - "EXPR [ (-1, _0, _1896) (30, _1896) 0 ]", - "EXPR [ (1, _1888, _1892) (1, _1893, _1894) (-1, _1897) 0 ]", - "EXPR [ (-1, _1896) (-1, _1898) 1 ]", - "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1899) 0 ]", - "EXPR [ (1, _1805, _1888) (-1, _2783) 0 ]", - "EXPR [ (1, _1807, _1889) (-1, _2784) 0 ]", - "EXPR [ (1, _1853) (-1, _1900) (1, _2783) (1, _2784) 0 ]", - "EXPR [ (1, _1896, _1900) (-1, _1901) 0 ]", - "BLACKBOX::RANGE [(_1901, 32)] []", - "EXPR [ (1, _1854, _1896) (-1, _2785) 0 ]", - "EXPR [ (1, _1896, _1901) (-1, _1902) (1, _2785) 0 ]", + "EXPR [ (1, _1805, _1845) (1, _1807, _1846) (-1, _1885) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1886))]", + "EXPR [ (-1, _0, _1886) (30, _1886) (1, _1887) -1 ]", + "EXPR [ (-1, _0, _1887) (30, _1887) 0 ]", + "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1888) 0 ]", + "EXPR [ (-1, _1887) (-1, _1889) 1 ]", + "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1890) 0 ]", + "EXPR [ (1, _1807, _1885) (1, _1853) (-1, _1891) 0 ]", + "EXPR [ (1, _1887, _1891) (-1, _1892) 0 ]", + "BLACKBOX::RANGE [(_1892, 32)] []", + "EXPR [ (1, _1854, _1887) (-1, _2717) 0 ]", + "EXPR [ (1, _1887, _1892) (-1, _1893) (1, _2717) 0 ]", + "BLACKBOX::RANGE [(_1893, 32)] []", + "EXPR [ (1, _1855, _1887) (-1, _2719) 0 ]", + "EXPR [ (1, _1887, _1893) (-1, _1894) (1, _2719) 0 ]", + "BLACKBOX::RANGE [(_1894, 32)] []", + "EXPR [ (1, _1856, _1887) (-1, _2721) 0 ]", + "EXPR [ (1, _1887, _1894) (-1, _1895) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1895, 32)] []", + "EXPR [ (1, _1807, _1885) (-1, _1896) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1895))], q_c: -4864 })], outputs: [Simple(Witness(1897))]", + "EXPR [ (1, _1895, _1897) (-4864, _1897) (1, _1898) -1 ]", + "EXPR [ (1, _1895, _1898) (-4864, _1898) 0 ]", + "EXPR [ (1, _1887, _1898) (-1, _1899) 0 ]", + "EXPR [ (-1, _1887, _1898) (-1, _1900) 1 ]", + "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1901) 0 ]", + "EXPR [ (1, _1887, _1895) (-1, _2726) 0 ]", + "EXPR [ (1, _1853, _1887) (-1, _1902) (1, _2726) 0 ]", "BLACKBOX::RANGE [(_1902, 32)] []", - "EXPR [ (1, _1855, _1896) (-1, _2787) 0 ]", - "EXPR [ (1, _1896, _1902) (-1, _1903) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1902) (-1, _1903) (1, _2717) 0 ]", "BLACKBOX::RANGE [(_1903, 32)] []", - "EXPR [ (1, _1856, _1896) (-1, _2789) 0 ]", - "EXPR [ (1, _1896, _1903) (-1, _1904) (1, _2789) 0 ]", + "EXPR [ (1, _1887, _1903) (-1, _1904) (1, _2719) 0 ]", "BLACKBOX::RANGE [(_1904, 32)] []", - "EXPR [ (-1, _1905) (1, _2783) (1, _2784) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1904))], q_c: -4864 })], outputs: [Simple(Witness(1906))]", - "EXPR [ (1, _1904, _1906) (-4864, _1906) (1, _1907) -1 ]", - "EXPR [ (1, _1904, _1907) (-4864, _1907) 0 ]", - "EXPR [ (1, _1896, _1907) (-1, _1908) 0 ]", - "EXPR [ (-1, _1896, _1907) (-1, _1909) 1 ]", - "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1910) 0 ]", - "EXPR [ (1, _1853, _1896) (-1, _2793) 0 ]", - "EXPR [ (1, _1896, _1904) (-1, _2794) 0 ]", - "EXPR [ (-1, _1911) (1, _2793) (1, _2794) 0 ]", - "BLACKBOX::RANGE [(_1911, 32)] []", - "EXPR [ (1, _1896, _1911) (-1, _1912) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1912, 32)] []", - "EXPR [ (1, _1896, _1912) (-1, _1913) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1913, 32)] []", - "EXPR [ (1, _1896, _1913) (-1, _1914) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1914, 32)] []", - "EXPR [ (1, _1898, _1905) (-1, _1915) (1, _2794) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1914))], q_c: -4864 })], outputs: [Simple(Witness(1916))]", - "EXPR [ (1, _1914, _1916) (-4864, _1916) (1, _1917) -1 ]", - "EXPR [ (1, _1914, _1917) (-4864, _1917) 0 ]", - "EXPR [ (1, _1896, _1917) (-1, _1918) 0 ]", - "EXPR [ (-1, _1896, _1917) (-1, _1919) 1 ]", - "EXPR [ (1, _1897, _1909) (1, _1904, _1908) (-1, _1920) 0 ]", - "EXPR [ (32, _1896) (-1, _1921) 0 ]", - "BLACKBOX::RANGE [(_1921, 5)] []", - "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1922) 0 ]", - "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1897, _57])", - "EXPR [ (32, _1896) (-1, _1923) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1923) 0 ], value: EXPR [ (1, _1924) 0 ]) ", - "EXPR [ (1, _67, _1896) (-1, _1896, _1924) (1, _1924) (-1, _1925) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1925) 0 ] at: EXPR [ (1, _1923) 0 ]) ", - "EXPR [ (1, _1896, _1914) (-1, _2805) 0 ]", - "EXPR [ (-1, _1926) (1, _2793) (1, _2805) 0 ]", - "BLACKBOX::RANGE [(_1926, 32)] []", - "EXPR [ (1, _1896, _1926) (-1, _1927) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1927, 32)] []", - "EXPR [ (1, _1896, _1927) (-1, _1928) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1904) (-1, _1905) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1905, 32)] []", + "EXPR [ (1, _1889, _1896) (-1, _1906) (1, _2726) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1905))], q_c: -4864 })], outputs: [Simple(Witness(1907))]", + "EXPR [ (1, _1905, _1907) (-4864, _1907) (1, _1908) -1 ]", + "EXPR [ (1, _1905, _1908) (-4864, _1908) 0 ]", + "EXPR [ (1, _1887, _1908) (-1, _1909) 0 ]", + "EXPR [ (-1, _1887, _1908) (-1, _1910) 1 ]", + "EXPR [ (1, _1888, _1900) (1, _1895, _1899) (-1, _1911) 0 ]", + "EXPR [ (32, _1887) (-1, _1912) 0 ]", + "BLACKBOX::RANGE [(_1912, 5)] []", + "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1913) 0 ]", + "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1888, _57])", + "EXPR [ (32, _1887) (-1, _1914) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1914) 0 ], value: EXPR [ (1, _1915) 0 ]) ", + "EXPR [ (1, _67, _1887) (-1, _1887, _1915) (1, _1915) (-1, _1916) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1916) 0 ] at: EXPR [ (1, _1914) 0 ]) ", + "EXPR [ (1, _1887, _1905) (1, _1889, _1906) (-1, _1917) 0 ]", + "EXPR [ (33, _1887) (-1, _1918) 0 ]", + "BLACKBOX::RANGE [(_1918, 5)] []", + "EXPR [ (33, _1887) (-1, _1919) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1919) 0 ], value: EXPR [ (1, _1920) 0 ]) ", + "EXPR [ (1, _77, _1887) (-1, _1887, _1920) (1, _1920) (-1, _1921) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1921) 0 ] at: EXPR [ (1, _1919) 0 ]) ", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1922))]", + "EXPR [ (-1, _0, _1922) (31, _1922) (1, _1923) -1 ]", + "EXPR [ (-1, _0, _1923) (31, _1923) 0 ]", + "EXPR [ (1, _1905, _1909) (1, _1910, _1911) (-1, _1924) 0 ]", + "EXPR [ (-1, _1923) (-1, _1925) 1 ]", + "EXPR [ (1, _57, _1887) (1, _1889, _1901) (-1, _1926) 0 ]", + "EXPR [ (1, _1889, _1917) (1, _1853) (-1, _1927) 0 ]", + "EXPR [ (1, _1923, _1927) (-1, _1928) 0 ]", "BLACKBOX::RANGE [(_1928, 32)] []", - "EXPR [ (1, _1896, _1928) (-1, _1929) (1, _2789) 0 ]", + "EXPR [ (1, _1854, _1923) (1, _1923, _1928) (-1, _1929) 0 ]", "BLACKBOX::RANGE [(_1929, 32)] []", - "EXPR [ (1, _1898, _1915) (-1, _1930) (1, _2805) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1929))], q_c: -4864 })], outputs: [Simple(Witness(1931))]", - "EXPR [ (1, _1929, _1931) (-4864, _1931) (1, _1932) -1 ]", - "EXPR [ (1, _1929, _1932) (-4864, _1932) 0 ]", - "EXPR [ (1, _1896, _1932) (-1, _1933) 0 ]", - "EXPR [ (-1, _1896, _1932) (-1, _1934) 1 ]", - "EXPR [ (1, _1914, _1918) (1, _1919, _1920) (-1, _1935) 0 ]", - "EXPR [ (33, _1896) (-1, _1936) 0 ]", - "BLACKBOX::RANGE [(_1936, 5)] []", - "EXPR [ (33, _1896) (-1, _1937) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1937) 0 ], value: EXPR [ (1, _1938) 0 ]) ", - "EXPR [ (1, _77, _1896) (-1, _1896, _1938) (1, _1938) (-1, _1939) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1939) 0 ] at: EXPR [ (1, _1937) 0 ]) ", - "EXPR [ (1, _1896, _1929) (-1, _2814) 0 ]", - "EXPR [ (-1, _1940) (1, _2793) (1, _2814) 0 ]", - "BLACKBOX::RANGE [(_1940, 32)] []", - "EXPR [ (1, _1896, _1940) (-1, _1941) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1941, 32)] []", - "EXPR [ (1, _1896, _1941) (-1, _1942) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1942, 32)] []", - "EXPR [ (1, _1896, _1942) (-1, _1943) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1943, 32)] []", - "EXPR [ (1, _1898, _1930) (-1, _1944) (1, _2814) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1943))], q_c: -4864 })], outputs: [Simple(Witness(1945))]", - "EXPR [ (1, _1943, _1945) (-4864, _1945) (1, _1946) -1 ]", - "EXPR [ (1, _1943, _1946) (-4864, _1946) 0 ]", - "EXPR [ (1, _1896, _1946) (-1, _1947) 0 ]", - "EXPR [ (-1, _1896, _1946) (-1, _1948) 1 ]", - "EXPR [ (1, _1929, _1933) (1, _1934, _1935) (-1, _1949) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1950))]", - "EXPR [ (-1, _0, _1950) (31, _1950) (1, _1951) -1 ]", - "EXPR [ (-1, _0, _1951) (31, _1951) 0 ]", - "EXPR [ (1, _1943, _1947) (1, _1948, _1949) (-1, _1952) 0 ]", - "EXPR [ (-1, _1951) (-1, _1953) 1 ]", - "EXPR [ (1, _57, _1896) (1, _1898, _1910) (-1, _1954) 0 ]", - "EXPR [ (1, _1896, _1943) (-1, _2825) 0 ]", - "EXPR [ (1, _1898, _1944) (-1, _2826) 0 ]", - "EXPR [ (1, _1853) (-1, _1955) (1, _2825) (1, _2826) 0 ]", - "EXPR [ (1, _1951, _1955) (-1, _1956) 0 ]", - "BLACKBOX::RANGE [(_1956, 32)] []", - "EXPR [ (1, _1854, _1951) (-1, _2827) 0 ]", - "EXPR [ (1, _1951, _1956) (-1, _1957) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1957, 32)] []", - "EXPR [ (1, _1855, _1951) (-1, _2829) 0 ]", - "EXPR [ (1, _1951, _1957) (-1, _1958) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1958, 32)] []", - "EXPR [ (1, _1856, _1951) (-1, _2831) 0 ]", - "EXPR [ (1, _1951, _1958) (-1, _1959) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1959, 32)] []", - "EXPR [ (-1, _1960) (1, _2825) (1, _2826) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1959))], q_c: -4864 })], outputs: [Simple(Witness(1961))]", - "EXPR [ (1, _1959, _1961) (-4864, _1961) (1, _1962) -1 ]", - "EXPR [ (1, _1959, _1962) (-4864, _1962) 0 ]", - "EXPR [ (1, _1951, _1962) (-1, _1963) 0 ]", - "EXPR [ (-1, _1951, _1962) (-1, _1964) 1 ]", - "EXPR [ (32, _1951) (-1, _1965) 0 ]", - "BLACKBOX::RANGE [(_1965, 5)] []", - "EXPR [ (1, _1896, _1897) (1, _1898, _1899) (-1, _1966) 0 ]", - "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1966, _1952])", - "EXPR [ (32, _1951) (-1, _1967) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1967) 0 ], value: EXPR [ (1, _1968) 0 ]) ", - "EXPR [ (1, _57, _1951) (-1, _1951, _1968) (1, _1968) (-1, _1969) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1969) 0 ] at: EXPR [ (1, _1967) 0 ]) ", - "EXPR [ (1, _1853, _1951) (-1, _2837) 0 ]", - "EXPR [ (1, _1951, _1959) (-1, _2838) 0 ]", - "EXPR [ (-1, _1970) (1, _2837) (1, _2838) 0 ]", - "BLACKBOX::RANGE [(_1970, 32)] []", - "EXPR [ (1, _1951, _1970) (-1, _1971) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1971, 32)] []", - "EXPR [ (1, _1951, _1971) (-1, _1972) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1972, 32)] []", - "EXPR [ (1, _1951, _1972) (-1, _1973) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1973, 32)] []", - "EXPR [ (1, _1953, _1960) (-1, _1974) (1, _2838) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1973))], q_c: -4864 })], outputs: [Simple(Witness(1975))]", - "EXPR [ (1, _1973, _1975) (-4864, _1975) (1, _1976) -1 ]", - "EXPR [ (1, _1973, _1976) (-4864, _1976) 0 ]", - "EXPR [ (1, _1951, _1976) (-1, _1977) 0 ]", - "EXPR [ (-1, _1951, _1976) (-1, _1978) 1 ]", - "EXPR [ (1, _1952, _1964) (1, _1959, _1963) (-1, _1979) 0 ]", - "EXPR [ (33, _1951) (-1, _1980) 0 ]", - "BLACKBOX::RANGE [(_1980, 5)] []", - "EXPR [ (33, _1951) (-1, _1981) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1981) 0 ], value: EXPR [ (1, _1982) 0 ]) ", - "EXPR [ (1, _67, _1951) (-1, _1951, _1982) (1, _1982) (-1, _1983) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1983) 0 ] at: EXPR [ (1, _1981) 0 ]) ", - "EXPR [ (1, _1951, _1973) (-1, _2847) 0 ]", - "EXPR [ (-1, _1984) (1, _2837) (1, _2847) 0 ]", - "BLACKBOX::RANGE [(_1984, 32)] []", - "EXPR [ (1, _1951, _1984) (-1, _1985) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1985, 32)] []", - "EXPR [ (1, _1951, _1985) (-1, _1986) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1986, 32)] []", - "EXPR [ (1, _1951, _1986) (-1, _1987) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1987, 32)] []", - "EXPR [ (1, _1953, _1974) (-1, _1988) (1, _2847) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1987))], q_c: -4864 })], outputs: [Simple(Witness(1989))]", - "EXPR [ (1, _1987, _1989) (-4864, _1989) (1, _1990) -1 ]", - "EXPR [ (1, _1987, _1990) (-4864, _1990) 0 ]", - "EXPR [ (1, _1951, _1990) (-1, _1991) 0 ]", - "EXPR [ (-1, _1951, _1990) (-1, _1992) 1 ]", - "EXPR [ (1, _1973, _1977) (1, _1978, _1979) (-1, _1993) 0 ]", - "EXPR [ (34, _1951) (-1, _1994) 0 ]", - "BLACKBOX::RANGE [(_1994, 5)] []", - "EXPR [ (34, _1951) (-1, _1995) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1995) 0 ], value: EXPR [ (1, _1996) 0 ]) ", - "EXPR [ (1, _77, _1951) (-1, _1951, _1996) (1, _1996) (-1, _1997) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1997) 0 ] at: EXPR [ (1, _1995) 0 ]) ", - "EXPR [ (1, _1951, _1987) (-1, _2856) 0 ]", - "EXPR [ (-1, _1998) (1, _2837) (1, _2856) 0 ]", - "BLACKBOX::RANGE [(_1998, 32)] []", - "EXPR [ (1, _1951, _1998) (-1, _1999) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1999, 32)] []", - "EXPR [ (1, _1951, _1999) (-1, _2000) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_2000, 32)] []", - "EXPR [ (1, _1951, _2000) (-1, _2001) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_2001, 32)] []", - "EXPR [ (1, _1953, _1988) (-1, _2002) (1, _2856) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2001))], q_c: -4864 })], outputs: [Simple(Witness(2003))]", - "EXPR [ (1, _2001, _2003) (-4864, _2003) (1, _2004) -1 ]", - "EXPR [ (1, _2001, _2004) (-4864, _2004) 0 ]", - "EXPR [ (1, _1951, _2004) (-1, _2005) 0 ]", - "EXPR [ (-1, _1951, _2004) (-1, _2006) 1 ]", - "EXPR [ (1, _1987, _1991) (1, _1992, _1993) (-1, _2007) 0 ]", - "EXPR [ (1, _1951, _1952) (1, _1953, _1954) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1951), Witness(2001)), (1, Witness(1953), Witness(2002))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(2008))]", - "EXPR [ (1, _1951, _2001) (1, _1953, _2002) (-1, _2009) -13 ]", - "EXPR [ (1, _2008, _2009) -1 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(2010))]", - "EXPR [ (1, _0, _2010) (1, _2011) -1 ]", - "EXPR [ (1, _0, _2011) 0 ]", + "EXPR [ (1, _1855, _1923) (1, _1923, _1929) (-1, _1930) 0 ]", + "BLACKBOX::RANGE [(_1930, 32)] []", + "EXPR [ (1, _1856, _1923) (1, _1923, _1930) (-1, _1931) 0 ]", + "BLACKBOX::RANGE [(_1931, 32)] []", + "EXPR [ (1, _1889, _1917) (-1, _1932) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1931))], q_c: -4864 })], outputs: [Simple(Witness(1933))]", + "EXPR [ (1, _1931, _1933) (-4864, _1933) (1, _1934) -1 ]", + "EXPR [ (1, _1931, _1934) (-4864, _1934) 0 ]", + "EXPR [ (1, _1923, _1934) (-1, _1935) 0 ]", + "EXPR [ (-1, _1923, _1934) (-1, _1936) 1 ]", + "EXPR [ (32, _1923) (-1, _1937) 0 ]", + "BLACKBOX::RANGE [(_1937, 5)] []", + "EXPR [ (1, _1887, _1888) (1, _1889, _1890) (-1, _1938) 0 ]", + "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1938, _1924])", + "EXPR [ (32, _1923) (-1, _1939) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1939) 0 ], value: EXPR [ (1, _1940) 0 ]) ", + "EXPR [ (1, _57, _1923) (-1, _1923, _1940) (1, _1940) (-1, _1941) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1941) 0 ] at: EXPR [ (1, _1939) 0 ]) ", + "EXPR [ (1, _1923, _1931) (1, _1925, _1932) (-1, _1942) 0 ]", + "EXPR [ (33, _1923) (-1, _1943) 0 ]", + "BLACKBOX::RANGE [(_1943, 5)] []", + "EXPR [ (33, _1923) (-1, _1944) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1944) 0 ], value: EXPR [ (1, _1945) 0 ]) ", + "EXPR [ (1, _67, _1923) (-1, _1923, _1945) (1, _1945) (-1, _1946) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1946) 0 ] at: EXPR [ (1, _1944) 0 ]) ", + "EXPR [ (34, _1923) (-1, _1947) 0 ]", + "BLACKBOX::RANGE [(_1947, 5)] []", + "EXPR [ (34, _1923) (-1, _1948) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1948) 0 ], value: EXPR [ (1, _1949) 0 ]) ", + "EXPR [ (1, _77, _1923) (-1, _1923, _1949) (1, _1949) (-1, _1950) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1950) 0 ] at: EXPR [ (1, _1948) 0 ]) ", + "EXPR [ (1, _1923, _1924) (1, _1925, _1926) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1925), Witness(1942))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(1951))]", + "EXPR [ (1, _1925, _1942) (-1, _1952) -13 ]", + "EXPR [ (1, _1951, _1952) -1 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1953))]", + "EXPR [ (1, _0, _1953) (1, _1954) -1 ]", + "EXPR [ (1, _0, _1954) 0 ]", "EXPR [ (1, _0) 0 ]", - "EXPR [ (-1, _2011) 1 ]", - "EXPR [ (-1, _77, _2011) (1, _77) (3, _2011) (-1, _2012) 0 ]", - "EXPR [ (1, _2011, _2012) -3 ]", - "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_2013, _2014, _2015, _2016, _2017, _2018, _2019, _2020, _2021, _2022, _2023, _2024, _2025, _2026, _2027, _2028, _2029, _2030, _2031, _2032, _2033, _2034, _2035, _2036, _2037, _2038, _2039, _2040, _2041, _2042, _2043, _2044]", - "EXPR [ (1, _2011, _2013) (-1, _10) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2011), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2045)), Simple(Witness(2046))]", - "BLACKBOX::RANGE [(_2045, 1)] []", - "BLACKBOX::RANGE [(_2046, 32)] []", - "EXPR [ (1, _67, _2011) (-4294967296, _2045) (-1, _2046) 4294967293 ]", - "EXPR [ (-1, _2045) (-1, _2047) 1 ]", - "EXPR [ (1, _67, _2011) (-1, _2048) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2047), Witness(2048))], linear_combinations: [(1, Witness(57)), (-3, Witness(2045))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2049)), Simple(Witness(2050))]", - "BLACKBOX::RANGE [(_2049, 1)] []", - "BLACKBOX::RANGE [(_2050, 32)] []", - "EXPR [ (-1, _2047, _2048) (1, _57) (-3, _2045) (-4294967296, _2049) (-1, _2050) 4294967296 ]", - "EXPR [ (1, _2047, _2048) (3, _2045) (-1, _2051) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2045), Witness(2048)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-3, Witness(2047)), (1, Witness(2051))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2052)), Simple(Witness(2053))]", - "BLACKBOX::RANGE [(_2052, 1)] []", - "BLACKBOX::RANGE [(_2053, 32)] []", - "EXPR [ (1, _57, _2049) (-1, _2869) 0 ]", - "EXPR [ (-1, _2049, _2051) (-1, _2871) 0 ]", - "EXPR [ (-1, _2045, _2048) (-3, _2047) (1, _2051) (-4294967296, _2052) (-1, _2053) (1, _2869) (1, _2871) 4294967296 ]", - "EXPR [ (-1, _2052) (-1, _2054) 1 ]", - "EXPR [ (1, _2051) (-1, _2055) (1, _2869) (1, _2871) 0 ]", - "EXPR [ (1, _2045, _2048) (3, _2047) (-1, _2056) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2005), Witness(2001)), (1, Witness(2006), Witness(2007)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2057)), Simple(Witness(2058))]", - "BLACKBOX::RANGE [(_2057, 1)] []", - "BLACKBOX::RANGE [(_2058, 32)] []", - "EXPR [ (1, _2001, _2005) (-1, _2874) 0 ]", - "EXPR [ (1, _2006, _2007) (-1, _2875) 0 ]", - "EXPR [ (-1, _57) (-4294967296, _2057) (-1, _2058) (1, _2869) (1, _2871) (1, _2874) (1, _2875) 4294967296 ]", - "EXPR [ (-1, _2057) (-1, _2059) 1 ]", - "EXPR [ (-1, _2060) (1, _2874) (1, _2875) 0 ]", - "EXPR [ (1, _57) (-1, _2061) (-1, _2869) (-1, _2871) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2056)), (-1, Witness(2054), Witness(2055)), (1, Witness(2057), Witness(2060)), (1, Witness(2059), Witness(2061))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2062)), Simple(Witness(2063))]", - "BLACKBOX::RANGE [(_2062, 1)] []", - "BLACKBOX::RANGE [(_2063, 32)] []", - "EXPR [ (-1, _2052, _2056) (-1, _2878) 0 ]", - "EXPR [ (-1, _2054, _2055) (-1, _2879) 0 ]", - "EXPR [ (1, _2057, _2060) (-1, _2880) 0 ]", - "EXPR [ (1, _2059, _2061) (-1, _2881) 0 ]", - "EXPR [ (-4294967296, _2062) (-1, _2063) (1, _2878) (1, _2879) (1, _2880) (1, _2881) 4294967296 ]", - "EXPR [ (-1, _2062) (-1, _2064) 1 ]", - "EXPR [ (-1, _2065) (1, _2880) (1, _2881) 0 ]", - "EXPR [ (-1, _2066) (-1, _2878) (-1, _2879) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2055)), (-1, Witness(2054), Witness(2056)), (1, Witness(2062), Witness(2065)), (1, Witness(2064), Witness(2066))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2067)), Simple(Witness(2068))]", - "BLACKBOX::RANGE [(_2067, 1)] []", - "BLACKBOX::RANGE [(_2068, 32)] []", - "EXPR [ (-1, _2052, _2055) (-1, _2883) 0 ]", - "EXPR [ (-1, _2054, _2056) (-1, _2884) 0 ]", - "EXPR [ (1, _2062, _2065) (-1, _2885) 0 ]", - "EXPR [ (1, _2064, _2066) (-1, _2886) 0 ]", - "EXPR [ (-4294967296, _2067) (-1, _2068) (1, _2883) (1, _2884) (1, _2885) (1, _2886) 4294967296 ]", - "EXPR [ (-1, _2067) (-1, _2069) 1 ]", - "EXPR [ (-1, _2070) (1, _2885) (1, _2886) 0 ]", - "EXPR [ (-1, _2071) (-1, _2883) (-1, _2884) 0 ]", - "EXPR [ (1, _2057, _2061) (1, _2059, _2060) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(2011))], q_c: 0 })], outputs: [Simple(Witness(2072))]", - "EXPR [ (12, _2011, _2072) (1, _2073) -1 ]", - "EXPR [ (12, _2011, _2073) 0 ]", - "EXPR [ (-1, _2073) (-1, _2074) 1 ]", - "EXPR [ (2, _2011, _2011) (-1, _2075) 0 ]", - "EXPR [ (1, _2074, _2075) (3, _2073) -2 ]", - "EXPR [ (1, _2062, _2066) (1, _2064, _2065) (-1, _2076) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2076))], q_c: 0 })], outputs: [Simple(Witness(2077))]", - "EXPR [ (1, _2076, _2077) (1, _2078) -1 ]", - "EXPR [ (1, _2076, _2078) 0 ]", - "EXPR [ (1, _2067, _2071) (1, _2069, _2070) (-1, _2079) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2079))], q_c: 0 })], outputs: [Simple(Witness(2080))]", - "EXPR [ (1, _2079, _2080) (1, _2081) -1 ]", - "EXPR [ (1, _2079, _2081) 0 ]", - "EXPR [ (-1, _2081) (-1, _2082) 1 ]", - "EXPR [ (-2, _2073, _2078) (2, _2073) (3, _2078) (-1, _2083) 0 ]", - "EXPR [ (1, _2067, _2070) (1, _2069, _2071) (-1, _2084) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2084))], q_c: 0 })], outputs: [Simple(Witness(2085))]", - "EXPR [ (1, _2084, _2085) (1, _2086) -1 ]", - "EXPR [ (1, _2084, _2086) 0 ]", - "EXPR [ (-1, _2086) (-1, _2087) 1 ]", - "EXPR [ (1, _2082, _2083) (4, _2081) (-1, _2088) 0 ]", - "EXPR [ (1, _2087, _2088) (5, _2086) 0 ]", + "EXPR [ (-1, _1954) 1 ]", + "EXPR [ (-1, _77, _1954) (1, _77) (3, _1954) (-1, _1955) 0 ]", + "EXPR [ (1, _1954, _1955) -3 ]", + "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_1956, _1957, _1958, _1959, _1960, _1961, _1962, _1963, _1964, _1965, _1966, _1967, _1968, _1969, _1970, _1971, _1972, _1973, _1974, _1975, _1976, _1977, _1978, _1979, _1980, _1981, _1982, _1983, _1984, _1985, _1986, _1987]", + "EXPR [ (1, _1954, _1956) (-1, _10) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1954), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1988)), Simple(Witness(1989))]", + "BLACKBOX::RANGE [(_1988, 1)] []", + "BLACKBOX::RANGE [(_1989, 32)] []", + "EXPR [ (1, _67, _1954) (-4294967296, _1988) (-1, _1989) 4294967293 ]", + "EXPR [ (-1, _1988) (-1, _1990) 1 ]", + "EXPR [ (1, _67, _1954) (-1, _1991) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1990), Witness(1991))], linear_combinations: [(1, Witness(57)), (-3, Witness(1988))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1992)), Simple(Witness(1993))]", + "BLACKBOX::RANGE [(_1992, 1)] []", + "BLACKBOX::RANGE [(_1993, 32)] []", + "EXPR [ (-1, _1990, _1991) (1, _57) (-3, _1988) (-4294967296, _1992) (-1, _1993) 4294967296 ]", + "EXPR [ (1, _1990, _1991) (3, _1988) (-1, _1994) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1988), Witness(1991)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-3, Witness(1990)), (1, Witness(1994))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1995)), Simple(Witness(1996))]", + "BLACKBOX::RANGE [(_1995, 1)] []", + "BLACKBOX::RANGE [(_1996, 32)] []", + "EXPR [ (1, _57, _1992) (-1, _2765) 0 ]", + "EXPR [ (-1, _1992, _1994) (-1, _2767) 0 ]", + "EXPR [ (-1, _1988, _1991) (-3, _1990) (1, _1994) (-4294967296, _1995) (-1, _1996) (1, _2765) (1, _2767) 4294967296 ]", + "EXPR [ (-1, _1995) (-1, _1997) 1 ]", + "EXPR [ (1, _1994) (-1, _1998) (1, _2765) (1, _2767) 0 ]", + "EXPR [ (1, _1988, _1991) (3, _1990) (-1, _1999) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1935), Witness(1931)), (1, Witness(1936), Witness(1924)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2000)), Simple(Witness(2001))]", + "BLACKBOX::RANGE [(_2000, 1)] []", + "BLACKBOX::RANGE [(_2001, 32)] []", + "EXPR [ (1, _1924, _1936) (-1, _2770) 0 ]", + "EXPR [ (1, _1931, _1935) (-1, _2771) 0 ]", + "EXPR [ (-1, _57) (-4294967296, _2000) (-1, _2001) (1, _2765) (1, _2767) (1, _2770) (1, _2771) 4294967296 ]", + "EXPR [ (-1, _2000) (-1, _2002) 1 ]", + "EXPR [ (-1, _2003) (1, _2770) (1, _2771) 0 ]", + "EXPR [ (1, _57) (-1, _2004) (-1, _2765) (-1, _2767) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1999)), (-1, Witness(1997), Witness(1998)), (1, Witness(2000), Witness(2003)), (1, Witness(2002), Witness(2004))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2005)), Simple(Witness(2006))]", + "BLACKBOX::RANGE [(_2005, 1)] []", + "BLACKBOX::RANGE [(_2006, 32)] []", + "EXPR [ (-1, _1995, _1999) (-1, _2774) 0 ]", + "EXPR [ (-1, _1997, _1998) (-1, _2775) 0 ]", + "EXPR [ (1, _2000, _2003) (-1, _2776) 0 ]", + "EXPR [ (1, _2002, _2004) (-1, _2777) 0 ]", + "EXPR [ (-4294967296, _2005) (-1, _2006) (1, _2774) (1, _2775) (1, _2776) (1, _2777) 4294967296 ]", + "EXPR [ (-1, _2005) (-1, _2007) 1 ]", + "EXPR [ (-1, _2008) (1, _2776) (1, _2777) 0 ]", + "EXPR [ (-1, _2009) (-1, _2774) (-1, _2775) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1998)), (-1, Witness(1997), Witness(1999)), (1, Witness(2005), Witness(2008)), (1, Witness(2007), Witness(2009))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2010)), Simple(Witness(2011))]", + "BLACKBOX::RANGE [(_2010, 1)] []", + "BLACKBOX::RANGE [(_2011, 32)] []", + "EXPR [ (-1, _1995, _1998) (-1, _2779) 0 ]", + "EXPR [ (-1, _1997, _1999) (-1, _2780) 0 ]", + "EXPR [ (1, _2005, _2008) (-1, _2781) 0 ]", + "EXPR [ (1, _2007, _2009) (-1, _2782) 0 ]", + "EXPR [ (-4294967296, _2010) (-1, _2011) (1, _2779) (1, _2780) (1, _2781) (1, _2782) 4294967296 ]", + "EXPR [ (-1, _2010) (-1, _2012) 1 ]", + "EXPR [ (-1, _2013) (1, _2781) (1, _2782) 0 ]", + "EXPR [ (-1, _2014) (-1, _2779) (-1, _2780) 0 ]", + "EXPR [ (1, _2000, _2004) (1, _2002, _2003) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(1954))], q_c: 0 })], outputs: [Simple(Witness(2015))]", + "EXPR [ (12, _1954, _2015) (1, _2016) -1 ]", + "EXPR [ (12, _1954, _2016) 0 ]", + "EXPR [ (-1, _2016) (-1, _2017) 1 ]", + "EXPR [ (2, _1954, _1954) (-1, _2018) 0 ]", + "EXPR [ (1, _2017, _2018) (3, _2016) -2 ]", + "EXPR [ (1, _2005, _2009) (1, _2007, _2008) (-1, _2019) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2019))], q_c: 0 })], outputs: [Simple(Witness(2020))]", + "EXPR [ (1, _2019, _2020) (1, _2021) -1 ]", + "EXPR [ (1, _2019, _2021) 0 ]", + "EXPR [ (1, _2010, _2014) (1, _2012, _2013) (-1, _2022) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2022))], q_c: 0 })], outputs: [Simple(Witness(2023))]", + "EXPR [ (1, _2022, _2023) (1, _2024) -1 ]", + "EXPR [ (1, _2022, _2024) 0 ]", + "EXPR [ (-1, _2024) (-1, _2025) 1 ]", + "EXPR [ (-2, _2016, _2021) (2, _2016) (3, _2021) (-1, _2026) 0 ]", + "EXPR [ (1, _2010, _2013) (1, _2012, _2014) (-1, _2027) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2027))], q_c: 0 })], outputs: [Simple(Witness(2028))]", + "EXPR [ (1, _2027, _2028) (1, _2029) -1 ]", + "EXPR [ (1, _2027, _2029) 0 ]", + "EXPR [ (-1, _2029) (-1, _2030) 1 ]", + "EXPR [ (1, _2025, _2026) (4, _2024) (-1, _2031) 0 ]", + "EXPR [ (1, _2030, _2031) (5, _2029) 0 ]", "unconstrained func 0", "[Const { destination: Direct(21), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(20), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(21), offset_address: Direct(20) }, Const { destination: Direct(2), bit_size: Field, value: 0 }, BinaryFieldOp { destination: Direct(3), op: Equals, lhs: Direct(0), rhs: Direct(2) }, JumpIf { condition: Direct(3), location: 8 }, Const { destination: Direct(1), bit_size: Field, value: 1 }, BinaryFieldOp { destination: Direct(0), op: Div, lhs: Direct(1), rhs: Direct(0) }, Stop { return_data: HeapVector { pointer: Direct(20), size: Direct(21) } }]", "unconstrained func 1", "[Const { destination: Direct(10), bit_size: Integer(U32), value: 2 }, Const { destination: Direct(11), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(10), offset_address: Direct(11) }, BinaryFieldOp { destination: Direct(2), op: IntegerDiv, lhs: Direct(0), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Mul, lhs: Direct(2), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Sub, lhs: Direct(0), rhs: Direct(1) }, Mov { destination: Direct(0), source: Direct(2) }, Stop { return_data: HeapVector { pointer: Direct(11), size: Direct(10) } }]" ], - "debug_symbols": "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", + "debug_symbols": "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", "file_map": { "19": { "source": "// Exposed only for usage in `std::meta`\npub(crate) mod poseidon2;\n\nuse crate::default::Default;\nuse crate::embedded_curve_ops::{\n EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_array_return,\n};\nuse crate::meta::derive_via;\n\n#[foreign(sha256_compression)]\n// docs:start:sha256_compression\npub fn sha256_compression(input: [u32; 16], state: [u32; 8]) -> [u32; 8] {}\n// docs:end:sha256_compression\n\n#[foreign(keccakf1600)]\n// docs:start:keccakf1600\npub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {}\n// docs:end:keccakf1600\n\npub mod keccak {\n #[deprecated(\"This function has been moved to std::hash::keccakf1600\")]\n pub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {\n super::keccakf1600(input)\n }\n}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n// docs:start:blake3\npub fn blake3(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{\n if crate::runtime::is_unconstrained() {\n // Temporary measure while Barretenberg is main proving system.\n // Please open an issue if you're working on another proving system and running into problems due to this.\n crate::static_assert(\n N <= 1024,\n \"Barretenberg cannot prove blake3 hashes with inputs larger than 1024 bytes\",\n );\n }\n __blake3(input)\n}\n\n#[foreign(blake3)]\nfn __blake3(input: [u8; N]) -> [u8; 32] {}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[inline_always]\npub fn pedersen_commitment_with_separator(\n input: [Field; N],\n separator: u32,\n) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constrain the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[no_predicates]\npub fn pedersen_hash_with_separator(input: [Field; N], separator: u32) -> Field {\n let mut scalars: [EmbeddedCurveScalar; N + 1] = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N + 1];\n let mut generators: [EmbeddedCurvePoint; N + 1] =\n [EmbeddedCurvePoint::point_at_infinity(); N + 1];\n let domain_generators: [EmbeddedCurvePoint; N] =\n derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n\n for i in 0..N {\n scalars[i] = from_field_unsafe(input[i]);\n generators[i] = domain_generators[i];\n }\n scalars[N] = EmbeddedCurveScalar { lo: N as Field, hi: 0 as Field };\n\n let length_generator: [EmbeddedCurvePoint; 1] =\n derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n generators[N] = length_generator[0];\n multi_scalar_mul_array_return(generators, scalars)[0].x\n}\n\n#[field(bn254)]\n#[inline_always]\npub fn derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n // TODO(https://github.com/noir-lang/noir/issues/5672): Add back assert_constant on starting_index\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n// Same as from_field but:\n// does not assert the limbs are 128 bits\n// does not assert the decomposition does not overflow the EmbeddedCurveScalar\nfn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n // Safety: xlo and xhi decomposition is checked below\n let (xlo, xhi) = unsafe { crate::field::bn254::decompose_hint(scalar) };\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n// Generic hashing support.\n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\n#[derive_via(derive_hash)]\npub trait Hash {\n fn hash(self, state: &mut H)\n where\n H: Hasher;\n}\n\n// docs:start:derive_hash\ncomptime fn derive_hash(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::hash::Hash };\n let signature = quote { fn hash(_self: Self, _state: &mut H) where H: $crate::hash::Hasher };\n let for_each_field = |name| quote { _self.$name.hash(_state); };\n crate::meta::make_trait_impl(\n s,\n name,\n signature,\n for_each_field,\n quote {},\n |fields| fields,\n )\n}\n// docs:end:derive_hash\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\npub trait Hasher {\n fn finish(self) -> Field;\n\n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\npub trait BuildHasher {\n type H: Hasher;\n\n fn build_hasher(self) -> H;\n}\n\npub struct BuildHasherDefault;\n\nimpl BuildHasher for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n type H = H;\n\n fn build_hasher(_self: Self) -> H {\n H::default()\n }\n}\n\nimpl Default for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n fn default() -> Self {\n BuildHasherDefault {}\n }\n}\n\nimpl Hash for Field {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self);\n }\n}\n\nimpl Hash for u1 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u128 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u8 as Field);\n }\n}\n\nimpl Hash for i16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u16 as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u32 as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u64 as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash(_self: Self, _state: &mut H)\n where\n H: Hasher,\n {}\n}\n\nimpl Hash for [T; N]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for [T]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for (A, B)\nwhere\n A: Hash,\n B: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl Hash for (A, B, C)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D, E)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n E: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1),\n 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f,\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1),\n EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false,\n },\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2),\n 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2),\n EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3),\n 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3),\n EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4),\n 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4),\n EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5),\n 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5),\n EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6),\n 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6),\n EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false,\n },\n );\n}\n", diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_9223372036854775807.snap index 21f58635963..d032811c9c8 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_9223372036854775807.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/conditional_1/execute__tests__force_brillig_false_inliner_9223372036854775807.snap @@ -70,7 +70,7 @@ expression: artifact }, "bytecode": [ "func 0", - "current witness index : _2886", + "current witness index : _2782", "private parameters indices : [_0, _1, _2, _3, _4, _5, _6, _7, _8, _9]", "public parameters indices : [_10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41]", "return value indices : []", @@ -119,9 +119,9 @@ expression: artifact "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(42))]", "EXPR [ (-1, _0, _42) (1, _43) -1 ]", "EXPR [ (-1, _0, _43) 0 ]", - "EXPR [ (1, _0, _43) (-1, _2089) 0 ]", - "EXPR [ (1, _4, _43) (-1, _2090) 0 ]", - "EXPR [ (-1, _44) (1, _2089) (1, _2090) 0 ]", + "EXPR [ (1, _0, _43) (-1, _2032) 0 ]", + "EXPR [ (1, _4, _43) (-1, _2033) 0 ]", + "EXPR [ (-1, _44) (1, _2032) (1, _2033) 0 ]", "BLACKBOX::RANGE [(_44, 32)] []", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(44))], q_c: -4864 })], outputs: [Simple(Witness(45))]", "EXPR [ (1, _44, _45) (-4864, _45) (1, _46) -1 ]", @@ -130,8 +130,8 @@ expression: artifact "MEM (id: 0, read at: EXPR [ (1, _47) 0 ], value: EXPR [ (1, _48) 0 ]) ", "EXPR [ (1, _43, _46) (-1, _49) 0 ]", "INIT (id: 3, len: 4, witnesses: [_1, _2, _3, _4])", - "EXPR [ (1, _44, _49) (-1, _2091) 0 ]", - "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2091) 0 ]", + "EXPR [ (1, _44, _49) (-1, _2034) 0 ]", + "EXPR [ (-1, _48, _49) (1, _48) (-1, _50) (1, _2034) 0 ]", "MEM (id: 3, write EXPR [ (1, _50) 0 ] at: EXPR [ (1, _47) 0 ]) ", "EXPR [ (-1, _51) 0 ]", "MEM (id: 3, read at: EXPR [ (1, _51) 0 ], value: EXPR [ (1, _52) 0 ]) ", @@ -140,30 +140,30 @@ expression: artifact "EXPR [ (-1, _55) 2 ]", "MEM (id: 3, read at: EXPR [ (1, _55) 0 ], value: EXPR [ (1, _56) 0 ]) ", "EXPR [ (-1, _3, _49) (1, _49, _56) (1, _3) (-1, _57) 0 ]", - "EXPR [ (1, _43, _44) (-1, _2095) 0 ]", - "EXPR [ (-1, _58) (1, _2090) (1, _2095) 0 ]", + "EXPR [ (1, _43, _44) (-1, _2038) 0 ]", + "EXPR [ (-1, _58) (1, _2033) (1, _2038) 0 ]", "BLACKBOX::RANGE [(_58, 32)] []", - "EXPR [ (1, _43, _57) (-1, _2096) 0 ]", - "EXPR [ (1, _43, _58) (-1, _59) (1, _2096) 0 ]", + "EXPR [ (1, _43, _57) (-1, _2039) 0 ]", + "EXPR [ (1, _43, _58) (-1, _59) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_59, 32)] []", "EXPR [ (-1, _43) (-1, _60) 1 ]", - "EXPR [ (1, _0) (-1, _61) (-1, _2089) (1, _2095) 0 ]", + "EXPR [ (1, _0) (-1, _61) (-1, _2032) (1, _2038) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(59))], q_c: -4864 })], outputs: [Simple(Witness(62))]", "EXPR [ (1, _59, _62) (-4864, _62) (1, _63) -1 ]", "EXPR [ (1, _59, _63) (-4864, _63) 0 ]", "EXPR [ (1, _43, _63) (-1, _64) 0 ]", "EXPR [ (-1, _43, _63) (-1, _65) 1 ]", - "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2091) 0 ]", + "EXPR [ (-1, _4, _49) (1, _4) (-1, _66) (1, _2034) 0 ]", "EXPR [ (-1, _2, _49) (1, _49, _54) (1, _2) (-1, _67) 0 ]", - "EXPR [ (1, _43, _59) (-1, _2101) 0 ]", - "EXPR [ (-1, _68) (1, _2090) (1, _2101) 0 ]", + "EXPR [ (1, _43, _59) (-1, _2044) 0 ]", + "EXPR [ (-1, _68) (1, _2033) (1, _2044) 0 ]", "BLACKBOX::RANGE [(_68, 32)] []", - "EXPR [ (1, _43, _68) (-1, _69) (1, _2096) 0 ]", + "EXPR [ (1, _43, _68) (-1, _69) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_69, 32)] []", - "EXPR [ (1, _43, _67) (-1, _2103) 0 ]", - "EXPR [ (1, _43, _69) (-1, _70) (1, _2103) 0 ]", + "EXPR [ (1, _43, _67) (-1, _2046) 0 ]", + "EXPR [ (1, _43, _69) (-1, _70) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_70, 32)] []", - "EXPR [ (1, _60, _61) (-1, _71) (1, _2101) 0 ]", + "EXPR [ (1, _60, _61) (-1, _71) (1, _2044) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(70))], q_c: -4864 })], outputs: [Simple(Witness(72))]", "EXPR [ (1, _70, _72) (-4864, _72) (1, _73) -1 ]", "EXPR [ (1, _70, _73) (-4864, _73) 0 ]", @@ -171,16 +171,16 @@ expression: artifact "EXPR [ (-1, _43, _73) (-1, _75) 1 ]", "EXPR [ (1, _59, _64) (1, _65, _66) (-1, _76) 0 ]", "EXPR [ (-1, _1, _49) (1, _49, _52) (1, _1) (-1, _77) 0 ]", - "EXPR [ (1, _43, _70) (-1, _2110) 0 ]", - "EXPR [ (-1, _78) (1, _2090) (1, _2110) 0 ]", + "EXPR [ (1, _43, _70) (-1, _2053) 0 ]", + "EXPR [ (-1, _78) (1, _2033) (1, _2053) 0 ]", "BLACKBOX::RANGE [(_78, 32)] []", - "EXPR [ (1, _43, _78) (-1, _79) (1, _2096) 0 ]", + "EXPR [ (1, _43, _78) (-1, _79) (1, _2039) 0 ]", "BLACKBOX::RANGE [(_79, 32)] []", - "EXPR [ (1, _43, _79) (-1, _80) (1, _2103) 0 ]", + "EXPR [ (1, _43, _79) (-1, _80) (1, _2046) 0 ]", "BLACKBOX::RANGE [(_80, 32)] []", "EXPR [ (1, _43, _77) (1, _43, _80) (-1, _81) 0 ]", "BLACKBOX::RANGE [(_81, 32)] []", - "EXPR [ (1, _60, _71) (-1, _82) (1, _2110) 0 ]", + "EXPR [ (1, _60, _71) (-1, _82) (1, _2053) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(81))], q_c: -4864 })], outputs: [Simple(Witness(83))]", "EXPR [ (1, _81, _83) (-4864, _83) (1, _84) -1 ]", "EXPR [ (1, _81, _84) (-4864, _84) 0 ]", @@ -193,13 +193,13 @@ expression: artifact "EXPR [ (1, _81, _85) (1, _86, _87) (-1, _90) 0 ]", "EXPR [ (-1, _89) (-1, _91) 1 ]", "EXPR [ (1, _43, _57) (-1, _92) 0 ]", - "EXPR [ (1, _43, _81) (-1, _2120) 0 ]", - "EXPR [ (1, _60, _82) (-1, _2121) 0 ]", - "EXPR [ (-1, _93) (1, _2090) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (1, _43, _81) (-1, _2063) 0 ]", + "EXPR [ (1, _60, _82) (-1, _2064) 0 ]", + "EXPR [ (-1, _93) (1, _2033) (1, _2063) (1, _2064) 0 ]", "EXPR [ (1, _89, _93) (-1, _94) 0 ]", "BLACKBOX::RANGE [(_94, 32)] []", - "EXPR [ (1, _89, _90) (-1, _2122) 0 ]", - "EXPR [ (1, _89, _94) (-1, _95) (1, _2122) 0 ]", + "EXPR [ (1, _89, _90) (-1, _2065) 0 ]", + "EXPR [ (1, _89, _94) (-1, _95) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_95, 32)] []", "EXPR [ (1, _43, _67) (1, _95) (-1, _96) 0 ]", "EXPR [ (1, _89, _96) (-1, _97) 0 ]", @@ -207,7 +207,7 @@ expression: artifact "EXPR [ (1, _43, _77) (1, _97) (-1, _98) 0 ]", "EXPR [ (1, _89, _98) (-1, _99) 0 ]", "BLACKBOX::RANGE [(_99, 32)] []", - "EXPR [ (-1, _100) (1, _2120) (1, _2121) 0 ]", + "EXPR [ (-1, _100) (1, _2063) (1, _2064) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(99))], q_c: -4864 })], outputs: [Simple(Witness(101))]", "EXPR [ (1, _99, _101) (-4864, _101) (1, _102) -1 ]", "EXPR [ (1, _99, _102) (-4864, _102) 0 ]", @@ -217,10 +217,10 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _99) (-1, _106) 0 ]", "EXPR [ (1, _89, _106) (-1, _107) 0 ]", "BLACKBOX::RANGE [(_107, 32)] []", - "EXPR [ (1, _89, _107) (-1, _108) (1, _2122) 0 ]", + "EXPR [ (1, _89, _107) (-1, _108) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_108, 32)] []", - "EXPR [ (1, _57, _89) (-1, _2125) 0 ]", - "EXPR [ (1, _89, _108) (-1, _109) (1, _2125) 0 ]", + "EXPR [ (1, _57, _89) (-1, _2068) 0 ]", + "EXPR [ (1, _89, _108) (-1, _109) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_109, 32)] []", "EXPR [ (1, _43, _77) (1, _109) (-1, _110) 0 ]", "EXPR [ (1, _89, _110) (-1, _111) 0 ]", @@ -236,12 +236,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _111) (-1, _119) 0 ]", "EXPR [ (1, _89, _119) (-1, _120) 0 ]", "BLACKBOX::RANGE [(_120, 32)] []", - "EXPR [ (1, _89, _120) (-1, _121) (1, _2122) 0 ]", + "EXPR [ (1, _89, _120) (-1, _121) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_121, 32)] []", - "EXPR [ (1, _89, _121) (-1, _122) (1, _2125) 0 ]", + "EXPR [ (1, _89, _121) (-1, _122) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_122, 32)] []", - "EXPR [ (1, _67, _89) (-1, _2133) 0 ]", - "EXPR [ (1, _89, _122) (-1, _123) (1, _2133) 0 ]", + "EXPR [ (1, _67, _89) (-1, _2076) 0 ]", + "EXPR [ (1, _89, _122) (-1, _123) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_123, 32)] []", "EXPR [ (1, _89, _111) (1, _91, _112) (-1, _124) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(123))], q_c: -4864 })], outputs: [Simple(Witness(125))]", @@ -253,11 +253,11 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _123) (-1, _130) 0 ]", "EXPR [ (1, _89, _130) (-1, _131) 0 ]", "BLACKBOX::RANGE [(_131, 32)] []", - "EXPR [ (1, _89, _131) (-1, _132) (1, _2122) 0 ]", + "EXPR [ (1, _89, _131) (-1, _132) (1, _2065) 0 ]", "BLACKBOX::RANGE [(_132, 32)] []", - "EXPR [ (1, _89, _132) (-1, _133) (1, _2125) 0 ]", + "EXPR [ (1, _89, _132) (-1, _133) (1, _2068) 0 ]", "BLACKBOX::RANGE [(_133, 32)] []", - "EXPR [ (1, _89, _133) (-1, _134) (1, _2133) 0 ]", + "EXPR [ (1, _89, _133) (-1, _134) (1, _2076) 0 ]", "BLACKBOX::RANGE [(_134, 32)] []", "EXPR [ (1, _89, _123) (1, _91, _124) (-1, _135) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(134))], q_c: -4864 })], outputs: [Simple(Witness(136))]", @@ -271,40 +271,40 @@ expression: artifact "EXPR [ (-1, _0, _142) (2, _142) 0 ]", "EXPR [ (1, _134, _138) (1, _139, _140) (-1, _143) 0 ]", "EXPR [ (-1, _142) (-1, _144) 1 ]", - "EXPR [ (1, _91, _105) (-1, _145) (1, _2125) 0 ]", - "EXPR [ (1, _89, _134) (-1, _2149) 0 ]", - "EXPR [ (1, _91, _135) (-1, _2150) 0 ]", - "EXPR [ (-1, _146) (1, _2090) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (1, _91, _105) (-1, _145) (1, _2068) 0 ]", + "EXPR [ (1, _89, _134) (-1, _2092) 0 ]", + "EXPR [ (1, _91, _135) (-1, _2093) 0 ]", + "EXPR [ (-1, _146) (1, _2033) (1, _2092) (1, _2093) 0 ]", "EXPR [ (1, _142, _146) (-1, _147) 0 ]", "BLACKBOX::RANGE [(_147, 32)] []", - "EXPR [ (1, _91, _92) (-1, _2151) 0 ]", - "EXPR [ (1, _147) (-1, _148) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _91, _92) (-1, _2094) 0 ]", + "EXPR [ (1, _147) (-1, _148) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _148) (-1, _149) 0 ]", "BLACKBOX::RANGE [(_149, 32)] []", - "EXPR [ (1, _142, _143) (-1, _2152) 0 ]", - "EXPR [ (1, _142, _149) (-1, _150) (1, _2152) 0 ]", + "EXPR [ (1, _142, _143) (-1, _2095) 0 ]", + "EXPR [ (1, _142, _149) (-1, _150) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_150, 32)] []", - "EXPR [ (1, _91, _118) (-1, _2154) 0 ]", - "EXPR [ (1, _150) (-1, _151) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (1, _91, _118) (-1, _2097) 0 ]", + "EXPR [ (1, _150) (-1, _151) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _142, _151) (-1, _152) 0 ]", "BLACKBOX::RANGE [(_152, 32)] []", - "EXPR [ (-1, _153) (1, _2149) (1, _2150) 0 ]", + "EXPR [ (-1, _153) (1, _2092) (1, _2093) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(152))], q_c: -4864 })], outputs: [Simple(Witness(154))]", "EXPR [ (1, _152, _154) (-4864, _154) (1, _155) -1 ]", "EXPR [ (1, _152, _155) (-4864, _155) 0 ]", "EXPR [ (1, _142, _155) (-1, _156) 0 ]", "EXPR [ (-1, _142, _155) (-1, _157) 1 ]", - "EXPR [ (-1, _158) (1, _2133) (1, _2154) 0 ]", + "EXPR [ (-1, _158) (1, _2076) (1, _2097) 0 ]", "EXPR [ (1, _4, _43) (1, _152) (-1, _159) 0 ]", "EXPR [ (1, _142, _159) (-1, _160) 0 ]", "BLACKBOX::RANGE [(_160, 32)] []", - "EXPR [ (1, _160) (-1, _161) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _160) (-1, _161) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _161) (-1, _162) 0 ]", "BLACKBOX::RANGE [(_162, 32)] []", - "EXPR [ (1, _142, _162) (-1, _163) (1, _2152) 0 ]", + "EXPR [ (1, _142, _162) (-1, _163) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_163, 32)] []", - "EXPR [ (1, _57, _142) (-1, _2156) 0 ]", - "EXPR [ (1, _142, _163) (-1, _164) (1, _2156) 0 ]", + "EXPR [ (1, _57, _142) (-1, _2099) 0 ]", + "EXPR [ (1, _142, _163) (-1, _164) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_164, 32)] []", "EXPR [ (1, _142, _152) (1, _144, _153) (-1, _165) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(164))], q_c: -4864 })], outputs: [Simple(Witness(166))]", @@ -317,12 +317,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _164) (-1, _172) 0 ]", "EXPR [ (1, _142, _172) (-1, _173) 0 ]", "BLACKBOX::RANGE [(_173, 32)] []", - "EXPR [ (1, _173) (-1, _174) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _173) (-1, _174) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _174) (-1, _175) 0 ]", "BLACKBOX::RANGE [(_175, 32)] []", - "EXPR [ (1, _142, _175) (-1, _176) (1, _2152) 0 ]", + "EXPR [ (1, _142, _175) (-1, _176) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_176, 32)] []", - "EXPR [ (1, _142, _176) (-1, _177) (1, _2156) 0 ]", + "EXPR [ (1, _142, _176) (-1, _177) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_177, 32)] []", "EXPR [ (1, _142, _164) (1, _144, _165) (-1, _178) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(177))], q_c: -4864 })], outputs: [Simple(Witness(179))]", @@ -334,12 +334,12 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _177) (-1, _184) 0 ]", "EXPR [ (1, _142, _184) (-1, _185) 0 ]", "BLACKBOX::RANGE [(_185, 32)] []", - "EXPR [ (1, _185) (-1, _186) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _185) (-1, _186) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _142, _186) (-1, _187) 0 ]", "BLACKBOX::RANGE [(_187, 32)] []", - "EXPR [ (1, _142, _187) (-1, _188) (1, _2152) 0 ]", + "EXPR [ (1, _142, _187) (-1, _188) (1, _2095) 0 ]", "BLACKBOX::RANGE [(_188, 32)] []", - "EXPR [ (1, _142, _188) (-1, _189) (1, _2156) 0 ]", + "EXPR [ (1, _142, _188) (-1, _189) (1, _2099) 0 ]", "BLACKBOX::RANGE [(_189, 32)] []", "EXPR [ (1, _142, _177) (1, _144, _178) (-1, _190) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(189))], q_c: -4864 })], outputs: [Simple(Witness(191))]", @@ -353,23 +353,23 @@ expression: artifact "EXPR [ (-1, _0, _197) (3, _197) 0 ]", "EXPR [ (1, _189, _193) (1, _194, _195) (-1, _198) 0 ]", "EXPR [ (-1, _197) (-1, _199) 1 ]", - "EXPR [ (1, _144, _158) (-1, _200) (1, _2156) 0 ]", - "EXPR [ (1, _142, _189) (-1, _2177) 0 ]", - "EXPR [ (1, _144, _190) (-1, _2178) 0 ]", - "EXPR [ (-1, _201) (1, _2090) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (1, _144, _158) (-1, _200) (1, _2099) 0 ]", + "EXPR [ (1, _142, _189) (-1, _2120) 0 ]", + "EXPR [ (1, _144, _190) (-1, _2121) 0 ]", + "EXPR [ (-1, _201) (1, _2033) (1, _2120) (1, _2121) 0 ]", "EXPR [ (1, _197, _201) (-1, _202) 0 ]", "BLACKBOX::RANGE [(_202, 32)] []", - "EXPR [ (1, _202) (-1, _203) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _202) (-1, _203) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _203) (-1, _204) 0 ]", "BLACKBOX::RANGE [(_204, 32)] []", - "EXPR [ (1, _144, _145) (-1, _2179) 0 ]", - "EXPR [ (1, _204) (-1, _205) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _144, _145) (-1, _2122) 0 ]", + "EXPR [ (1, _204) (-1, _205) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _205) (-1, _206) 0 ]", "BLACKBOX::RANGE [(_206, 32)] []", - "EXPR [ (1, _197, _198) (-1, _2180) 0 ]", - "EXPR [ (1, _197, _206) (-1, _207) (1, _2180) 0 ]", + "EXPR [ (1, _197, _198) (-1, _2123) 0 ]", + "EXPR [ (1, _197, _206) (-1, _207) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_207, 32)] []", - "EXPR [ (-1, _208) (1, _2177) (1, _2178) 0 ]", + "EXPR [ (-1, _208) (1, _2120) (1, _2121) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(207))], q_c: -4864 })], outputs: [Simple(Witness(209))]", "EXPR [ (1, _207, _209) (-4864, _209) (1, _210) -1 ]", "EXPR [ (1, _207, _210) (-4864, _210) 0 ]", @@ -379,13 +379,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _207) (-1, _214) 0 ]", "EXPR [ (1, _197, _214) (-1, _215) 0 ]", "BLACKBOX::RANGE [(_215, 32)] []", - "EXPR [ (1, _215) (-1, _216) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _215) (-1, _216) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _216) (-1, _217) 0 ]", "BLACKBOX::RANGE [(_217, 32)] []", - "EXPR [ (1, _217) (-1, _218) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _217) (-1, _218) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _218) (-1, _219) 0 ]", "BLACKBOX::RANGE [(_219, 32)] []", - "EXPR [ (1, _197, _219) (-1, _220) (1, _2180) 0 ]", + "EXPR [ (1, _197, _219) (-1, _220) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_220, 32)] []", "EXPR [ (1, _197, _207) (1, _199, _208) (-1, _221) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(220))], q_c: -4864 })], outputs: [Simple(Witness(222))]", @@ -398,13 +398,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _220) (-1, _228) 0 ]", "EXPR [ (1, _197, _228) (-1, _229) 0 ]", "BLACKBOX::RANGE [(_229, 32)] []", - "EXPR [ (1, _229) (-1, _230) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _229) (-1, _230) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _230) (-1, _231) 0 ]", "BLACKBOX::RANGE [(_231, 32)] []", - "EXPR [ (1, _231) (-1, _232) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _231) (-1, _232) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _232) (-1, _233) 0 ]", "BLACKBOX::RANGE [(_233, 32)] []", - "EXPR [ (1, _197, _233) (-1, _234) (1, _2180) 0 ]", + "EXPR [ (1, _197, _233) (-1, _234) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_234, 32)] []", "EXPR [ (1, _197, _220) (1, _199, _221) (-1, _235) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(234))], q_c: -4864 })], outputs: [Simple(Witness(236))]", @@ -416,13 +416,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _234) (-1, _241) 0 ]", "EXPR [ (1, _197, _241) (-1, _242) 0 ]", "BLACKBOX::RANGE [(_242, 32)] []", - "EXPR [ (1, _242) (-1, _243) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _242) (-1, _243) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _197, _243) (-1, _244) 0 ]", "BLACKBOX::RANGE [(_244, 32)] []", - "EXPR [ (1, _244) (-1, _245) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _244) (-1, _245) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _197, _245) (-1, _246) 0 ]", "BLACKBOX::RANGE [(_246, 32)] []", - "EXPR [ (1, _197, _246) (-1, _247) (1, _2180) 0 ]", + "EXPR [ (1, _197, _246) (-1, _247) (1, _2123) 0 ]", "BLACKBOX::RANGE [(_247, 32)] []", "EXPR [ (1, _197, _234) (1, _199, _235) (-1, _248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(247))], q_c: -4864 })], outputs: [Simple(Witness(249))]", @@ -437,22 +437,22 @@ expression: artifact "EXPR [ (1, _247, _251) (1, _252, _253) (-1, _256) 0 ]", "EXPR [ (-1, _255) (-1, _257) 1 ]", "EXPR [ (1, _57, _197) (1, _199, _213) (-1, _258) 0 ]", - "EXPR [ (1, _197, _247) (-1, _2203) 0 ]", - "EXPR [ (1, _199, _248) (-1, _2204) 0 ]", - "EXPR [ (-1, _259) (1, _2090) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (1, _197, _247) (-1, _2146) 0 ]", + "EXPR [ (1, _199, _248) (-1, _2147) 0 ]", + "EXPR [ (-1, _259) (1, _2033) (1, _2146) (1, _2147) 0 ]", "EXPR [ (1, _255, _259) (-1, _260) 0 ]", "BLACKBOX::RANGE [(_260, 32)] []", - "EXPR [ (1, _260) (-1, _261) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _260) (-1, _261) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _261) (-1, _262) 0 ]", "BLACKBOX::RANGE [(_262, 32)] []", - "EXPR [ (1, _262) (-1, _263) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _262) (-1, _263) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _263) (-1, _264) 0 ]", "BLACKBOX::RANGE [(_264, 32)] []", - "EXPR [ (1, _199, _200) (-1, _2205) 0 ]", - "EXPR [ (1, _264) (-1, _265) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _199, _200) (-1, _2148) 0 ]", + "EXPR [ (1, _264) (-1, _265) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _265) (-1, _266) 0 ]", "BLACKBOX::RANGE [(_266, 32)] []", - "EXPR [ (-1, _267) (1, _2203) (1, _2204) 0 ]", + "EXPR [ (-1, _267) (1, _2146) (1, _2147) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(266))], q_c: -4864 })], outputs: [Simple(Witness(268))]", "EXPR [ (1, _266, _268) (-4864, _268) (1, _269) -1 ]", "EXPR [ (1, _266, _269) (-4864, _269) 0 ]", @@ -462,13 +462,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _266) (-1, _273) 0 ]", "EXPR [ (1, _255, _273) (-1, _274) 0 ]", "BLACKBOX::RANGE [(_274, 32)] []", - "EXPR [ (1, _274) (-1, _275) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _274) (-1, _275) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _275) (-1, _276) 0 ]", "BLACKBOX::RANGE [(_276, 32)] []", - "EXPR [ (1, _276) (-1, _277) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _276) (-1, _277) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _277) (-1, _278) 0 ]", "BLACKBOX::RANGE [(_278, 32)] []", - "EXPR [ (1, _278) (-1, _279) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _278) (-1, _279) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _279) (-1, _280) 0 ]", "BLACKBOX::RANGE [(_280, 32)] []", "EXPR [ (1, _255, _266) (1, _257, _267) (-1, _281) 0 ]", @@ -482,13 +482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _280) (-1, _288) 0 ]", "EXPR [ (1, _255, _288) (-1, _289) 0 ]", "BLACKBOX::RANGE [(_289, 32)] []", - "EXPR [ (1, _289) (-1, _290) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _289) (-1, _290) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _290) (-1, _291) 0 ]", "BLACKBOX::RANGE [(_291, 32)] []", - "EXPR [ (1, _291) (-1, _292) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _291) (-1, _292) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _292) (-1, _293) 0 ]", "BLACKBOX::RANGE [(_293, 32)] []", - "EXPR [ (1, _293) (-1, _294) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _293) (-1, _294) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _294) (-1, _295) 0 ]", "BLACKBOX::RANGE [(_295, 32)] []", "EXPR [ (1, _255, _280) (1, _257, _281) (-1, _296) 0 ]", @@ -501,13 +501,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _295) (-1, _302) 0 ]", "EXPR [ (1, _255, _302) (-1, _303) 0 ]", "BLACKBOX::RANGE [(_303, 32)] []", - "EXPR [ (1, _303) (-1, _304) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _303) (-1, _304) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _255, _304) (-1, _305) 0 ]", "BLACKBOX::RANGE [(_305, 32)] []", - "EXPR [ (1, _305) (-1, _306) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _305) (-1, _306) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _255, _306) (-1, _307) 0 ]", "BLACKBOX::RANGE [(_307, 32)] []", - "EXPR [ (1, _307) (-1, _308) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _307) (-1, _308) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _308) (-1, _309) 0 ]", "BLACKBOX::RANGE [(_309, 32)] []", "EXPR [ (1, _255, _295) (1, _257, _296) (-1, _310) 0 ]", @@ -523,21 +523,21 @@ expression: artifact "EXPR [ (1, _309, _313) (1, _314, _315) (-1, _318) 0 ]", "EXPR [ (-1, _317) (-1, _319) 1 ]", "EXPR [ (1, _57, _255) (1, _257, _272) (-1, _320) 0 ]", - "EXPR [ (1, _255, _309) (-1, _2224) 0 ]", - "EXPR [ (1, _257, _310) (-1, _2225) 0 ]", - "EXPR [ (-1, _321) (1, _2090) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (1, _255, _309) (-1, _2167) 0 ]", + "EXPR [ (1, _257, _310) (-1, _2168) 0 ]", + "EXPR [ (-1, _321) (1, _2033) (1, _2167) (1, _2168) 0 ]", "EXPR [ (1, _317, _321) (-1, _322) 0 ]", "BLACKBOX::RANGE [(_322, 32)] []", - "EXPR [ (1, _322) (-1, _323) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _322) (-1, _323) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _323) (-1, _324) 0 ]", "BLACKBOX::RANGE [(_324, 32)] []", - "EXPR [ (1, _324) (-1, _325) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _324) (-1, _325) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _325) (-1, _326) 0 ]", "BLACKBOX::RANGE [(_326, 32)] []", - "EXPR [ (1, _326) (-1, _327) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _326) (-1, _327) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _327) (-1, _328) 0 ]", "BLACKBOX::RANGE [(_328, 32)] []", - "EXPR [ (-1, _329) (1, _2224) (1, _2225) 0 ]", + "EXPR [ (-1, _329) (1, _2167) (1, _2168) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(328))], q_c: -4864 })], outputs: [Simple(Witness(330))]", "EXPR [ (1, _328, _330) (-4864, _330) (1, _331) -1 ]", "EXPR [ (1, _328, _331) (-4864, _331) 0 ]", @@ -547,13 +547,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _328) (-1, _335) 0 ]", "EXPR [ (1, _317, _335) (-1, _336) 0 ]", "BLACKBOX::RANGE [(_336, 32)] []", - "EXPR [ (1, _336) (-1, _337) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _336) (-1, _337) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _337) (-1, _338) 0 ]", "BLACKBOX::RANGE [(_338, 32)] []", - "EXPR [ (1, _338) (-1, _339) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _338) (-1, _339) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _339) (-1, _340) 0 ]", "BLACKBOX::RANGE [(_340, 32)] []", - "EXPR [ (1, _340) (-1, _341) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _340) (-1, _341) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _341) (-1, _342) 0 ]", "BLACKBOX::RANGE [(_342, 32)] []", "EXPR [ (1, _317, _328) (1, _319, _329) (-1, _343) 0 ]", @@ -567,13 +567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _342) (-1, _350) 0 ]", "EXPR [ (1, _317, _350) (-1, _351) 0 ]", "BLACKBOX::RANGE [(_351, 32)] []", - "EXPR [ (1, _351) (-1, _352) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _351) (-1, _352) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _352) (-1, _353) 0 ]", "BLACKBOX::RANGE [(_353, 32)] []", - "EXPR [ (1, _353) (-1, _354) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _353) (-1, _354) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _354) (-1, _355) 0 ]", "BLACKBOX::RANGE [(_355, 32)] []", - "EXPR [ (1, _355) (-1, _356) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _355) (-1, _356) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _356) (-1, _357) 0 ]", "BLACKBOX::RANGE [(_357, 32)] []", "EXPR [ (1, _317, _342) (1, _319, _343) (-1, _358) 0 ]", @@ -586,13 +586,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _357) (-1, _364) 0 ]", "EXPR [ (1, _317, _364) (-1, _365) 0 ]", "BLACKBOX::RANGE [(_365, 32)] []", - "EXPR [ (1, _365) (-1, _366) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _365) (-1, _366) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _317, _366) (-1, _367) 0 ]", "BLACKBOX::RANGE [(_367, 32)] []", - "EXPR [ (1, _367) (-1, _368) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _367) (-1, _368) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _317, _368) (-1, _369) 0 ]", "BLACKBOX::RANGE [(_369, 32)] []", - "EXPR [ (1, _369) (-1, _370) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _369) (-1, _370) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _317, _370) (-1, _371) 0 ]", "BLACKBOX::RANGE [(_371, 32)] []", "EXPR [ (1, _317, _357) (1, _319, _358) (-1, _372) 0 ]", @@ -608,21 +608,21 @@ expression: artifact "EXPR [ (1, _371, _375) (1, _376, _377) (-1, _380) 0 ]", "EXPR [ (-1, _379) (-1, _381) 1 ]", "EXPR [ (1, _57, _317) (1, _319, _334) (-1, _382) 0 ]", - "EXPR [ (1, _317, _371) (-1, _2244) 0 ]", - "EXPR [ (1, _319, _372) (-1, _2245) 0 ]", - "EXPR [ (-1, _383) (1, _2090) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (1, _317, _371) (-1, _2187) 0 ]", + "EXPR [ (1, _319, _372) (-1, _2188) 0 ]", + "EXPR [ (-1, _383) (1, _2033) (1, _2187) (1, _2188) 0 ]", "EXPR [ (1, _379, _383) (-1, _384) 0 ]", "BLACKBOX::RANGE [(_384, 32)] []", - "EXPR [ (1, _384) (-1, _385) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _384) (-1, _385) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _385) (-1, _386) 0 ]", "BLACKBOX::RANGE [(_386, 32)] []", - "EXPR [ (1, _386) (-1, _387) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _386) (-1, _387) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _387) (-1, _388) 0 ]", "BLACKBOX::RANGE [(_388, 32)] []", - "EXPR [ (1, _388) (-1, _389) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _388) (-1, _389) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _389) (-1, _390) 0 ]", "BLACKBOX::RANGE [(_390, 32)] []", - "EXPR [ (-1, _391) (1, _2244) (1, _2245) 0 ]", + "EXPR [ (-1, _391) (1, _2187) (1, _2188) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(390))], q_c: -4864 })], outputs: [Simple(Witness(392))]", "EXPR [ (1, _390, _392) (-4864, _392) (1, _393) -1 ]", "EXPR [ (1, _390, _393) (-4864, _393) 0 ]", @@ -632,13 +632,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _390) (-1, _397) 0 ]", "EXPR [ (1, _379, _397) (-1, _398) 0 ]", "BLACKBOX::RANGE [(_398, 32)] []", - "EXPR [ (1, _398) (-1, _399) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _398) (-1, _399) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _399) (-1, _400) 0 ]", "BLACKBOX::RANGE [(_400, 32)] []", - "EXPR [ (1, _400) (-1, _401) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _400) (-1, _401) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _401) (-1, _402) 0 ]", "BLACKBOX::RANGE [(_402, 32)] []", - "EXPR [ (1, _402) (-1, _403) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _402) (-1, _403) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _403) (-1, _404) 0 ]", "BLACKBOX::RANGE [(_404, 32)] []", "EXPR [ (1, _379, _390) (1, _381, _391) (-1, _405) 0 ]", @@ -652,13 +652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _404) (-1, _412) 0 ]", "EXPR [ (1, _379, _412) (-1, _413) 0 ]", "BLACKBOX::RANGE [(_413, 32)] []", - "EXPR [ (1, _413) (-1, _414) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _413) (-1, _414) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _414) (-1, _415) 0 ]", "BLACKBOX::RANGE [(_415, 32)] []", - "EXPR [ (1, _415) (-1, _416) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _415) (-1, _416) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _416) (-1, _417) 0 ]", "BLACKBOX::RANGE [(_417, 32)] []", - "EXPR [ (1, _417) (-1, _418) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _417) (-1, _418) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _418) (-1, _419) 0 ]", "BLACKBOX::RANGE [(_419, 32)] []", "EXPR [ (1, _379, _404) (1, _381, _405) (-1, _420) 0 ]", @@ -671,13 +671,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _419) (-1, _426) 0 ]", "EXPR [ (1, _379, _426) (-1, _427) 0 ]", "BLACKBOX::RANGE [(_427, 32)] []", - "EXPR [ (1, _427) (-1, _428) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _427) (-1, _428) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _379, _428) (-1, _429) 0 ]", "BLACKBOX::RANGE [(_429, 32)] []", - "EXPR [ (1, _429) (-1, _430) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _429) (-1, _430) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _379, _430) (-1, _431) 0 ]", "BLACKBOX::RANGE [(_431, 32)] []", - "EXPR [ (1, _431) (-1, _432) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _431) (-1, _432) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _379, _432) (-1, _433) 0 ]", "BLACKBOX::RANGE [(_433, 32)] []", "EXPR [ (1, _379, _419) (1, _381, _420) (-1, _434) 0 ]", @@ -693,21 +693,21 @@ expression: artifact "EXPR [ (1, _433, _437) (1, _438, _439) (-1, _442) 0 ]", "EXPR [ (-1, _441) (-1, _443) 1 ]", "EXPR [ (1, _57, _379) (1, _381, _396) (-1, _444) 0 ]", - "EXPR [ (1, _379, _433) (-1, _2264) 0 ]", - "EXPR [ (1, _381, _434) (-1, _2265) 0 ]", - "EXPR [ (-1, _445) (1, _2090) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (1, _379, _433) (-1, _2207) 0 ]", + "EXPR [ (1, _381, _434) (-1, _2208) 0 ]", + "EXPR [ (-1, _445) (1, _2033) (1, _2207) (1, _2208) 0 ]", "EXPR [ (1, _441, _445) (-1, _446) 0 ]", "BLACKBOX::RANGE [(_446, 32)] []", - "EXPR [ (1, _446) (-1, _447) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _446) (-1, _447) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _447) (-1, _448) 0 ]", "BLACKBOX::RANGE [(_448, 32)] []", - "EXPR [ (1, _448) (-1, _449) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _448) (-1, _449) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _449) (-1, _450) 0 ]", "BLACKBOX::RANGE [(_450, 32)] []", - "EXPR [ (1, _450) (-1, _451) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _450) (-1, _451) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _451) (-1, _452) 0 ]", "BLACKBOX::RANGE [(_452, 32)] []", - "EXPR [ (-1, _453) (1, _2264) (1, _2265) 0 ]", + "EXPR [ (-1, _453) (1, _2207) (1, _2208) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(452))], q_c: -4864 })], outputs: [Simple(Witness(454))]", "EXPR [ (1, _452, _454) (-4864, _454) (1, _455) -1 ]", "EXPR [ (1, _452, _455) (-4864, _455) 0 ]", @@ -717,13 +717,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _452) (-1, _459) 0 ]", "EXPR [ (1, _441, _459) (-1, _460) 0 ]", "BLACKBOX::RANGE [(_460, 32)] []", - "EXPR [ (1, _460) (-1, _461) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _460) (-1, _461) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _461) (-1, _462) 0 ]", "BLACKBOX::RANGE [(_462, 32)] []", - "EXPR [ (1, _462) (-1, _463) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _462) (-1, _463) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _463) (-1, _464) 0 ]", "BLACKBOX::RANGE [(_464, 32)] []", - "EXPR [ (1, _464) (-1, _465) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _464) (-1, _465) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _465) (-1, _466) 0 ]", "BLACKBOX::RANGE [(_466, 32)] []", "EXPR [ (1, _441, _452) (1, _443, _453) (-1, _467) 0 ]", @@ -737,13 +737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _466) (-1, _474) 0 ]", "EXPR [ (1, _441, _474) (-1, _475) 0 ]", "BLACKBOX::RANGE [(_475, 32)] []", - "EXPR [ (1, _475) (-1, _476) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _475) (-1, _476) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _476) (-1, _477) 0 ]", "BLACKBOX::RANGE [(_477, 32)] []", - "EXPR [ (1, _477) (-1, _478) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _477) (-1, _478) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _478) (-1, _479) 0 ]", "BLACKBOX::RANGE [(_479, 32)] []", - "EXPR [ (1, _479) (-1, _480) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _479) (-1, _480) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _480) (-1, _481) 0 ]", "BLACKBOX::RANGE [(_481, 32)] []", "EXPR [ (1, _441, _466) (1, _443, _467) (-1, _482) 0 ]", @@ -756,13 +756,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _481) (-1, _488) 0 ]", "EXPR [ (1, _441, _488) (-1, _489) 0 ]", "BLACKBOX::RANGE [(_489, 32)] []", - "EXPR [ (1, _489) (-1, _490) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _489) (-1, _490) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _441, _490) (-1, _491) 0 ]", "BLACKBOX::RANGE [(_491, 32)] []", - "EXPR [ (1, _491) (-1, _492) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _491) (-1, _492) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _441, _492) (-1, _493) 0 ]", "BLACKBOX::RANGE [(_493, 32)] []", - "EXPR [ (1, _493) (-1, _494) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _493) (-1, _494) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _441, _494) (-1, _495) 0 ]", "BLACKBOX::RANGE [(_495, 32)] []", "EXPR [ (1, _441, _481) (1, _443, _482) (-1, _496) 0 ]", @@ -778,21 +778,21 @@ expression: artifact "EXPR [ (1, _495, _499) (1, _500, _501) (-1, _504) 0 ]", "EXPR [ (-1, _503) (-1, _505) 1 ]", "EXPR [ (1, _57, _441) (1, _443, _458) (-1, _506) 0 ]", - "EXPR [ (1, _441, _495) (-1, _2284) 0 ]", - "EXPR [ (1, _443, _496) (-1, _2285) 0 ]", - "EXPR [ (-1, _507) (1, _2090) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (1, _441, _495) (-1, _2227) 0 ]", + "EXPR [ (1, _443, _496) (-1, _2228) 0 ]", + "EXPR [ (-1, _507) (1, _2033) (1, _2227) (1, _2228) 0 ]", "EXPR [ (1, _503, _507) (-1, _508) 0 ]", "BLACKBOX::RANGE [(_508, 32)] []", - "EXPR [ (1, _508) (-1, _509) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _508) (-1, _509) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _509) (-1, _510) 0 ]", "BLACKBOX::RANGE [(_510, 32)] []", - "EXPR [ (1, _510) (-1, _511) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _510) (-1, _511) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _511) (-1, _512) 0 ]", "BLACKBOX::RANGE [(_512, 32)] []", - "EXPR [ (1, _512) (-1, _513) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _512) (-1, _513) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _513) (-1, _514) 0 ]", "BLACKBOX::RANGE [(_514, 32)] []", - "EXPR [ (-1, _515) (1, _2284) (1, _2285) 0 ]", + "EXPR [ (-1, _515) (1, _2227) (1, _2228) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(514))], q_c: -4864 })], outputs: [Simple(Witness(516))]", "EXPR [ (1, _514, _516) (-4864, _516) (1, _517) -1 ]", "EXPR [ (1, _514, _517) (-4864, _517) 0 ]", @@ -802,13 +802,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _514) (-1, _521) 0 ]", "EXPR [ (1, _503, _521) (-1, _522) 0 ]", "BLACKBOX::RANGE [(_522, 32)] []", - "EXPR [ (1, _522) (-1, _523) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _522) (-1, _523) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _523) (-1, _524) 0 ]", "BLACKBOX::RANGE [(_524, 32)] []", - "EXPR [ (1, _524) (-1, _525) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _524) (-1, _525) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _525) (-1, _526) 0 ]", "BLACKBOX::RANGE [(_526, 32)] []", - "EXPR [ (1, _526) (-1, _527) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _526) (-1, _527) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _527) (-1, _528) 0 ]", "BLACKBOX::RANGE [(_528, 32)] []", "EXPR [ (1, _503, _514) (1, _505, _515) (-1, _529) 0 ]", @@ -822,13 +822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _528) (-1, _536) 0 ]", "EXPR [ (1, _503, _536) (-1, _537) 0 ]", "BLACKBOX::RANGE [(_537, 32)] []", - "EXPR [ (1, _537) (-1, _538) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _537) (-1, _538) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _538) (-1, _539) 0 ]", "BLACKBOX::RANGE [(_539, 32)] []", - "EXPR [ (1, _539) (-1, _540) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _539) (-1, _540) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _540) (-1, _541) 0 ]", "BLACKBOX::RANGE [(_541, 32)] []", - "EXPR [ (1, _541) (-1, _542) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _541) (-1, _542) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _542) (-1, _543) 0 ]", "BLACKBOX::RANGE [(_543, 32)] []", "EXPR [ (1, _503, _528) (1, _505, _529) (-1, _544) 0 ]", @@ -841,13 +841,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _543) (-1, _550) 0 ]", "EXPR [ (1, _503, _550) (-1, _551) 0 ]", "BLACKBOX::RANGE [(_551, 32)] []", - "EXPR [ (1, _551) (-1, _552) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _551) (-1, _552) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _503, _552) (-1, _553) 0 ]", "BLACKBOX::RANGE [(_553, 32)] []", - "EXPR [ (1, _553) (-1, _554) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _553) (-1, _554) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _503, _554) (-1, _555) 0 ]", "BLACKBOX::RANGE [(_555, 32)] []", - "EXPR [ (1, _555) (-1, _556) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _555) (-1, _556) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _503, _556) (-1, _557) 0 ]", "BLACKBOX::RANGE [(_557, 32)] []", "EXPR [ (1, _503, _543) (1, _505, _544) (-1, _558) 0 ]", @@ -863,21 +863,21 @@ expression: artifact "EXPR [ (1, _557, _561) (1, _562, _563) (-1, _566) 0 ]", "EXPR [ (-1, _565) (-1, _567) 1 ]", "EXPR [ (1, _57, _503) (1, _505, _520) (-1, _568) 0 ]", - "EXPR [ (1, _503, _557) (-1, _2304) 0 ]", - "EXPR [ (1, _505, _558) (-1, _2305) 0 ]", - "EXPR [ (-1, _569) (1, _2090) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (1, _503, _557) (-1, _2247) 0 ]", + "EXPR [ (1, _505, _558) (-1, _2248) 0 ]", + "EXPR [ (-1, _569) (1, _2033) (1, _2247) (1, _2248) 0 ]", "EXPR [ (1, _565, _569) (-1, _570) 0 ]", "BLACKBOX::RANGE [(_570, 32)] []", - "EXPR [ (1, _570) (-1, _571) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _570) (-1, _571) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _571) (-1, _572) 0 ]", "BLACKBOX::RANGE [(_572, 32)] []", - "EXPR [ (1, _572) (-1, _573) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _572) (-1, _573) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _573) (-1, _574) 0 ]", "BLACKBOX::RANGE [(_574, 32)] []", - "EXPR [ (1, _574) (-1, _575) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _574) (-1, _575) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _575) (-1, _576) 0 ]", "BLACKBOX::RANGE [(_576, 32)] []", - "EXPR [ (-1, _577) (1, _2304) (1, _2305) 0 ]", + "EXPR [ (-1, _577) (1, _2247) (1, _2248) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(576))], q_c: -4864 })], outputs: [Simple(Witness(578))]", "EXPR [ (1, _576, _578) (-4864, _578) (1, _579) -1 ]", "EXPR [ (1, _576, _579) (-4864, _579) 0 ]", @@ -887,13 +887,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _576) (-1, _583) 0 ]", "EXPR [ (1, _565, _583) (-1, _584) 0 ]", "BLACKBOX::RANGE [(_584, 32)] []", - "EXPR [ (1, _584) (-1, _585) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _584) (-1, _585) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _585) (-1, _586) 0 ]", "BLACKBOX::RANGE [(_586, 32)] []", - "EXPR [ (1, _586) (-1, _587) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _586) (-1, _587) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _587) (-1, _588) 0 ]", "BLACKBOX::RANGE [(_588, 32)] []", - "EXPR [ (1, _588) (-1, _589) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _588) (-1, _589) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _589) (-1, _590) 0 ]", "BLACKBOX::RANGE [(_590, 32)] []", "EXPR [ (1, _565, _576) (1, _567, _577) (-1, _591) 0 ]", @@ -907,13 +907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _590) (-1, _598) 0 ]", "EXPR [ (1, _565, _598) (-1, _599) 0 ]", "BLACKBOX::RANGE [(_599, 32)] []", - "EXPR [ (1, _599) (-1, _600) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _599) (-1, _600) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _600) (-1, _601) 0 ]", "BLACKBOX::RANGE [(_601, 32)] []", - "EXPR [ (1, _601) (-1, _602) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _601) (-1, _602) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _602) (-1, _603) 0 ]", "BLACKBOX::RANGE [(_603, 32)] []", - "EXPR [ (1, _603) (-1, _604) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _603) (-1, _604) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _604) (-1, _605) 0 ]", "BLACKBOX::RANGE [(_605, 32)] []", "EXPR [ (1, _565, _590) (1, _567, _591) (-1, _606) 0 ]", @@ -926,13 +926,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _605) (-1, _612) 0 ]", "EXPR [ (1, _565, _612) (-1, _613) 0 ]", "BLACKBOX::RANGE [(_613, 32)] []", - "EXPR [ (1, _613) (-1, _614) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _613) (-1, _614) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _565, _614) (-1, _615) 0 ]", "BLACKBOX::RANGE [(_615, 32)] []", - "EXPR [ (1, _615) (-1, _616) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _615) (-1, _616) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _565, _616) (-1, _617) 0 ]", "BLACKBOX::RANGE [(_617, 32)] []", - "EXPR [ (1, _617) (-1, _618) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _617) (-1, _618) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _565, _618) (-1, _619) 0 ]", "BLACKBOX::RANGE [(_619, 32)] []", "EXPR [ (1, _565, _605) (1, _567, _606) (-1, _620) 0 ]", @@ -948,21 +948,21 @@ expression: artifact "EXPR [ (1, _619, _623) (1, _624, _625) (-1, _628) 0 ]", "EXPR [ (-1, _627) (-1, _629) 1 ]", "EXPR [ (1, _57, _565) (1, _567, _582) (-1, _630) 0 ]", - "EXPR [ (1, _565, _619) (-1, _2324) 0 ]", - "EXPR [ (1, _567, _620) (-1, _2325) 0 ]", - "EXPR [ (-1, _631) (1, _2090) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (1, _565, _619) (-1, _2267) 0 ]", + "EXPR [ (1, _567, _620) (-1, _2268) 0 ]", + "EXPR [ (-1, _631) (1, _2033) (1, _2267) (1, _2268) 0 ]", "EXPR [ (1, _627, _631) (-1, _632) 0 ]", "BLACKBOX::RANGE [(_632, 32)] []", - "EXPR [ (1, _632) (-1, _633) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _632) (-1, _633) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _633) (-1, _634) 0 ]", "BLACKBOX::RANGE [(_634, 32)] []", - "EXPR [ (1, _634) (-1, _635) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _634) (-1, _635) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _635) (-1, _636) 0 ]", "BLACKBOX::RANGE [(_636, 32)] []", - "EXPR [ (1, _636) (-1, _637) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _636) (-1, _637) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _637) (-1, _638) 0 ]", "BLACKBOX::RANGE [(_638, 32)] []", - "EXPR [ (-1, _639) (1, _2324) (1, _2325) 0 ]", + "EXPR [ (-1, _639) (1, _2267) (1, _2268) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(638))], q_c: -4864 })], outputs: [Simple(Witness(640))]", "EXPR [ (1, _638, _640) (-4864, _640) (1, _641) -1 ]", "EXPR [ (1, _638, _641) (-4864, _641) 0 ]", @@ -972,13 +972,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _638) (-1, _645) 0 ]", "EXPR [ (1, _627, _645) (-1, _646) 0 ]", "BLACKBOX::RANGE [(_646, 32)] []", - "EXPR [ (1, _646) (-1, _647) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _646) (-1, _647) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _647) (-1, _648) 0 ]", "BLACKBOX::RANGE [(_648, 32)] []", - "EXPR [ (1, _648) (-1, _649) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _648) (-1, _649) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _649) (-1, _650) 0 ]", "BLACKBOX::RANGE [(_650, 32)] []", - "EXPR [ (1, _650) (-1, _651) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _650) (-1, _651) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _651) (-1, _652) 0 ]", "BLACKBOX::RANGE [(_652, 32)] []", "EXPR [ (1, _627, _638) (1, _629, _639) (-1, _653) 0 ]", @@ -992,13 +992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _652) (-1, _660) 0 ]", "EXPR [ (1, _627, _660) (-1, _661) 0 ]", "BLACKBOX::RANGE [(_661, 32)] []", - "EXPR [ (1, _661) (-1, _662) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _661) (-1, _662) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _662) (-1, _663) 0 ]", "BLACKBOX::RANGE [(_663, 32)] []", - "EXPR [ (1, _663) (-1, _664) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _663) (-1, _664) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _664) (-1, _665) 0 ]", "BLACKBOX::RANGE [(_665, 32)] []", - "EXPR [ (1, _665) (-1, _666) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _665) (-1, _666) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _666) (-1, _667) 0 ]", "BLACKBOX::RANGE [(_667, 32)] []", "EXPR [ (1, _627, _652) (1, _629, _653) (-1, _668) 0 ]", @@ -1011,13 +1011,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _667) (-1, _674) 0 ]", "EXPR [ (1, _627, _674) (-1, _675) 0 ]", "BLACKBOX::RANGE [(_675, 32)] []", - "EXPR [ (1, _675) (-1, _676) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _675) (-1, _676) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _627, _676) (-1, _677) 0 ]", "BLACKBOX::RANGE [(_677, 32)] []", - "EXPR [ (1, _677) (-1, _678) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _677) (-1, _678) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _627, _678) (-1, _679) 0 ]", "BLACKBOX::RANGE [(_679, 32)] []", - "EXPR [ (1, _679) (-1, _680) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _679) (-1, _680) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _627, _680) (-1, _681) 0 ]", "BLACKBOX::RANGE [(_681, 32)] []", "EXPR [ (1, _627, _667) (1, _629, _668) (-1, _682) 0 ]", @@ -1033,21 +1033,21 @@ expression: artifact "EXPR [ (1, _681, _685) (1, _686, _687) (-1, _690) 0 ]", "EXPR [ (-1, _689) (-1, _691) 1 ]", "EXPR [ (1, _57, _627) (1, _629, _644) (-1, _692) 0 ]", - "EXPR [ (1, _627, _681) (-1, _2344) 0 ]", - "EXPR [ (1, _629, _682) (-1, _2345) 0 ]", - "EXPR [ (-1, _693) (1, _2090) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (1, _627, _681) (-1, _2287) 0 ]", + "EXPR [ (1, _629, _682) (-1, _2288) 0 ]", + "EXPR [ (-1, _693) (1, _2033) (1, _2287) (1, _2288) 0 ]", "EXPR [ (1, _689, _693) (-1, _694) 0 ]", "BLACKBOX::RANGE [(_694, 32)] []", - "EXPR [ (1, _694) (-1, _695) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _694) (-1, _695) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _695) (-1, _696) 0 ]", "BLACKBOX::RANGE [(_696, 32)] []", - "EXPR [ (1, _696) (-1, _697) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _696) (-1, _697) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _697) (-1, _698) 0 ]", "BLACKBOX::RANGE [(_698, 32)] []", - "EXPR [ (1, _698) (-1, _699) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _698) (-1, _699) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _699) (-1, _700) 0 ]", "BLACKBOX::RANGE [(_700, 32)] []", - "EXPR [ (-1, _701) (1, _2344) (1, _2345) 0 ]", + "EXPR [ (-1, _701) (1, _2287) (1, _2288) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(700))], q_c: -4864 })], outputs: [Simple(Witness(702))]", "EXPR [ (1, _700, _702) (-4864, _702) (1, _703) -1 ]", "EXPR [ (1, _700, _703) (-4864, _703) 0 ]", @@ -1057,13 +1057,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _700) (-1, _707) 0 ]", "EXPR [ (1, _689, _707) (-1, _708) 0 ]", "BLACKBOX::RANGE [(_708, 32)] []", - "EXPR [ (1, _708) (-1, _709) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _708) (-1, _709) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _709) (-1, _710) 0 ]", "BLACKBOX::RANGE [(_710, 32)] []", - "EXPR [ (1, _710) (-1, _711) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _710) (-1, _711) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _711) (-1, _712) 0 ]", "BLACKBOX::RANGE [(_712, 32)] []", - "EXPR [ (1, _712) (-1, _713) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _712) (-1, _713) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _713) (-1, _714) 0 ]", "BLACKBOX::RANGE [(_714, 32)] []", "EXPR [ (1, _689, _700) (1, _691, _701) (-1, _715) 0 ]", @@ -1077,13 +1077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _714) (-1, _722) 0 ]", "EXPR [ (1, _689, _722) (-1, _723) 0 ]", "BLACKBOX::RANGE [(_723, 32)] []", - "EXPR [ (1, _723) (-1, _724) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _723) (-1, _724) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _724) (-1, _725) 0 ]", "BLACKBOX::RANGE [(_725, 32)] []", - "EXPR [ (1, _725) (-1, _726) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _725) (-1, _726) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _726) (-1, _727) 0 ]", "BLACKBOX::RANGE [(_727, 32)] []", - "EXPR [ (1, _727) (-1, _728) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _727) (-1, _728) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _728) (-1, _729) 0 ]", "BLACKBOX::RANGE [(_729, 32)] []", "EXPR [ (1, _689, _714) (1, _691, _715) (-1, _730) 0 ]", @@ -1096,13 +1096,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _729) (-1, _736) 0 ]", "EXPR [ (1, _689, _736) (-1, _737) 0 ]", "BLACKBOX::RANGE [(_737, 32)] []", - "EXPR [ (1, _737) (-1, _738) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _737) (-1, _738) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _689, _738) (-1, _739) 0 ]", "BLACKBOX::RANGE [(_739, 32)] []", - "EXPR [ (1, _739) (-1, _740) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _739) (-1, _740) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _689, _740) (-1, _741) 0 ]", "BLACKBOX::RANGE [(_741, 32)] []", - "EXPR [ (1, _741) (-1, _742) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _741) (-1, _742) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _689, _742) (-1, _743) 0 ]", "BLACKBOX::RANGE [(_743, 32)] []", "EXPR [ (1, _689, _729) (1, _691, _730) (-1, _744) 0 ]", @@ -1118,21 +1118,21 @@ expression: artifact "EXPR [ (1, _743, _747) (1, _748, _749) (-1, _752) 0 ]", "EXPR [ (-1, _751) (-1, _753) 1 ]", "EXPR [ (1, _57, _689) (1, _691, _706) (-1, _754) 0 ]", - "EXPR [ (1, _689, _743) (-1, _2364) 0 ]", - "EXPR [ (1, _691, _744) (-1, _2365) 0 ]", - "EXPR [ (-1, _755) (1, _2090) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (1, _689, _743) (-1, _2307) 0 ]", + "EXPR [ (1, _691, _744) (-1, _2308) 0 ]", + "EXPR [ (-1, _755) (1, _2033) (1, _2307) (1, _2308) 0 ]", "EXPR [ (1, _751, _755) (-1, _756) 0 ]", "BLACKBOX::RANGE [(_756, 32)] []", - "EXPR [ (1, _756) (-1, _757) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _756) (-1, _757) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _757) (-1, _758) 0 ]", "BLACKBOX::RANGE [(_758, 32)] []", - "EXPR [ (1, _758) (-1, _759) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _758) (-1, _759) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _759) (-1, _760) 0 ]", "BLACKBOX::RANGE [(_760, 32)] []", - "EXPR [ (1, _760) (-1, _761) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _760) (-1, _761) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _761) (-1, _762) 0 ]", "BLACKBOX::RANGE [(_762, 32)] []", - "EXPR [ (-1, _763) (1, _2364) (1, _2365) 0 ]", + "EXPR [ (-1, _763) (1, _2307) (1, _2308) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(762))], q_c: -4864 })], outputs: [Simple(Witness(764))]", "EXPR [ (1, _762, _764) (-4864, _764) (1, _765) -1 ]", "EXPR [ (1, _762, _765) (-4864, _765) 0 ]", @@ -1142,13 +1142,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _762) (-1, _769) 0 ]", "EXPR [ (1, _751, _769) (-1, _770) 0 ]", "BLACKBOX::RANGE [(_770, 32)] []", - "EXPR [ (1, _770) (-1, _771) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _770) (-1, _771) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _771) (-1, _772) 0 ]", "BLACKBOX::RANGE [(_772, 32)] []", - "EXPR [ (1, _772) (-1, _773) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _772) (-1, _773) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _773) (-1, _774) 0 ]", "BLACKBOX::RANGE [(_774, 32)] []", - "EXPR [ (1, _774) (-1, _775) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _774) (-1, _775) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _775) (-1, _776) 0 ]", "BLACKBOX::RANGE [(_776, 32)] []", "EXPR [ (1, _751, _762) (1, _753, _763) (-1, _777) 0 ]", @@ -1162,13 +1162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _776) (-1, _784) 0 ]", "EXPR [ (1, _751, _784) (-1, _785) 0 ]", "BLACKBOX::RANGE [(_785, 32)] []", - "EXPR [ (1, _785) (-1, _786) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _785) (-1, _786) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _786) (-1, _787) 0 ]", "BLACKBOX::RANGE [(_787, 32)] []", - "EXPR [ (1, _787) (-1, _788) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _787) (-1, _788) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _788) (-1, _789) 0 ]", "BLACKBOX::RANGE [(_789, 32)] []", - "EXPR [ (1, _789) (-1, _790) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _789) (-1, _790) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _790) (-1, _791) 0 ]", "BLACKBOX::RANGE [(_791, 32)] []", "EXPR [ (1, _751, _776) (1, _753, _777) (-1, _792) 0 ]", @@ -1181,13 +1181,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _791) (-1, _798) 0 ]", "EXPR [ (1, _751, _798) (-1, _799) 0 ]", "BLACKBOX::RANGE [(_799, 32)] []", - "EXPR [ (1, _799) (-1, _800) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _799) (-1, _800) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _751, _800) (-1, _801) 0 ]", "BLACKBOX::RANGE [(_801, 32)] []", - "EXPR [ (1, _801) (-1, _802) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _801) (-1, _802) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _751, _802) (-1, _803) 0 ]", "BLACKBOX::RANGE [(_803, 32)] []", - "EXPR [ (1, _803) (-1, _804) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _803) (-1, _804) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _751, _804) (-1, _805) 0 ]", "BLACKBOX::RANGE [(_805, 32)] []", "EXPR [ (1, _751, _791) (1, _753, _792) (-1, _806) 0 ]", @@ -1203,21 +1203,21 @@ expression: artifact "EXPR [ (1, _805, _809) (1, _810, _811) (-1, _814) 0 ]", "EXPR [ (-1, _813) (-1, _815) 1 ]", "EXPR [ (1, _57, _751) (1, _753, _768) (-1, _816) 0 ]", - "EXPR [ (1, _751, _805) (-1, _2384) 0 ]", - "EXPR [ (1, _753, _806) (-1, _2385) 0 ]", - "EXPR [ (-1, _817) (1, _2090) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (1, _751, _805) (-1, _2327) 0 ]", + "EXPR [ (1, _753, _806) (-1, _2328) 0 ]", + "EXPR [ (-1, _817) (1, _2033) (1, _2327) (1, _2328) 0 ]", "EXPR [ (1, _813, _817) (-1, _818) 0 ]", "BLACKBOX::RANGE [(_818, 32)] []", - "EXPR [ (1, _818) (-1, _819) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _818) (-1, _819) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _819) (-1, _820) 0 ]", "BLACKBOX::RANGE [(_820, 32)] []", - "EXPR [ (1, _820) (-1, _821) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _820) (-1, _821) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _821) (-1, _822) 0 ]", "BLACKBOX::RANGE [(_822, 32)] []", - "EXPR [ (1, _822) (-1, _823) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _822) (-1, _823) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _823) (-1, _824) 0 ]", "BLACKBOX::RANGE [(_824, 32)] []", - "EXPR [ (-1, _825) (1, _2384) (1, _2385) 0 ]", + "EXPR [ (-1, _825) (1, _2327) (1, _2328) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(824))], q_c: -4864 })], outputs: [Simple(Witness(826))]", "EXPR [ (1, _824, _826) (-4864, _826) (1, _827) -1 ]", "EXPR [ (1, _824, _827) (-4864, _827) 0 ]", @@ -1227,13 +1227,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _824) (-1, _831) 0 ]", "EXPR [ (1, _813, _831) (-1, _832) 0 ]", "BLACKBOX::RANGE [(_832, 32)] []", - "EXPR [ (1, _832) (-1, _833) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _832) (-1, _833) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _833) (-1, _834) 0 ]", "BLACKBOX::RANGE [(_834, 32)] []", - "EXPR [ (1, _834) (-1, _835) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _834) (-1, _835) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _835) (-1, _836) 0 ]", "BLACKBOX::RANGE [(_836, 32)] []", - "EXPR [ (1, _836) (-1, _837) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _836) (-1, _837) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _837) (-1, _838) 0 ]", "BLACKBOX::RANGE [(_838, 32)] []", "EXPR [ (1, _813, _824) (1, _815, _825) (-1, _839) 0 ]", @@ -1247,13 +1247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _838) (-1, _846) 0 ]", "EXPR [ (1, _813, _846) (-1, _847) 0 ]", "BLACKBOX::RANGE [(_847, 32)] []", - "EXPR [ (1, _847) (-1, _848) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _847) (-1, _848) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _848) (-1, _849) 0 ]", "BLACKBOX::RANGE [(_849, 32)] []", - "EXPR [ (1, _849) (-1, _850) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _849) (-1, _850) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _850) (-1, _851) 0 ]", "BLACKBOX::RANGE [(_851, 32)] []", - "EXPR [ (1, _851) (-1, _852) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _851) (-1, _852) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _852) (-1, _853) 0 ]", "BLACKBOX::RANGE [(_853, 32)] []", "EXPR [ (1, _813, _838) (1, _815, _839) (-1, _854) 0 ]", @@ -1266,13 +1266,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _853) (-1, _860) 0 ]", "EXPR [ (1, _813, _860) (-1, _861) 0 ]", "BLACKBOX::RANGE [(_861, 32)] []", - "EXPR [ (1, _861) (-1, _862) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _861) (-1, _862) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _813, _862) (-1, _863) 0 ]", "BLACKBOX::RANGE [(_863, 32)] []", - "EXPR [ (1, _863) (-1, _864) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _863) (-1, _864) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _813, _864) (-1, _865) 0 ]", "BLACKBOX::RANGE [(_865, 32)] []", - "EXPR [ (1, _865) (-1, _866) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _865) (-1, _866) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _813, _866) (-1, _867) 0 ]", "BLACKBOX::RANGE [(_867, 32)] []", "EXPR [ (1, _813, _853) (1, _815, _854) (-1, _868) 0 ]", @@ -1288,21 +1288,21 @@ expression: artifact "EXPR [ (1, _867, _871) (1, _872, _873) (-1, _876) 0 ]", "EXPR [ (-1, _875) (-1, _877) 1 ]", "EXPR [ (1, _57, _813) (1, _815, _830) (-1, _878) 0 ]", - "EXPR [ (1, _813, _867) (-1, _2404) 0 ]", - "EXPR [ (1, _815, _868) (-1, _2405) 0 ]", - "EXPR [ (-1, _879) (1, _2090) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (1, _813, _867) (-1, _2347) 0 ]", + "EXPR [ (1, _815, _868) (-1, _2348) 0 ]", + "EXPR [ (-1, _879) (1, _2033) (1, _2347) (1, _2348) 0 ]", "EXPR [ (1, _875, _879) (-1, _880) 0 ]", "BLACKBOX::RANGE [(_880, 32)] []", - "EXPR [ (1, _880) (-1, _881) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _880) (-1, _881) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _881) (-1, _882) 0 ]", "BLACKBOX::RANGE [(_882, 32)] []", - "EXPR [ (1, _882) (-1, _883) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _882) (-1, _883) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _883) (-1, _884) 0 ]", "BLACKBOX::RANGE [(_884, 32)] []", - "EXPR [ (1, _884) (-1, _885) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _884) (-1, _885) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _885) (-1, _886) 0 ]", "BLACKBOX::RANGE [(_886, 32)] []", - "EXPR [ (-1, _887) (1, _2404) (1, _2405) 0 ]", + "EXPR [ (-1, _887) (1, _2347) (1, _2348) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(886))], q_c: -4864 })], outputs: [Simple(Witness(888))]", "EXPR [ (1, _886, _888) (-4864, _888) (1, _889) -1 ]", "EXPR [ (1, _886, _889) (-4864, _889) 0 ]", @@ -1312,13 +1312,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _886) (-1, _893) 0 ]", "EXPR [ (1, _875, _893) (-1, _894) 0 ]", "BLACKBOX::RANGE [(_894, 32)] []", - "EXPR [ (1, _894) (-1, _895) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _894) (-1, _895) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _895) (-1, _896) 0 ]", "BLACKBOX::RANGE [(_896, 32)] []", - "EXPR [ (1, _896) (-1, _897) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _896) (-1, _897) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _897) (-1, _898) 0 ]", "BLACKBOX::RANGE [(_898, 32)] []", - "EXPR [ (1, _898) (-1, _899) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _898) (-1, _899) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _899) (-1, _900) 0 ]", "BLACKBOX::RANGE [(_900, 32)] []", "EXPR [ (1, _875, _886) (1, _877, _887) (-1, _901) 0 ]", @@ -1332,13 +1332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _900) (-1, _908) 0 ]", "EXPR [ (1, _875, _908) (-1, _909) 0 ]", "BLACKBOX::RANGE [(_909, 32)] []", - "EXPR [ (1, _909) (-1, _910) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _909) (-1, _910) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _910) (-1, _911) 0 ]", "BLACKBOX::RANGE [(_911, 32)] []", - "EXPR [ (1, _911) (-1, _912) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _911) (-1, _912) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _912) (-1, _913) 0 ]", "BLACKBOX::RANGE [(_913, 32)] []", - "EXPR [ (1, _913) (-1, _914) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _913) (-1, _914) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _914) (-1, _915) 0 ]", "BLACKBOX::RANGE [(_915, 32)] []", "EXPR [ (1, _875, _900) (1, _877, _901) (-1, _916) 0 ]", @@ -1351,13 +1351,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _915) (-1, _922) 0 ]", "EXPR [ (1, _875, _922) (-1, _923) 0 ]", "BLACKBOX::RANGE [(_923, 32)] []", - "EXPR [ (1, _923) (-1, _924) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _923) (-1, _924) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _875, _924) (-1, _925) 0 ]", "BLACKBOX::RANGE [(_925, 32)] []", - "EXPR [ (1, _925) (-1, _926) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _925) (-1, _926) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _875, _926) (-1, _927) 0 ]", "BLACKBOX::RANGE [(_927, 32)] []", - "EXPR [ (1, _927) (-1, _928) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _927) (-1, _928) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _875, _928) (-1, _929) 0 ]", "BLACKBOX::RANGE [(_929, 32)] []", "EXPR [ (1, _875, _915) (1, _877, _916) (-1, _930) 0 ]", @@ -1373,21 +1373,21 @@ expression: artifact "EXPR [ (1, _929, _933) (1, _934, _935) (-1, _938) 0 ]", "EXPR [ (-1, _937) (-1, _939) 1 ]", "EXPR [ (1, _57, _875) (1, _877, _892) (-1, _940) 0 ]", - "EXPR [ (1, _875, _929) (-1, _2424) 0 ]", - "EXPR [ (1, _877, _930) (-1, _2425) 0 ]", - "EXPR [ (-1, _941) (1, _2090) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (1, _875, _929) (-1, _2367) 0 ]", + "EXPR [ (1, _877, _930) (-1, _2368) 0 ]", + "EXPR [ (-1, _941) (1, _2033) (1, _2367) (1, _2368) 0 ]", "EXPR [ (1, _937, _941) (-1, _942) 0 ]", "BLACKBOX::RANGE [(_942, 32)] []", - "EXPR [ (1, _942) (-1, _943) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _942) (-1, _943) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _943) (-1, _944) 0 ]", "BLACKBOX::RANGE [(_944, 32)] []", - "EXPR [ (1, _944) (-1, _945) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _944) (-1, _945) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _945) (-1, _946) 0 ]", "BLACKBOX::RANGE [(_946, 32)] []", - "EXPR [ (1, _946) (-1, _947) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _946) (-1, _947) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _947) (-1, _948) 0 ]", "BLACKBOX::RANGE [(_948, 32)] []", - "EXPR [ (-1, _949) (1, _2424) (1, _2425) 0 ]", + "EXPR [ (-1, _949) (1, _2367) (1, _2368) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(948))], q_c: -4864 })], outputs: [Simple(Witness(950))]", "EXPR [ (1, _948, _950) (-4864, _950) (1, _951) -1 ]", "EXPR [ (1, _948, _951) (-4864, _951) 0 ]", @@ -1397,13 +1397,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _948) (-1, _955) 0 ]", "EXPR [ (1, _937, _955) (-1, _956) 0 ]", "BLACKBOX::RANGE [(_956, 32)] []", - "EXPR [ (1, _956) (-1, _957) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _956) (-1, _957) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _957) (-1, _958) 0 ]", "BLACKBOX::RANGE [(_958, 32)] []", - "EXPR [ (1, _958) (-1, _959) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _958) (-1, _959) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _959) (-1, _960) 0 ]", "BLACKBOX::RANGE [(_960, 32)] []", - "EXPR [ (1, _960) (-1, _961) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _960) (-1, _961) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _961) (-1, _962) 0 ]", "BLACKBOX::RANGE [(_962, 32)] []", "EXPR [ (1, _937, _948) (1, _939, _949) (-1, _963) 0 ]", @@ -1417,13 +1417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _962) (-1, _970) 0 ]", "EXPR [ (1, _937, _970) (-1, _971) 0 ]", "BLACKBOX::RANGE [(_971, 32)] []", - "EXPR [ (1, _971) (-1, _972) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _971) (-1, _972) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _972) (-1, _973) 0 ]", "BLACKBOX::RANGE [(_973, 32)] []", - "EXPR [ (1, _973) (-1, _974) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _973) (-1, _974) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _974) (-1, _975) 0 ]", "BLACKBOX::RANGE [(_975, 32)] []", - "EXPR [ (1, _975) (-1, _976) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _975) (-1, _976) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _976) (-1, _977) 0 ]", "BLACKBOX::RANGE [(_977, 32)] []", "EXPR [ (1, _937, _962) (1, _939, _963) (-1, _978) 0 ]", @@ -1436,13 +1436,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _977) (-1, _984) 0 ]", "EXPR [ (1, _937, _984) (-1, _985) 0 ]", "BLACKBOX::RANGE [(_985, 32)] []", - "EXPR [ (1, _985) (-1, _986) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _985) (-1, _986) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _937, _986) (-1, _987) 0 ]", "BLACKBOX::RANGE [(_987, 32)] []", - "EXPR [ (1, _987) (-1, _988) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _987) (-1, _988) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _937, _988) (-1, _989) 0 ]", "BLACKBOX::RANGE [(_989, 32)] []", - "EXPR [ (1, _989) (-1, _990) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _989) (-1, _990) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _937, _990) (-1, _991) 0 ]", "BLACKBOX::RANGE [(_991, 32)] []", "EXPR [ (1, _937, _977) (1, _939, _978) (-1, _992) 0 ]", @@ -1458,21 +1458,21 @@ expression: artifact "EXPR [ (1, _991, _995) (1, _996, _997) (-1, _1000) 0 ]", "EXPR [ (-1, _999) (-1, _1001) 1 ]", "EXPR [ (1, _57, _937) (1, _939, _954) (-1, _1002) 0 ]", - "EXPR [ (1, _937, _991) (-1, _2444) 0 ]", - "EXPR [ (1, _939, _992) (-1, _2445) 0 ]", - "EXPR [ (-1, _1003) (1, _2090) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (1, _937, _991) (-1, _2387) 0 ]", + "EXPR [ (1, _939, _992) (-1, _2388) 0 ]", + "EXPR [ (-1, _1003) (1, _2033) (1, _2387) (1, _2388) 0 ]", "EXPR [ (1, _999, _1003) (-1, _1004) 0 ]", "BLACKBOX::RANGE [(_1004, 32)] []", - "EXPR [ (1, _1004) (-1, _1005) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1004) (-1, _1005) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1005) (-1, _1006) 0 ]", "BLACKBOX::RANGE [(_1006, 32)] []", - "EXPR [ (1, _1006) (-1, _1007) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1006) (-1, _1007) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1007) (-1, _1008) 0 ]", "BLACKBOX::RANGE [(_1008, 32)] []", - "EXPR [ (1, _1008) (-1, _1009) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1008) (-1, _1009) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1009) (-1, _1010) 0 ]", "BLACKBOX::RANGE [(_1010, 32)] []", - "EXPR [ (-1, _1011) (1, _2444) (1, _2445) 0 ]", + "EXPR [ (-1, _1011) (1, _2387) (1, _2388) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1010))], q_c: -4864 })], outputs: [Simple(Witness(1012))]", "EXPR [ (1, _1010, _1012) (-4864, _1012) (1, _1013) -1 ]", "EXPR [ (1, _1010, _1013) (-4864, _1013) 0 ]", @@ -1482,13 +1482,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1010) (-1, _1017) 0 ]", "EXPR [ (1, _999, _1017) (-1, _1018) 0 ]", "BLACKBOX::RANGE [(_1018, 32)] []", - "EXPR [ (1, _1018) (-1, _1019) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1018) (-1, _1019) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1019) (-1, _1020) 0 ]", "BLACKBOX::RANGE [(_1020, 32)] []", - "EXPR [ (1, _1020) (-1, _1021) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1020) (-1, _1021) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1021) (-1, _1022) 0 ]", "BLACKBOX::RANGE [(_1022, 32)] []", - "EXPR [ (1, _1022) (-1, _1023) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1022) (-1, _1023) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1023) (-1, _1024) 0 ]", "BLACKBOX::RANGE [(_1024, 32)] []", "EXPR [ (1, _999, _1010) (1, _1001, _1011) (-1, _1025) 0 ]", @@ -1502,13 +1502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1024) (-1, _1032) 0 ]", "EXPR [ (1, _999, _1032) (-1, _1033) 0 ]", "BLACKBOX::RANGE [(_1033, 32)] []", - "EXPR [ (1, _1033) (-1, _1034) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1033) (-1, _1034) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1034) (-1, _1035) 0 ]", "BLACKBOX::RANGE [(_1035, 32)] []", - "EXPR [ (1, _1035) (-1, _1036) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1035) (-1, _1036) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1036) (-1, _1037) 0 ]", "BLACKBOX::RANGE [(_1037, 32)] []", - "EXPR [ (1, _1037) (-1, _1038) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1037) (-1, _1038) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1038) (-1, _1039) 0 ]", "BLACKBOX::RANGE [(_1039, 32)] []", "EXPR [ (1, _999, _1024) (1, _1001, _1025) (-1, _1040) 0 ]", @@ -1521,13 +1521,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1039) (-1, _1046) 0 ]", "EXPR [ (1, _999, _1046) (-1, _1047) 0 ]", "BLACKBOX::RANGE [(_1047, 32)] []", - "EXPR [ (1, _1047) (-1, _1048) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1047) (-1, _1048) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _999, _1048) (-1, _1049) 0 ]", "BLACKBOX::RANGE [(_1049, 32)] []", - "EXPR [ (1, _1049) (-1, _1050) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1049) (-1, _1050) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _999, _1050) (-1, _1051) 0 ]", "BLACKBOX::RANGE [(_1051, 32)] []", - "EXPR [ (1, _1051) (-1, _1052) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1051) (-1, _1052) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _999, _1052) (-1, _1053) 0 ]", "BLACKBOX::RANGE [(_1053, 32)] []", "EXPR [ (1, _999, _1039) (1, _1001, _1040) (-1, _1054) 0 ]", @@ -1543,21 +1543,21 @@ expression: artifact "EXPR [ (1, _1053, _1057) (1, _1058, _1059) (-1, _1062) 0 ]", "EXPR [ (-1, _1061) (-1, _1063) 1 ]", "EXPR [ (1, _57, _999) (1, _1001, _1016) (-1, _1064) 0 ]", - "EXPR [ (1, _999, _1053) (-1, _2464) 0 ]", - "EXPR [ (1, _1001, _1054) (-1, _2465) 0 ]", - "EXPR [ (-1, _1065) (1, _2090) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (1, _999, _1053) (-1, _2407) 0 ]", + "EXPR [ (1, _1001, _1054) (-1, _2408) 0 ]", + "EXPR [ (-1, _1065) (1, _2033) (1, _2407) (1, _2408) 0 ]", "EXPR [ (1, _1061, _1065) (-1, _1066) 0 ]", "BLACKBOX::RANGE [(_1066, 32)] []", - "EXPR [ (1, _1066) (-1, _1067) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1066) (-1, _1067) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1067) (-1, _1068) 0 ]", "BLACKBOX::RANGE [(_1068, 32)] []", - "EXPR [ (1, _1068) (-1, _1069) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1068) (-1, _1069) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1069) (-1, _1070) 0 ]", "BLACKBOX::RANGE [(_1070, 32)] []", - "EXPR [ (1, _1070) (-1, _1071) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1070) (-1, _1071) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1071) (-1, _1072) 0 ]", "BLACKBOX::RANGE [(_1072, 32)] []", - "EXPR [ (-1, _1073) (1, _2464) (1, _2465) 0 ]", + "EXPR [ (-1, _1073) (1, _2407) (1, _2408) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1072))], q_c: -4864 })], outputs: [Simple(Witness(1074))]", "EXPR [ (1, _1072, _1074) (-4864, _1074) (1, _1075) -1 ]", "EXPR [ (1, _1072, _1075) (-4864, _1075) 0 ]", @@ -1567,13 +1567,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1072) (-1, _1079) 0 ]", "EXPR [ (1, _1061, _1079) (-1, _1080) 0 ]", "BLACKBOX::RANGE [(_1080, 32)] []", - "EXPR [ (1, _1080) (-1, _1081) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1080) (-1, _1081) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1081) (-1, _1082) 0 ]", "BLACKBOX::RANGE [(_1082, 32)] []", - "EXPR [ (1, _1082) (-1, _1083) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1082) (-1, _1083) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1083) (-1, _1084) 0 ]", "BLACKBOX::RANGE [(_1084, 32)] []", - "EXPR [ (1, _1084) (-1, _1085) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1084) (-1, _1085) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1085) (-1, _1086) 0 ]", "BLACKBOX::RANGE [(_1086, 32)] []", "EXPR [ (1, _1061, _1072) (1, _1063, _1073) (-1, _1087) 0 ]", @@ -1587,13 +1587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1086) (-1, _1094) 0 ]", "EXPR [ (1, _1061, _1094) (-1, _1095) 0 ]", "BLACKBOX::RANGE [(_1095, 32)] []", - "EXPR [ (1, _1095) (-1, _1096) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1095) (-1, _1096) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1096) (-1, _1097) 0 ]", "BLACKBOX::RANGE [(_1097, 32)] []", - "EXPR [ (1, _1097) (-1, _1098) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1097) (-1, _1098) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1098) (-1, _1099) 0 ]", "BLACKBOX::RANGE [(_1099, 32)] []", - "EXPR [ (1, _1099) (-1, _1100) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1099) (-1, _1100) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1100) (-1, _1101) 0 ]", "BLACKBOX::RANGE [(_1101, 32)] []", "EXPR [ (1, _1061, _1086) (1, _1063, _1087) (-1, _1102) 0 ]", @@ -1606,13 +1606,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1101) (-1, _1108) 0 ]", "EXPR [ (1, _1061, _1108) (-1, _1109) 0 ]", "BLACKBOX::RANGE [(_1109, 32)] []", - "EXPR [ (1, _1109) (-1, _1110) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1109) (-1, _1110) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1061, _1110) (-1, _1111) 0 ]", "BLACKBOX::RANGE [(_1111, 32)] []", - "EXPR [ (1, _1111) (-1, _1112) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1111) (-1, _1112) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1061, _1112) (-1, _1113) 0 ]", "BLACKBOX::RANGE [(_1113, 32)] []", - "EXPR [ (1, _1113) (-1, _1114) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1113) (-1, _1114) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1061, _1114) (-1, _1115) 0 ]", "BLACKBOX::RANGE [(_1115, 32)] []", "EXPR [ (1, _1061, _1101) (1, _1063, _1102) (-1, _1116) 0 ]", @@ -1628,21 +1628,21 @@ expression: artifact "EXPR [ (1, _1115, _1119) (1, _1120, _1121) (-1, _1124) 0 ]", "EXPR [ (-1, _1123) (-1, _1125) 1 ]", "EXPR [ (1, _57, _1061) (1, _1063, _1078) (-1, _1126) 0 ]", - "EXPR [ (1, _1061, _1115) (-1, _2484) 0 ]", - "EXPR [ (1, _1063, _1116) (-1, _2485) 0 ]", - "EXPR [ (-1, _1127) (1, _2090) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (1, _1061, _1115) (-1, _2427) 0 ]", + "EXPR [ (1, _1063, _1116) (-1, _2428) 0 ]", + "EXPR [ (-1, _1127) (1, _2033) (1, _2427) (1, _2428) 0 ]", "EXPR [ (1, _1123, _1127) (-1, _1128) 0 ]", "BLACKBOX::RANGE [(_1128, 32)] []", - "EXPR [ (1, _1128) (-1, _1129) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1128) (-1, _1129) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1129) (-1, _1130) 0 ]", "BLACKBOX::RANGE [(_1130, 32)] []", - "EXPR [ (1, _1130) (-1, _1131) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1130) (-1, _1131) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1131) (-1, _1132) 0 ]", "BLACKBOX::RANGE [(_1132, 32)] []", - "EXPR [ (1, _1132) (-1, _1133) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1132) (-1, _1133) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1133) (-1, _1134) 0 ]", "BLACKBOX::RANGE [(_1134, 32)] []", - "EXPR [ (-1, _1135) (1, _2484) (1, _2485) 0 ]", + "EXPR [ (-1, _1135) (1, _2427) (1, _2428) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1134))], q_c: -4864 })], outputs: [Simple(Witness(1136))]", "EXPR [ (1, _1134, _1136) (-4864, _1136) (1, _1137) -1 ]", "EXPR [ (1, _1134, _1137) (-4864, _1137) 0 ]", @@ -1652,13 +1652,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1134) (-1, _1141) 0 ]", "EXPR [ (1, _1123, _1141) (-1, _1142) 0 ]", "BLACKBOX::RANGE [(_1142, 32)] []", - "EXPR [ (1, _1142) (-1, _1143) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1142) (-1, _1143) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1143) (-1, _1144) 0 ]", "BLACKBOX::RANGE [(_1144, 32)] []", - "EXPR [ (1, _1144) (-1, _1145) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1144) (-1, _1145) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1145) (-1, _1146) 0 ]", "BLACKBOX::RANGE [(_1146, 32)] []", - "EXPR [ (1, _1146) (-1, _1147) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1146) (-1, _1147) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1147) (-1, _1148) 0 ]", "BLACKBOX::RANGE [(_1148, 32)] []", "EXPR [ (1, _1123, _1134) (1, _1125, _1135) (-1, _1149) 0 ]", @@ -1672,13 +1672,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1148) (-1, _1156) 0 ]", "EXPR [ (1, _1123, _1156) (-1, _1157) 0 ]", "BLACKBOX::RANGE [(_1157, 32)] []", - "EXPR [ (1, _1157) (-1, _1158) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1157) (-1, _1158) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1158) (-1, _1159) 0 ]", "BLACKBOX::RANGE [(_1159, 32)] []", - "EXPR [ (1, _1159) (-1, _1160) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1159) (-1, _1160) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1160) (-1, _1161) 0 ]", "BLACKBOX::RANGE [(_1161, 32)] []", - "EXPR [ (1, _1161) (-1, _1162) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1161) (-1, _1162) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1162) (-1, _1163) 0 ]", "BLACKBOX::RANGE [(_1163, 32)] []", "EXPR [ (1, _1123, _1148) (1, _1125, _1149) (-1, _1164) 0 ]", @@ -1691,13 +1691,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1163) (-1, _1170) 0 ]", "EXPR [ (1, _1123, _1170) (-1, _1171) 0 ]", "BLACKBOX::RANGE [(_1171, 32)] []", - "EXPR [ (1, _1171) (-1, _1172) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1171) (-1, _1172) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1123, _1172) (-1, _1173) 0 ]", "BLACKBOX::RANGE [(_1173, 32)] []", - "EXPR [ (1, _1173) (-1, _1174) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1173) (-1, _1174) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1123, _1174) (-1, _1175) 0 ]", "BLACKBOX::RANGE [(_1175, 32)] []", - "EXPR [ (1, _1175) (-1, _1176) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1175) (-1, _1176) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1123, _1176) (-1, _1177) 0 ]", "BLACKBOX::RANGE [(_1177, 32)] []", "EXPR [ (1, _1123, _1163) (1, _1125, _1164) (-1, _1178) 0 ]", @@ -1713,21 +1713,21 @@ expression: artifact "EXPR [ (1, _1177, _1181) (1, _1182, _1183) (-1, _1186) 0 ]", "EXPR [ (-1, _1185) (-1, _1187) 1 ]", "EXPR [ (1, _57, _1123) (1, _1125, _1140) (-1, _1188) 0 ]", - "EXPR [ (1, _1123, _1177) (-1, _2504) 0 ]", - "EXPR [ (1, _1125, _1178) (-1, _2505) 0 ]", - "EXPR [ (-1, _1189) (1, _2090) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (1, _1123, _1177) (-1, _2447) 0 ]", + "EXPR [ (1, _1125, _1178) (-1, _2448) 0 ]", + "EXPR [ (-1, _1189) (1, _2033) (1, _2447) (1, _2448) 0 ]", "EXPR [ (1, _1185, _1189) (-1, _1190) 0 ]", "BLACKBOX::RANGE [(_1190, 32)] []", - "EXPR [ (1, _1190) (-1, _1191) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1190) (-1, _1191) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1191) (-1, _1192) 0 ]", "BLACKBOX::RANGE [(_1192, 32)] []", - "EXPR [ (1, _1192) (-1, _1193) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1192) (-1, _1193) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1193) (-1, _1194) 0 ]", "BLACKBOX::RANGE [(_1194, 32)] []", - "EXPR [ (1, _1194) (-1, _1195) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1194) (-1, _1195) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1195) (-1, _1196) 0 ]", "BLACKBOX::RANGE [(_1196, 32)] []", - "EXPR [ (-1, _1197) (1, _2504) (1, _2505) 0 ]", + "EXPR [ (-1, _1197) (1, _2447) (1, _2448) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1196))], q_c: -4864 })], outputs: [Simple(Witness(1198))]", "EXPR [ (1, _1196, _1198) (-4864, _1198) (1, _1199) -1 ]", "EXPR [ (1, _1196, _1199) (-4864, _1199) 0 ]", @@ -1737,13 +1737,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1196) (-1, _1203) 0 ]", "EXPR [ (1, _1185, _1203) (-1, _1204) 0 ]", "BLACKBOX::RANGE [(_1204, 32)] []", - "EXPR [ (1, _1204) (-1, _1205) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1204) (-1, _1205) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1205) (-1, _1206) 0 ]", "BLACKBOX::RANGE [(_1206, 32)] []", - "EXPR [ (1, _1206) (-1, _1207) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1206) (-1, _1207) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1207) (-1, _1208) 0 ]", "BLACKBOX::RANGE [(_1208, 32)] []", - "EXPR [ (1, _1208) (-1, _1209) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1208) (-1, _1209) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1209) (-1, _1210) 0 ]", "BLACKBOX::RANGE [(_1210, 32)] []", "EXPR [ (1, _1185, _1196) (1, _1187, _1197) (-1, _1211) 0 ]", @@ -1757,13 +1757,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1210) (-1, _1218) 0 ]", "EXPR [ (1, _1185, _1218) (-1, _1219) 0 ]", "BLACKBOX::RANGE [(_1219, 32)] []", - "EXPR [ (1, _1219) (-1, _1220) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1219) (-1, _1220) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1220) (-1, _1221) 0 ]", "BLACKBOX::RANGE [(_1221, 32)] []", - "EXPR [ (1, _1221) (-1, _1222) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1221) (-1, _1222) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1222) (-1, _1223) 0 ]", "BLACKBOX::RANGE [(_1223, 32)] []", - "EXPR [ (1, _1223) (-1, _1224) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1223) (-1, _1224) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1224) (-1, _1225) 0 ]", "BLACKBOX::RANGE [(_1225, 32)] []", "EXPR [ (1, _1185, _1210) (1, _1187, _1211) (-1, _1226) 0 ]", @@ -1776,13 +1776,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1225) (-1, _1232) 0 ]", "EXPR [ (1, _1185, _1232) (-1, _1233) 0 ]", "BLACKBOX::RANGE [(_1233, 32)] []", - "EXPR [ (1, _1233) (-1, _1234) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1233) (-1, _1234) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1185, _1234) (-1, _1235) 0 ]", "BLACKBOX::RANGE [(_1235, 32)] []", - "EXPR [ (1, _1235) (-1, _1236) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1235) (-1, _1236) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1185, _1236) (-1, _1237) 0 ]", "BLACKBOX::RANGE [(_1237, 32)] []", - "EXPR [ (1, _1237) (-1, _1238) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1237) (-1, _1238) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1185, _1238) (-1, _1239) 0 ]", "BLACKBOX::RANGE [(_1239, 32)] []", "EXPR [ (1, _1185, _1225) (1, _1187, _1226) (-1, _1240) 0 ]", @@ -1798,21 +1798,21 @@ expression: artifact "EXPR [ (1, _1239, _1243) (1, _1244, _1245) (-1, _1248) 0 ]", "EXPR [ (-1, _1247) (-1, _1249) 1 ]", "EXPR [ (1, _57, _1185) (1, _1187, _1202) (-1, _1250) 0 ]", - "EXPR [ (1, _1185, _1239) (-1, _2524) 0 ]", - "EXPR [ (1, _1187, _1240) (-1, _2525) 0 ]", - "EXPR [ (-1, _1251) (1, _2090) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (1, _1185, _1239) (-1, _2467) 0 ]", + "EXPR [ (1, _1187, _1240) (-1, _2468) 0 ]", + "EXPR [ (-1, _1251) (1, _2033) (1, _2467) (1, _2468) 0 ]", "EXPR [ (1, _1247, _1251) (-1, _1252) 0 ]", "BLACKBOX::RANGE [(_1252, 32)] []", - "EXPR [ (1, _1252) (-1, _1253) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1252) (-1, _1253) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1253) (-1, _1254) 0 ]", "BLACKBOX::RANGE [(_1254, 32)] []", - "EXPR [ (1, _1254) (-1, _1255) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1254) (-1, _1255) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1255) (-1, _1256) 0 ]", "BLACKBOX::RANGE [(_1256, 32)] []", - "EXPR [ (1, _1256) (-1, _1257) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1256) (-1, _1257) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1257) (-1, _1258) 0 ]", "BLACKBOX::RANGE [(_1258, 32)] []", - "EXPR [ (-1, _1259) (1, _2524) (1, _2525) 0 ]", + "EXPR [ (-1, _1259) (1, _2467) (1, _2468) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1258))], q_c: -4864 })], outputs: [Simple(Witness(1260))]", "EXPR [ (1, _1258, _1260) (-4864, _1260) (1, _1261) -1 ]", "EXPR [ (1, _1258, _1261) (-4864, _1261) 0 ]", @@ -1822,13 +1822,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1258) (-1, _1265) 0 ]", "EXPR [ (1, _1247, _1265) (-1, _1266) 0 ]", "BLACKBOX::RANGE [(_1266, 32)] []", - "EXPR [ (1, _1266) (-1, _1267) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1266) (-1, _1267) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1267) (-1, _1268) 0 ]", "BLACKBOX::RANGE [(_1268, 32)] []", - "EXPR [ (1, _1268) (-1, _1269) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1268) (-1, _1269) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1269) (-1, _1270) 0 ]", "BLACKBOX::RANGE [(_1270, 32)] []", - "EXPR [ (1, _1270) (-1, _1271) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1270) (-1, _1271) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1271) (-1, _1272) 0 ]", "BLACKBOX::RANGE [(_1272, 32)] []", "EXPR [ (1, _1247, _1258) (1, _1249, _1259) (-1, _1273) 0 ]", @@ -1842,13 +1842,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1272) (-1, _1280) 0 ]", "EXPR [ (1, _1247, _1280) (-1, _1281) 0 ]", "BLACKBOX::RANGE [(_1281, 32)] []", - "EXPR [ (1, _1281) (-1, _1282) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1281) (-1, _1282) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1282) (-1, _1283) 0 ]", "BLACKBOX::RANGE [(_1283, 32)] []", - "EXPR [ (1, _1283) (-1, _1284) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1283) (-1, _1284) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1284) (-1, _1285) 0 ]", "BLACKBOX::RANGE [(_1285, 32)] []", - "EXPR [ (1, _1285) (-1, _1286) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1285) (-1, _1286) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1286) (-1, _1287) 0 ]", "BLACKBOX::RANGE [(_1287, 32)] []", "EXPR [ (1, _1247, _1272) (1, _1249, _1273) (-1, _1288) 0 ]", @@ -1861,13 +1861,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1287) (-1, _1294) 0 ]", "EXPR [ (1, _1247, _1294) (-1, _1295) 0 ]", "BLACKBOX::RANGE [(_1295, 32)] []", - "EXPR [ (1, _1295) (-1, _1296) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1295) (-1, _1296) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1247, _1296) (-1, _1297) 0 ]", "BLACKBOX::RANGE [(_1297, 32)] []", - "EXPR [ (1, _1297) (-1, _1298) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1297) (-1, _1298) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1247, _1298) (-1, _1299) 0 ]", "BLACKBOX::RANGE [(_1299, 32)] []", - "EXPR [ (1, _1299) (-1, _1300) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1299) (-1, _1300) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1247, _1300) (-1, _1301) 0 ]", "BLACKBOX::RANGE [(_1301, 32)] []", "EXPR [ (1, _1247, _1287) (1, _1249, _1288) (-1, _1302) 0 ]", @@ -1883,21 +1883,21 @@ expression: artifact "EXPR [ (1, _1301, _1305) (1, _1306, _1307) (-1, _1310) 0 ]", "EXPR [ (-1, _1309) (-1, _1311) 1 ]", "EXPR [ (1, _57, _1247) (1, _1249, _1264) (-1, _1312) 0 ]", - "EXPR [ (1, _1247, _1301) (-1, _2544) 0 ]", - "EXPR [ (1, _1249, _1302) (-1, _2545) 0 ]", - "EXPR [ (-1, _1313) (1, _2090) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (1, _1247, _1301) (-1, _2487) 0 ]", + "EXPR [ (1, _1249, _1302) (-1, _2488) 0 ]", + "EXPR [ (-1, _1313) (1, _2033) (1, _2487) (1, _2488) 0 ]", "EXPR [ (1, _1309, _1313) (-1, _1314) 0 ]", "BLACKBOX::RANGE [(_1314, 32)] []", - "EXPR [ (1, _1314) (-1, _1315) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1314) (-1, _1315) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1315) (-1, _1316) 0 ]", "BLACKBOX::RANGE [(_1316, 32)] []", - "EXPR [ (1, _1316) (-1, _1317) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1316) (-1, _1317) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1317) (-1, _1318) 0 ]", "BLACKBOX::RANGE [(_1318, 32)] []", - "EXPR [ (1, _1318) (-1, _1319) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1318) (-1, _1319) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1319) (-1, _1320) 0 ]", "BLACKBOX::RANGE [(_1320, 32)] []", - "EXPR [ (-1, _1321) (1, _2544) (1, _2545) 0 ]", + "EXPR [ (-1, _1321) (1, _2487) (1, _2488) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1320))], q_c: -4864 })], outputs: [Simple(Witness(1322))]", "EXPR [ (1, _1320, _1322) (-4864, _1322) (1, _1323) -1 ]", "EXPR [ (1, _1320, _1323) (-4864, _1323) 0 ]", @@ -1907,13 +1907,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1320) (-1, _1327) 0 ]", "EXPR [ (1, _1309, _1327) (-1, _1328) 0 ]", "BLACKBOX::RANGE [(_1328, 32)] []", - "EXPR [ (1, _1328) (-1, _1329) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1328) (-1, _1329) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1329) (-1, _1330) 0 ]", "BLACKBOX::RANGE [(_1330, 32)] []", - "EXPR [ (1, _1330) (-1, _1331) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1330) (-1, _1331) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1331) (-1, _1332) 0 ]", "BLACKBOX::RANGE [(_1332, 32)] []", - "EXPR [ (1, _1332) (-1, _1333) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1332) (-1, _1333) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1333) (-1, _1334) 0 ]", "BLACKBOX::RANGE [(_1334, 32)] []", "EXPR [ (1, _1309, _1320) (1, _1311, _1321) (-1, _1335) 0 ]", @@ -1927,13 +1927,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1334) (-1, _1342) 0 ]", "EXPR [ (1, _1309, _1342) (-1, _1343) 0 ]", "BLACKBOX::RANGE [(_1343, 32)] []", - "EXPR [ (1, _1343) (-1, _1344) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1343) (-1, _1344) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1344) (-1, _1345) 0 ]", "BLACKBOX::RANGE [(_1345, 32)] []", - "EXPR [ (1, _1345) (-1, _1346) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1345) (-1, _1346) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1346) (-1, _1347) 0 ]", "BLACKBOX::RANGE [(_1347, 32)] []", - "EXPR [ (1, _1347) (-1, _1348) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1347) (-1, _1348) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1348) (-1, _1349) 0 ]", "BLACKBOX::RANGE [(_1349, 32)] []", "EXPR [ (1, _1309, _1334) (1, _1311, _1335) (-1, _1350) 0 ]", @@ -1946,13 +1946,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1349) (-1, _1356) 0 ]", "EXPR [ (1, _1309, _1356) (-1, _1357) 0 ]", "BLACKBOX::RANGE [(_1357, 32)] []", - "EXPR [ (1, _1357) (-1, _1358) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1357) (-1, _1358) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1309, _1358) (-1, _1359) 0 ]", "BLACKBOX::RANGE [(_1359, 32)] []", - "EXPR [ (1, _1359) (-1, _1360) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1359) (-1, _1360) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1309, _1360) (-1, _1361) 0 ]", "BLACKBOX::RANGE [(_1361, 32)] []", - "EXPR [ (1, _1361) (-1, _1362) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1361) (-1, _1362) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1309, _1362) (-1, _1363) 0 ]", "BLACKBOX::RANGE [(_1363, 32)] []", "EXPR [ (1, _1309, _1349) (1, _1311, _1350) (-1, _1364) 0 ]", @@ -1968,21 +1968,21 @@ expression: artifact "EXPR [ (1, _1363, _1367) (1, _1368, _1369) (-1, _1372) 0 ]", "EXPR [ (-1, _1371) (-1, _1373) 1 ]", "EXPR [ (1, _57, _1309) (1, _1311, _1326) (-1, _1374) 0 ]", - "EXPR [ (1, _1309, _1363) (-1, _2564) 0 ]", - "EXPR [ (1, _1311, _1364) (-1, _2565) 0 ]", - "EXPR [ (-1, _1375) (1, _2090) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (1, _1309, _1363) (-1, _2507) 0 ]", + "EXPR [ (1, _1311, _1364) (-1, _2508) 0 ]", + "EXPR [ (-1, _1375) (1, _2033) (1, _2507) (1, _2508) 0 ]", "EXPR [ (1, _1371, _1375) (-1, _1376) 0 ]", "BLACKBOX::RANGE [(_1376, 32)] []", - "EXPR [ (1, _1376) (-1, _1377) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1376) (-1, _1377) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1377) (-1, _1378) 0 ]", "BLACKBOX::RANGE [(_1378, 32)] []", - "EXPR [ (1, _1378) (-1, _1379) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1378) (-1, _1379) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1379) (-1, _1380) 0 ]", "BLACKBOX::RANGE [(_1380, 32)] []", - "EXPR [ (1, _1380) (-1, _1381) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1380) (-1, _1381) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1381) (-1, _1382) 0 ]", "BLACKBOX::RANGE [(_1382, 32)] []", - "EXPR [ (-1, _1383) (1, _2564) (1, _2565) 0 ]", + "EXPR [ (-1, _1383) (1, _2507) (1, _2508) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1382))], q_c: -4864 })], outputs: [Simple(Witness(1384))]", "EXPR [ (1, _1382, _1384) (-4864, _1384) (1, _1385) -1 ]", "EXPR [ (1, _1382, _1385) (-4864, _1385) 0 ]", @@ -1992,13 +1992,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1382) (-1, _1389) 0 ]", "EXPR [ (1, _1371, _1389) (-1, _1390) 0 ]", "BLACKBOX::RANGE [(_1390, 32)] []", - "EXPR [ (1, _1390) (-1, _1391) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1390) (-1, _1391) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1391) (-1, _1392) 0 ]", "BLACKBOX::RANGE [(_1392, 32)] []", - "EXPR [ (1, _1392) (-1, _1393) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1392) (-1, _1393) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1393) (-1, _1394) 0 ]", "BLACKBOX::RANGE [(_1394, 32)] []", - "EXPR [ (1, _1394) (-1, _1395) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1394) (-1, _1395) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1395) (-1, _1396) 0 ]", "BLACKBOX::RANGE [(_1396, 32)] []", "EXPR [ (1, _1371, _1382) (1, _1373, _1383) (-1, _1397) 0 ]", @@ -2012,13 +2012,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1396) (-1, _1404) 0 ]", "EXPR [ (1, _1371, _1404) (-1, _1405) 0 ]", "BLACKBOX::RANGE [(_1405, 32)] []", - "EXPR [ (1, _1405) (-1, _1406) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1405) (-1, _1406) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1406) (-1, _1407) 0 ]", "BLACKBOX::RANGE [(_1407, 32)] []", - "EXPR [ (1, _1407) (-1, _1408) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1407) (-1, _1408) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1408) (-1, _1409) 0 ]", "BLACKBOX::RANGE [(_1409, 32)] []", - "EXPR [ (1, _1409) (-1, _1410) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1409) (-1, _1410) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1410) (-1, _1411) 0 ]", "BLACKBOX::RANGE [(_1411, 32)] []", "EXPR [ (1, _1371, _1396) (1, _1373, _1397) (-1, _1412) 0 ]", @@ -2031,13 +2031,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1411) (-1, _1418) 0 ]", "EXPR [ (1, _1371, _1418) (-1, _1419) 0 ]", "BLACKBOX::RANGE [(_1419, 32)] []", - "EXPR [ (1, _1419) (-1, _1420) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1419) (-1, _1420) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1371, _1420) (-1, _1421) 0 ]", "BLACKBOX::RANGE [(_1421, 32)] []", - "EXPR [ (1, _1421) (-1, _1422) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1421) (-1, _1422) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1371, _1422) (-1, _1423) 0 ]", "BLACKBOX::RANGE [(_1423, 32)] []", - "EXPR [ (1, _1423) (-1, _1424) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1423) (-1, _1424) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1371, _1424) (-1, _1425) 0 ]", "BLACKBOX::RANGE [(_1425, 32)] []", "EXPR [ (1, _1371, _1411) (1, _1373, _1412) (-1, _1426) 0 ]", @@ -2053,21 +2053,21 @@ expression: artifact "EXPR [ (1, _1425, _1429) (1, _1430, _1431) (-1, _1434) 0 ]", "EXPR [ (-1, _1433) (-1, _1435) 1 ]", "EXPR [ (1, _57, _1371) (1, _1373, _1388) (-1, _1436) 0 ]", - "EXPR [ (1, _1371, _1425) (-1, _2584) 0 ]", - "EXPR [ (1, _1373, _1426) (-1, _2585) 0 ]", - "EXPR [ (-1, _1437) (1, _2090) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (1, _1371, _1425) (-1, _2527) 0 ]", + "EXPR [ (1, _1373, _1426) (-1, _2528) 0 ]", + "EXPR [ (-1, _1437) (1, _2033) (1, _2527) (1, _2528) 0 ]", "EXPR [ (1, _1433, _1437) (-1, _1438) 0 ]", "BLACKBOX::RANGE [(_1438, 32)] []", - "EXPR [ (1, _1438) (-1, _1439) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1438) (-1, _1439) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1439) (-1, _1440) 0 ]", "BLACKBOX::RANGE [(_1440, 32)] []", - "EXPR [ (1, _1440) (-1, _1441) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1440) (-1, _1441) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1441) (-1, _1442) 0 ]", "BLACKBOX::RANGE [(_1442, 32)] []", - "EXPR [ (1, _1442) (-1, _1443) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1442) (-1, _1443) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1443) (-1, _1444) 0 ]", "BLACKBOX::RANGE [(_1444, 32)] []", - "EXPR [ (-1, _1445) (1, _2584) (1, _2585) 0 ]", + "EXPR [ (-1, _1445) (1, _2527) (1, _2528) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1444))], q_c: -4864 })], outputs: [Simple(Witness(1446))]", "EXPR [ (1, _1444, _1446) (-4864, _1446) (1, _1447) -1 ]", "EXPR [ (1, _1444, _1447) (-4864, _1447) 0 ]", @@ -2077,13 +2077,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1444) (-1, _1451) 0 ]", "EXPR [ (1, _1433, _1451) (-1, _1452) 0 ]", "BLACKBOX::RANGE [(_1452, 32)] []", - "EXPR [ (1, _1452) (-1, _1453) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1452) (-1, _1453) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1453) (-1, _1454) 0 ]", "BLACKBOX::RANGE [(_1454, 32)] []", - "EXPR [ (1, _1454) (-1, _1455) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1454) (-1, _1455) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1455) (-1, _1456) 0 ]", "BLACKBOX::RANGE [(_1456, 32)] []", - "EXPR [ (1, _1456) (-1, _1457) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1456) (-1, _1457) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1457) (-1, _1458) 0 ]", "BLACKBOX::RANGE [(_1458, 32)] []", "EXPR [ (1, _1433, _1444) (1, _1435, _1445) (-1, _1459) 0 ]", @@ -2097,13 +2097,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1458) (-1, _1466) 0 ]", "EXPR [ (1, _1433, _1466) (-1, _1467) 0 ]", "BLACKBOX::RANGE [(_1467, 32)] []", - "EXPR [ (1, _1467) (-1, _1468) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1467) (-1, _1468) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1468) (-1, _1469) 0 ]", "BLACKBOX::RANGE [(_1469, 32)] []", - "EXPR [ (1, _1469) (-1, _1470) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1469) (-1, _1470) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1470) (-1, _1471) 0 ]", "BLACKBOX::RANGE [(_1471, 32)] []", - "EXPR [ (1, _1471) (-1, _1472) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1471) (-1, _1472) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1472) (-1, _1473) 0 ]", "BLACKBOX::RANGE [(_1473, 32)] []", "EXPR [ (1, _1433, _1458) (1, _1435, _1459) (-1, _1474) 0 ]", @@ -2116,13 +2116,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1473) (-1, _1480) 0 ]", "EXPR [ (1, _1433, _1480) (-1, _1481) 0 ]", "BLACKBOX::RANGE [(_1481, 32)] []", - "EXPR [ (1, _1481) (-1, _1482) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1481) (-1, _1482) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1433, _1482) (-1, _1483) 0 ]", "BLACKBOX::RANGE [(_1483, 32)] []", - "EXPR [ (1, _1483) (-1, _1484) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1483) (-1, _1484) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1433, _1484) (-1, _1485) 0 ]", "BLACKBOX::RANGE [(_1485, 32)] []", - "EXPR [ (1, _1485) (-1, _1486) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1485) (-1, _1486) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1433, _1486) (-1, _1487) 0 ]", "BLACKBOX::RANGE [(_1487, 32)] []", "EXPR [ (1, _1433, _1473) (1, _1435, _1474) (-1, _1488) 0 ]", @@ -2138,21 +2138,21 @@ expression: artifact "EXPR [ (1, _1487, _1491) (1, _1492, _1493) (-1, _1496) 0 ]", "EXPR [ (-1, _1495) (-1, _1497) 1 ]", "EXPR [ (1, _57, _1433) (1, _1435, _1450) (-1, _1498) 0 ]", - "EXPR [ (1, _1433, _1487) (-1, _2604) 0 ]", - "EXPR [ (1, _1435, _1488) (-1, _2605) 0 ]", - "EXPR [ (-1, _1499) (1, _2090) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (1, _1433, _1487) (-1, _2547) 0 ]", + "EXPR [ (1, _1435, _1488) (-1, _2548) 0 ]", + "EXPR [ (-1, _1499) (1, _2033) (1, _2547) (1, _2548) 0 ]", "EXPR [ (1, _1495, _1499) (-1, _1500) 0 ]", "BLACKBOX::RANGE [(_1500, 32)] []", - "EXPR [ (1, _1500) (-1, _1501) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1500) (-1, _1501) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1501) (-1, _1502) 0 ]", "BLACKBOX::RANGE [(_1502, 32)] []", - "EXPR [ (1, _1502) (-1, _1503) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1502) (-1, _1503) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1503) (-1, _1504) 0 ]", "BLACKBOX::RANGE [(_1504, 32)] []", - "EXPR [ (1, _1504) (-1, _1505) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1504) (-1, _1505) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1505) (-1, _1506) 0 ]", "BLACKBOX::RANGE [(_1506, 32)] []", - "EXPR [ (-1, _1507) (1, _2604) (1, _2605) 0 ]", + "EXPR [ (-1, _1507) (1, _2547) (1, _2548) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1506))], q_c: -4864 })], outputs: [Simple(Witness(1508))]", "EXPR [ (1, _1506, _1508) (-4864, _1508) (1, _1509) -1 ]", "EXPR [ (1, _1506, _1509) (-4864, _1509) 0 ]", @@ -2162,13 +2162,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1506) (-1, _1513) 0 ]", "EXPR [ (1, _1495, _1513) (-1, _1514) 0 ]", "BLACKBOX::RANGE [(_1514, 32)] []", - "EXPR [ (1, _1514) (-1, _1515) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1514) (-1, _1515) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1515) (-1, _1516) 0 ]", "BLACKBOX::RANGE [(_1516, 32)] []", - "EXPR [ (1, _1516) (-1, _1517) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1516) (-1, _1517) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1517) (-1, _1518) 0 ]", "BLACKBOX::RANGE [(_1518, 32)] []", - "EXPR [ (1, _1518) (-1, _1519) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1518) (-1, _1519) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1519) (-1, _1520) 0 ]", "BLACKBOX::RANGE [(_1520, 32)] []", "EXPR [ (1, _1495, _1506) (1, _1497, _1507) (-1, _1521) 0 ]", @@ -2182,13 +2182,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1520) (-1, _1528) 0 ]", "EXPR [ (1, _1495, _1528) (-1, _1529) 0 ]", "BLACKBOX::RANGE [(_1529, 32)] []", - "EXPR [ (1, _1529) (-1, _1530) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1529) (-1, _1530) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1530) (-1, _1531) 0 ]", "BLACKBOX::RANGE [(_1531, 32)] []", - "EXPR [ (1, _1531) (-1, _1532) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1531) (-1, _1532) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1532) (-1, _1533) 0 ]", "BLACKBOX::RANGE [(_1533, 32)] []", - "EXPR [ (1, _1533) (-1, _1534) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1533) (-1, _1534) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1534) (-1, _1535) 0 ]", "BLACKBOX::RANGE [(_1535, 32)] []", "EXPR [ (1, _1495, _1520) (1, _1497, _1521) (-1, _1536) 0 ]", @@ -2201,13 +2201,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1535) (-1, _1542) 0 ]", "EXPR [ (1, _1495, _1542) (-1, _1543) 0 ]", "BLACKBOX::RANGE [(_1543, 32)] []", - "EXPR [ (1, _1543) (-1, _1544) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1543) (-1, _1544) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1495, _1544) (-1, _1545) 0 ]", "BLACKBOX::RANGE [(_1545, 32)] []", - "EXPR [ (1, _1545) (-1, _1546) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1545) (-1, _1546) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1495, _1546) (-1, _1547) 0 ]", "BLACKBOX::RANGE [(_1547, 32)] []", - "EXPR [ (1, _1547) (-1, _1548) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1547) (-1, _1548) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1495, _1548) (-1, _1549) 0 ]", "BLACKBOX::RANGE [(_1549, 32)] []", "EXPR [ (1, _1495, _1535) (1, _1497, _1536) (-1, _1550) 0 ]", @@ -2223,21 +2223,21 @@ expression: artifact "EXPR [ (1, _1549, _1553) (1, _1554, _1555) (-1, _1558) 0 ]", "EXPR [ (-1, _1557) (-1, _1559) 1 ]", "EXPR [ (1, _57, _1495) (1, _1497, _1512) (-1, _1560) 0 ]", - "EXPR [ (1, _1495, _1549) (-1, _2624) 0 ]", - "EXPR [ (1, _1497, _1550) (-1, _2625) 0 ]", - "EXPR [ (-1, _1561) (1, _2090) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (1, _1495, _1549) (-1, _2567) 0 ]", + "EXPR [ (1, _1497, _1550) (-1, _2568) 0 ]", + "EXPR [ (-1, _1561) (1, _2033) (1, _2567) (1, _2568) 0 ]", "EXPR [ (1, _1557, _1561) (-1, _1562) 0 ]", "BLACKBOX::RANGE [(_1562, 32)] []", - "EXPR [ (1, _1562) (-1, _1563) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1562) (-1, _1563) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1563) (-1, _1564) 0 ]", "BLACKBOX::RANGE [(_1564, 32)] []", - "EXPR [ (1, _1564) (-1, _1565) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1564) (-1, _1565) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1565) (-1, _1566) 0 ]", "BLACKBOX::RANGE [(_1566, 32)] []", - "EXPR [ (1, _1566) (-1, _1567) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1566) (-1, _1567) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1567) (-1, _1568) 0 ]", "BLACKBOX::RANGE [(_1568, 32)] []", - "EXPR [ (-1, _1569) (1, _2624) (1, _2625) 0 ]", + "EXPR [ (-1, _1569) (1, _2567) (1, _2568) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1568))], q_c: -4864 })], outputs: [Simple(Witness(1570))]", "EXPR [ (1, _1568, _1570) (-4864, _1570) (1, _1571) -1 ]", "EXPR [ (1, _1568, _1571) (-4864, _1571) 0 ]", @@ -2247,13 +2247,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1568) (-1, _1575) 0 ]", "EXPR [ (1, _1557, _1575) (-1, _1576) 0 ]", "BLACKBOX::RANGE [(_1576, 32)] []", - "EXPR [ (1, _1576) (-1, _1577) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1576) (-1, _1577) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1577) (-1, _1578) 0 ]", "BLACKBOX::RANGE [(_1578, 32)] []", - "EXPR [ (1, _1578) (-1, _1579) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1578) (-1, _1579) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1579) (-1, _1580) 0 ]", "BLACKBOX::RANGE [(_1580, 32)] []", - "EXPR [ (1, _1580) (-1, _1581) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1580) (-1, _1581) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1581) (-1, _1582) 0 ]", "BLACKBOX::RANGE [(_1582, 32)] []", "EXPR [ (1, _1557, _1568) (1, _1559, _1569) (-1, _1583) 0 ]", @@ -2267,13 +2267,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1582) (-1, _1590) 0 ]", "EXPR [ (1, _1557, _1590) (-1, _1591) 0 ]", "BLACKBOX::RANGE [(_1591, 32)] []", - "EXPR [ (1, _1591) (-1, _1592) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1591) (-1, _1592) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1592) (-1, _1593) 0 ]", "BLACKBOX::RANGE [(_1593, 32)] []", - "EXPR [ (1, _1593) (-1, _1594) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1593) (-1, _1594) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1594) (-1, _1595) 0 ]", "BLACKBOX::RANGE [(_1595, 32)] []", - "EXPR [ (1, _1595) (-1, _1596) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1595) (-1, _1596) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1596) (-1, _1597) 0 ]", "BLACKBOX::RANGE [(_1597, 32)] []", "EXPR [ (1, _1557, _1582) (1, _1559, _1583) (-1, _1598) 0 ]", @@ -2286,13 +2286,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1597) (-1, _1604) 0 ]", "EXPR [ (1, _1557, _1604) (-1, _1605) 0 ]", "BLACKBOX::RANGE [(_1605, 32)] []", - "EXPR [ (1, _1605) (-1, _1606) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1605) (-1, _1606) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1557, _1606) (-1, _1607) 0 ]", "BLACKBOX::RANGE [(_1607, 32)] []", - "EXPR [ (1, _1607) (-1, _1608) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1607) (-1, _1608) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1557, _1608) (-1, _1609) 0 ]", "BLACKBOX::RANGE [(_1609, 32)] []", - "EXPR [ (1, _1609) (-1, _1610) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1609) (-1, _1610) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1557, _1610) (-1, _1611) 0 ]", "BLACKBOX::RANGE [(_1611, 32)] []", "EXPR [ (1, _1557, _1597) (1, _1559, _1598) (-1, _1612) 0 ]", @@ -2308,21 +2308,21 @@ expression: artifact "EXPR [ (1, _1611, _1615) (1, _1616, _1617) (-1, _1620) 0 ]", "EXPR [ (-1, _1619) (-1, _1621) 1 ]", "EXPR [ (1, _57, _1557) (1, _1559, _1574) (-1, _1622) 0 ]", - "EXPR [ (1, _1557, _1611) (-1, _2644) 0 ]", - "EXPR [ (1, _1559, _1612) (-1, _2645) 0 ]", - "EXPR [ (-1, _1623) (1, _2090) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (1, _1557, _1611) (-1, _2587) 0 ]", + "EXPR [ (1, _1559, _1612) (-1, _2588) 0 ]", + "EXPR [ (-1, _1623) (1, _2033) (1, _2587) (1, _2588) 0 ]", "EXPR [ (1, _1619, _1623) (-1, _1624) 0 ]", "BLACKBOX::RANGE [(_1624, 32)] []", - "EXPR [ (1, _1624) (-1, _1625) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1624) (-1, _1625) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1625) (-1, _1626) 0 ]", "BLACKBOX::RANGE [(_1626, 32)] []", - "EXPR [ (1, _1626) (-1, _1627) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1626) (-1, _1627) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1627) (-1, _1628) 0 ]", "BLACKBOX::RANGE [(_1628, 32)] []", - "EXPR [ (1, _1628) (-1, _1629) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1628) (-1, _1629) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1629) (-1, _1630) 0 ]", "BLACKBOX::RANGE [(_1630, 32)] []", - "EXPR [ (-1, _1631) (1, _2644) (1, _2645) 0 ]", + "EXPR [ (-1, _1631) (1, _2587) (1, _2588) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1630))], q_c: -4864 })], outputs: [Simple(Witness(1632))]", "EXPR [ (1, _1630, _1632) (-4864, _1632) (1, _1633) -1 ]", "EXPR [ (1, _1630, _1633) (-4864, _1633) 0 ]", @@ -2332,13 +2332,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1630) (-1, _1637) 0 ]", "EXPR [ (1, _1619, _1637) (-1, _1638) 0 ]", "BLACKBOX::RANGE [(_1638, 32)] []", - "EXPR [ (1, _1638) (-1, _1639) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1638) (-1, _1639) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1639) (-1, _1640) 0 ]", "BLACKBOX::RANGE [(_1640, 32)] []", - "EXPR [ (1, _1640) (-1, _1641) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1640) (-1, _1641) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1641) (-1, _1642) 0 ]", "BLACKBOX::RANGE [(_1642, 32)] []", - "EXPR [ (1, _1642) (-1, _1643) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1642) (-1, _1643) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1643) (-1, _1644) 0 ]", "BLACKBOX::RANGE [(_1644, 32)] []", "EXPR [ (1, _1619, _1630) (1, _1621, _1631) (-1, _1645) 0 ]", @@ -2352,13 +2352,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1644) (-1, _1652) 0 ]", "EXPR [ (1, _1619, _1652) (-1, _1653) 0 ]", "BLACKBOX::RANGE [(_1653, 32)] []", - "EXPR [ (1, _1653) (-1, _1654) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1653) (-1, _1654) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1654) (-1, _1655) 0 ]", "BLACKBOX::RANGE [(_1655, 32)] []", - "EXPR [ (1, _1655) (-1, _1656) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1655) (-1, _1656) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1656) (-1, _1657) 0 ]", "BLACKBOX::RANGE [(_1657, 32)] []", - "EXPR [ (1, _1657) (-1, _1658) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1657) (-1, _1658) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1658) (-1, _1659) 0 ]", "BLACKBOX::RANGE [(_1659, 32)] []", "EXPR [ (1, _1619, _1644) (1, _1621, _1645) (-1, _1660) 0 ]", @@ -2371,13 +2371,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1659) (-1, _1666) 0 ]", "EXPR [ (1, _1619, _1666) (-1, _1667) 0 ]", "BLACKBOX::RANGE [(_1667, 32)] []", - "EXPR [ (1, _1667) (-1, _1668) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1667) (-1, _1668) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1619, _1668) (-1, _1669) 0 ]", "BLACKBOX::RANGE [(_1669, 32)] []", - "EXPR [ (1, _1669) (-1, _1670) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1669) (-1, _1670) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1619, _1670) (-1, _1671) 0 ]", "BLACKBOX::RANGE [(_1671, 32)] []", - "EXPR [ (1, _1671) (-1, _1672) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1671) (-1, _1672) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1619, _1672) (-1, _1673) 0 ]", "BLACKBOX::RANGE [(_1673, 32)] []", "EXPR [ (1, _1619, _1659) (1, _1621, _1660) (-1, _1674) 0 ]", @@ -2393,21 +2393,21 @@ expression: artifact "EXPR [ (1, _1673, _1677) (1, _1678, _1679) (-1, _1682) 0 ]", "EXPR [ (-1, _1681) (-1, _1683) 1 ]", "EXPR [ (1, _57, _1619) (1, _1621, _1636) (-1, _1684) 0 ]", - "EXPR [ (1, _1619, _1673) (-1, _2664) 0 ]", - "EXPR [ (1, _1621, _1674) (-1, _2665) 0 ]", - "EXPR [ (-1, _1685) (1, _2090) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (1, _1619, _1673) (-1, _2607) 0 ]", + "EXPR [ (1, _1621, _1674) (-1, _2608) 0 ]", + "EXPR [ (-1, _1685) (1, _2033) (1, _2607) (1, _2608) 0 ]", "EXPR [ (1, _1681, _1685) (-1, _1686) 0 ]", "BLACKBOX::RANGE [(_1686, 32)] []", - "EXPR [ (1, _1686) (-1, _1687) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1686) (-1, _1687) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1687) (-1, _1688) 0 ]", "BLACKBOX::RANGE [(_1688, 32)] []", - "EXPR [ (1, _1688) (-1, _1689) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1688) (-1, _1689) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1689) (-1, _1690) 0 ]", "BLACKBOX::RANGE [(_1690, 32)] []", - "EXPR [ (1, _1690) (-1, _1691) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1690) (-1, _1691) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1691) (-1, _1692) 0 ]", "BLACKBOX::RANGE [(_1692, 32)] []", - "EXPR [ (-1, _1693) (1, _2664) (1, _2665) 0 ]", + "EXPR [ (-1, _1693) (1, _2607) (1, _2608) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1692))], q_c: -4864 })], outputs: [Simple(Witness(1694))]", "EXPR [ (1, _1692, _1694) (-4864, _1694) (1, _1695) -1 ]", "EXPR [ (1, _1692, _1695) (-4864, _1695) 0 ]", @@ -2417,13 +2417,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1692) (-1, _1699) 0 ]", "EXPR [ (1, _1681, _1699) (-1, _1700) 0 ]", "BLACKBOX::RANGE [(_1700, 32)] []", - "EXPR [ (1, _1700) (-1, _1701) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1700) (-1, _1701) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1701) (-1, _1702) 0 ]", "BLACKBOX::RANGE [(_1702, 32)] []", - "EXPR [ (1, _1702) (-1, _1703) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1702) (-1, _1703) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1703) (-1, _1704) 0 ]", "BLACKBOX::RANGE [(_1704, 32)] []", - "EXPR [ (1, _1704) (-1, _1705) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1704) (-1, _1705) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1705) (-1, _1706) 0 ]", "BLACKBOX::RANGE [(_1706, 32)] []", "EXPR [ (1, _1681, _1692) (1, _1683, _1693) (-1, _1707) 0 ]", @@ -2437,13 +2437,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1706) (-1, _1714) 0 ]", "EXPR [ (1, _1681, _1714) (-1, _1715) 0 ]", "BLACKBOX::RANGE [(_1715, 32)] []", - "EXPR [ (1, _1715) (-1, _1716) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1715) (-1, _1716) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1716) (-1, _1717) 0 ]", "BLACKBOX::RANGE [(_1717, 32)] []", - "EXPR [ (1, _1717) (-1, _1718) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1717) (-1, _1718) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1718) (-1, _1719) 0 ]", "BLACKBOX::RANGE [(_1719, 32)] []", - "EXPR [ (1, _1719) (-1, _1720) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1719) (-1, _1720) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1720) (-1, _1721) 0 ]", "BLACKBOX::RANGE [(_1721, 32)] []", "EXPR [ (1, _1681, _1706) (1, _1683, _1707) (-1, _1722) 0 ]", @@ -2456,13 +2456,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1721) (-1, _1728) 0 ]", "EXPR [ (1, _1681, _1728) (-1, _1729) 0 ]", "BLACKBOX::RANGE [(_1729, 32)] []", - "EXPR [ (1, _1729) (-1, _1730) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1729) (-1, _1730) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1681, _1730) (-1, _1731) 0 ]", "BLACKBOX::RANGE [(_1731, 32)] []", - "EXPR [ (1, _1731) (-1, _1732) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1731) (-1, _1732) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1681, _1732) (-1, _1733) 0 ]", "BLACKBOX::RANGE [(_1733, 32)] []", - "EXPR [ (1, _1733) (-1, _1734) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1733) (-1, _1734) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1681, _1734) (-1, _1735) 0 ]", "BLACKBOX::RANGE [(_1735, 32)] []", "EXPR [ (1, _1681, _1721) (1, _1683, _1722) (-1, _1736) 0 ]", @@ -2478,21 +2478,21 @@ expression: artifact "EXPR [ (1, _1735, _1739) (1, _1740, _1741) (-1, _1744) 0 ]", "EXPR [ (-1, _1743) (-1, _1745) 1 ]", "EXPR [ (1, _57, _1681) (1, _1683, _1698) (-1, _1746) 0 ]", - "EXPR [ (1, _1681, _1735) (-1, _2684) 0 ]", - "EXPR [ (1, _1683, _1736) (-1, _2685) 0 ]", - "EXPR [ (-1, _1747) (1, _2090) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (1, _1681, _1735) (-1, _2627) 0 ]", + "EXPR [ (1, _1683, _1736) (-1, _2628) 0 ]", + "EXPR [ (-1, _1747) (1, _2033) (1, _2627) (1, _2628) 0 ]", "EXPR [ (1, _1743, _1747) (-1, _1748) 0 ]", "BLACKBOX::RANGE [(_1748, 32)] []", - "EXPR [ (1, _1748) (-1, _1749) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1748) (-1, _1749) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1749) (-1, _1750) 0 ]", "BLACKBOX::RANGE [(_1750, 32)] []", - "EXPR [ (1, _1750) (-1, _1751) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1750) (-1, _1751) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1751) (-1, _1752) 0 ]", "BLACKBOX::RANGE [(_1752, 32)] []", - "EXPR [ (1, _1752) (-1, _1753) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1752) (-1, _1753) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1753) (-1, _1754) 0 ]", "BLACKBOX::RANGE [(_1754, 32)] []", - "EXPR [ (-1, _1755) (1, _2684) (1, _2685) 0 ]", + "EXPR [ (-1, _1755) (1, _2627) (1, _2628) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1754))], q_c: -4864 })], outputs: [Simple(Witness(1756))]", "EXPR [ (1, _1754, _1756) (-4864, _1756) (1, _1757) -1 ]", "EXPR [ (1, _1754, _1757) (-4864, _1757) 0 ]", @@ -2502,13 +2502,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1754) (-1, _1761) 0 ]", "EXPR [ (1, _1743, _1761) (-1, _1762) 0 ]", "BLACKBOX::RANGE [(_1762, 32)] []", - "EXPR [ (1, _1762) (-1, _1763) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1762) (-1, _1763) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1763) (-1, _1764) 0 ]", "BLACKBOX::RANGE [(_1764, 32)] []", - "EXPR [ (1, _1764) (-1, _1765) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1764) (-1, _1765) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1765) (-1, _1766) 0 ]", "BLACKBOX::RANGE [(_1766, 32)] []", - "EXPR [ (1, _1766) (-1, _1767) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1766) (-1, _1767) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1767) (-1, _1768) 0 ]", "BLACKBOX::RANGE [(_1768, 32)] []", "EXPR [ (1, _1743, _1754) (1, _1745, _1755) (-1, _1769) 0 ]", @@ -2522,13 +2522,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1768) (-1, _1776) 0 ]", "EXPR [ (1, _1743, _1776) (-1, _1777) 0 ]", "BLACKBOX::RANGE [(_1777, 32)] []", - "EXPR [ (1, _1777) (-1, _1778) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1777) (-1, _1778) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1778) (-1, _1779) 0 ]", "BLACKBOX::RANGE [(_1779, 32)] []", - "EXPR [ (1, _1779) (-1, _1780) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1779) (-1, _1780) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1780) (-1, _1781) 0 ]", "BLACKBOX::RANGE [(_1781, 32)] []", - "EXPR [ (1, _1781) (-1, _1782) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1781) (-1, _1782) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1782) (-1, _1783) 0 ]", "BLACKBOX::RANGE [(_1783, 32)] []", "EXPR [ (1, _1743, _1768) (1, _1745, _1769) (-1, _1784) 0 ]", @@ -2541,13 +2541,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1783) (-1, _1790) 0 ]", "EXPR [ (1, _1743, _1790) (-1, _1791) 0 ]", "BLACKBOX::RANGE [(_1791, 32)] []", - "EXPR [ (1, _1791) (-1, _1792) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1791) (-1, _1792) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1743, _1792) (-1, _1793) 0 ]", "BLACKBOX::RANGE [(_1793, 32)] []", - "EXPR [ (1, _1793) (-1, _1794) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1793) (-1, _1794) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1743, _1794) (-1, _1795) 0 ]", "BLACKBOX::RANGE [(_1795, 32)] []", - "EXPR [ (1, _1795) (-1, _1796) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1795) (-1, _1796) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1743, _1796) (-1, _1797) 0 ]", "BLACKBOX::RANGE [(_1797, 32)] []", "EXPR [ (1, _1743, _1783) (1, _1745, _1784) (-1, _1798) 0 ]", @@ -2563,21 +2563,21 @@ expression: artifact "EXPR [ (1, _1797, _1801) (1, _1802, _1803) (-1, _1806) 0 ]", "EXPR [ (-1, _1805) (-1, _1807) 1 ]", "EXPR [ (1, _57, _1743) (1, _1745, _1760) (-1, _1808) 0 ]", - "EXPR [ (1, _1743, _1797) (-1, _2704) 0 ]", - "EXPR [ (1, _1745, _1798) (-1, _2705) 0 ]", - "EXPR [ (-1, _1809) (1, _2090) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (1, _1743, _1797) (-1, _2647) 0 ]", + "EXPR [ (1, _1745, _1798) (-1, _2648) 0 ]", + "EXPR [ (-1, _1809) (1, _2033) (1, _2647) (1, _2648) 0 ]", "EXPR [ (1, _1805, _1809) (-1, _1810) 0 ]", "BLACKBOX::RANGE [(_1810, 32)] []", - "EXPR [ (1, _1810) (-1, _1811) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1810) (-1, _1811) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1811) (-1, _1812) 0 ]", "BLACKBOX::RANGE [(_1812, 32)] []", - "EXPR [ (1, _1812) (-1, _1813) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1812) (-1, _1813) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1813) (-1, _1814) 0 ]", "BLACKBOX::RANGE [(_1814, 32)] []", - "EXPR [ (1, _1814) (-1, _1815) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1814) (-1, _1815) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1815) (-1, _1816) 0 ]", "BLACKBOX::RANGE [(_1816, 32)] []", - "EXPR [ (-1, _1817) (1, _2704) (1, _2705) 0 ]", + "EXPR [ (-1, _1817) (1, _2647) (1, _2648) 0 ]", "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1816))], q_c: -4864 })], outputs: [Simple(Witness(1818))]", "EXPR [ (1, _1816, _1818) (-4864, _1818) (1, _1819) -1 ]", "EXPR [ (1, _1816, _1819) (-4864, _1819) 0 ]", @@ -2587,13 +2587,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1816) (-1, _1823) 0 ]", "EXPR [ (1, _1805, _1823) (-1, _1824) 0 ]", "BLACKBOX::RANGE [(_1824, 32)] []", - "EXPR [ (1, _1824) (-1, _1825) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1824) (-1, _1825) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1825) (-1, _1826) 0 ]", "BLACKBOX::RANGE [(_1826, 32)] []", - "EXPR [ (1, _1826) (-1, _1827) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1826) (-1, _1827) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1827) (-1, _1828) 0 ]", "BLACKBOX::RANGE [(_1828, 32)] []", - "EXPR [ (1, _1828) (-1, _1829) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1828) (-1, _1829) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1829) (-1, _1830) 0 ]", "BLACKBOX::RANGE [(_1830, 32)] []", "EXPR [ (1, _1805, _1816) (1, _1807, _1817) (-1, _1831) 0 ]", @@ -2607,13 +2607,13 @@ expression: artifact "EXPR [ (1, _4, _43) (1, _1830) (-1, _1838) 0 ]", "EXPR [ (1, _1805, _1838) (-1, _1839) 0 ]", "BLACKBOX::RANGE [(_1839, 32)] []", - "EXPR [ (1, _1839) (-1, _1840) (1, _2122) (1, _2151) 0 ]", + "EXPR [ (1, _1839) (-1, _1840) (1, _2065) (1, _2094) 0 ]", "EXPR [ (1, _1805, _1840) (-1, _1841) 0 ]", "BLACKBOX::RANGE [(_1841, 32)] []", - "EXPR [ (1, _1841) (-1, _1842) (1, _2152) (1, _2179) 0 ]", + "EXPR [ (1, _1841) (-1, _1842) (1, _2095) (1, _2122) 0 ]", "EXPR [ (1, _1805, _1842) (-1, _1843) 0 ]", "BLACKBOX::RANGE [(_1843, 32)] []", - "EXPR [ (1, _1843) (-1, _1844) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (1, _1843) (-1, _1844) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _1805, _1844) (-1, _1845) 0 ]", "BLACKBOX::RANGE [(_1845, 32)] []", "EXPR [ (1, _1805, _1830) (1, _1807, _1831) (-1, _1846) 0 ]", @@ -2626,9 +2626,9 @@ expression: artifact "EXPR [ (32, _1805) (-1, _1852) 0 ]", "BLACKBOX::RANGE [(_1852, 5)] []", "EXPR [ (1, _4, _43) (-1, _1853) 0 ]", - "EXPR [ (-1, _1854) (1, _2122) (1, _2151) 0 ]", - "EXPR [ (-1, _1855) (1, _2152) (1, _2179) 0 ]", - "EXPR [ (-1, _1856) (1, _2180) (1, _2205) 0 ]", + "EXPR [ (-1, _1854) (1, _2065) (1, _2094) 0 ]", + "EXPR [ (-1, _1855) (1, _2095) (1, _2122) 0 ]", + "EXPR [ (-1, _1856) (1, _2123) (1, _2148) 0 ]", "EXPR [ (1, _255, _256) (1, _257, _258) (-1, _1857) 0 ]", "EXPR [ (1, _317, _318) (1, _319, _320) (-1, _1858) 0 ]", "EXPR [ (1, _379, _380) (1, _381, _382) (-1, _1859) 0 ]", @@ -2659,301 +2659,199 @@ expression: artifact "MEM (id: 4, read at: EXPR [ (1, _1882) 0 ], value: EXPR [ (1, _1883) 0 ]) ", "EXPR [ (1, _77, _1805) (-1, _1805, _1883) (1, _1883) (-1, _1884) 0 ]", "MEM (id: 4, write EXPR [ (1, _1884) 0 ] at: EXPR [ (1, _1882) 0 ]) ", - "EXPR [ (1, _1805, _1845) (-1, _2768) 0 ]", - "EXPR [ (1, _1805, _1853) (-1, _1885) (1, _2768) 0 ]", - "BLACKBOX::RANGE [(_1885, 32)] []", - "EXPR [ (1, _1805, _1854) (1, _1805, _1885) (-1, _1886) 0 ]", - "BLACKBOX::RANGE [(_1886, 32)] []", - "EXPR [ (1, _1805, _1855) (1, _1805, _1886) (-1, _1887) 0 ]", - "BLACKBOX::RANGE [(_1887, 32)] []", - "EXPR [ (1, _1805, _1856) (1, _1805, _1887) (-1, _1888) 0 ]", - "BLACKBOX::RANGE [(_1888, 32)] []", - "EXPR [ (1, _1807, _1846) (-1, _1889) (1, _2768) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1888))], q_c: -4864 })], outputs: [Simple(Witness(1890))]", - "EXPR [ (1, _1888, _1890) (-4864, _1890) (1, _1891) -1 ]", - "EXPR [ (1, _1888, _1891) (-4864, _1891) 0 ]", - "EXPR [ (1, _1805, _1891) (-1, _1892) 0 ]", - "EXPR [ (-1, _1805, _1891) (-1, _1893) 1 ]", - "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1894) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1895))]", - "EXPR [ (-1, _0, _1895) (30, _1895) (1, _1896) -1 ]", - "EXPR [ (-1, _0, _1896) (30, _1896) 0 ]", - "EXPR [ (1, _1888, _1892) (1, _1893, _1894) (-1, _1897) 0 ]", - "EXPR [ (-1, _1896) (-1, _1898) 1 ]", - "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1899) 0 ]", - "EXPR [ (1, _1805, _1888) (-1, _2783) 0 ]", - "EXPR [ (1, _1807, _1889) (-1, _2784) 0 ]", - "EXPR [ (1, _1853) (-1, _1900) (1, _2783) (1, _2784) 0 ]", - "EXPR [ (1, _1896, _1900) (-1, _1901) 0 ]", - "BLACKBOX::RANGE [(_1901, 32)] []", - "EXPR [ (1, _1854, _1896) (-1, _2785) 0 ]", - "EXPR [ (1, _1896, _1901) (-1, _1902) (1, _2785) 0 ]", + "EXPR [ (1, _1805, _1845) (1, _1807, _1846) (-1, _1885) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 30 })], outputs: [Simple(Witness(1886))]", + "EXPR [ (-1, _0, _1886) (30, _1886) (1, _1887) -1 ]", + "EXPR [ (-1, _0, _1887) (30, _1887) 0 ]", + "EXPR [ (1, _1845, _1849) (1, _1850, _1851) (-1, _1888) 0 ]", + "EXPR [ (-1, _1887) (-1, _1889) 1 ]", + "EXPR [ (1, _57, _1805) (1, _1807, _1822) (-1, _1890) 0 ]", + "EXPR [ (1, _1807, _1885) (1, _1853) (-1, _1891) 0 ]", + "EXPR [ (1, _1887, _1891) (-1, _1892) 0 ]", + "BLACKBOX::RANGE [(_1892, 32)] []", + "EXPR [ (1, _1854, _1887) (-1, _2717) 0 ]", + "EXPR [ (1, _1887, _1892) (-1, _1893) (1, _2717) 0 ]", + "BLACKBOX::RANGE [(_1893, 32)] []", + "EXPR [ (1, _1855, _1887) (-1, _2719) 0 ]", + "EXPR [ (1, _1887, _1893) (-1, _1894) (1, _2719) 0 ]", + "BLACKBOX::RANGE [(_1894, 32)] []", + "EXPR [ (1, _1856, _1887) (-1, _2721) 0 ]", + "EXPR [ (1, _1887, _1894) (-1, _1895) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1895, 32)] []", + "EXPR [ (1, _1807, _1885) (-1, _1896) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1895))], q_c: -4864 })], outputs: [Simple(Witness(1897))]", + "EXPR [ (1, _1895, _1897) (-4864, _1897) (1, _1898) -1 ]", + "EXPR [ (1, _1895, _1898) (-4864, _1898) 0 ]", + "EXPR [ (1, _1887, _1898) (-1, _1899) 0 ]", + "EXPR [ (-1, _1887, _1898) (-1, _1900) 1 ]", + "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1901) 0 ]", + "EXPR [ (1, _1887, _1895) (-1, _2726) 0 ]", + "EXPR [ (1, _1853, _1887) (-1, _1902) (1, _2726) 0 ]", "BLACKBOX::RANGE [(_1902, 32)] []", - "EXPR [ (1, _1855, _1896) (-1, _2787) 0 ]", - "EXPR [ (1, _1896, _1902) (-1, _1903) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1902) (-1, _1903) (1, _2717) 0 ]", "BLACKBOX::RANGE [(_1903, 32)] []", - "EXPR [ (1, _1856, _1896) (-1, _2789) 0 ]", - "EXPR [ (1, _1896, _1903) (-1, _1904) (1, _2789) 0 ]", + "EXPR [ (1, _1887, _1903) (-1, _1904) (1, _2719) 0 ]", "BLACKBOX::RANGE [(_1904, 32)] []", - "EXPR [ (-1, _1905) (1, _2783) (1, _2784) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1904))], q_c: -4864 })], outputs: [Simple(Witness(1906))]", - "EXPR [ (1, _1904, _1906) (-4864, _1906) (1, _1907) -1 ]", - "EXPR [ (1, _1904, _1907) (-4864, _1907) 0 ]", - "EXPR [ (1, _1896, _1907) (-1, _1908) 0 ]", - "EXPR [ (-1, _1896, _1907) (-1, _1909) 1 ]", - "EXPR [ (1, _67, _1805) (1, _1807, _1837) (-1, _1910) 0 ]", - "EXPR [ (1, _1853, _1896) (-1, _2793) 0 ]", - "EXPR [ (1, _1896, _1904) (-1, _2794) 0 ]", - "EXPR [ (-1, _1911) (1, _2793) (1, _2794) 0 ]", - "BLACKBOX::RANGE [(_1911, 32)] []", - "EXPR [ (1, _1896, _1911) (-1, _1912) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1912, 32)] []", - "EXPR [ (1, _1896, _1912) (-1, _1913) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1913, 32)] []", - "EXPR [ (1, _1896, _1913) (-1, _1914) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1914, 32)] []", - "EXPR [ (1, _1898, _1905) (-1, _1915) (1, _2794) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1914))], q_c: -4864 })], outputs: [Simple(Witness(1916))]", - "EXPR [ (1, _1914, _1916) (-4864, _1916) (1, _1917) -1 ]", - "EXPR [ (1, _1914, _1917) (-4864, _1917) 0 ]", - "EXPR [ (1, _1896, _1917) (-1, _1918) 0 ]", - "EXPR [ (-1, _1896, _1917) (-1, _1919) 1 ]", - "EXPR [ (1, _1897, _1909) (1, _1904, _1908) (-1, _1920) 0 ]", - "EXPR [ (32, _1896) (-1, _1921) 0 ]", - "BLACKBOX::RANGE [(_1921, 5)] []", - "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1922) 0 ]", - "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1897, _57])", - "EXPR [ (32, _1896) (-1, _1923) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1923) 0 ], value: EXPR [ (1, _1924) 0 ]) ", - "EXPR [ (1, _67, _1896) (-1, _1896, _1924) (1, _1924) (-1, _1925) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1925) 0 ] at: EXPR [ (1, _1923) 0 ]) ", - "EXPR [ (1, _1896, _1914) (-1, _2805) 0 ]", - "EXPR [ (-1, _1926) (1, _2793) (1, _2805) 0 ]", - "BLACKBOX::RANGE [(_1926, 32)] []", - "EXPR [ (1, _1896, _1926) (-1, _1927) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1927, 32)] []", - "EXPR [ (1, _1896, _1927) (-1, _1928) (1, _2787) 0 ]", + "EXPR [ (1, _1887, _1904) (-1, _1905) (1, _2721) 0 ]", + "BLACKBOX::RANGE [(_1905, 32)] []", + "EXPR [ (1, _1889, _1896) (-1, _1906) (1, _2726) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1905))], q_c: -4864 })], outputs: [Simple(Witness(1907))]", + "EXPR [ (1, _1905, _1907) (-4864, _1907) (1, _1908) -1 ]", + "EXPR [ (1, _1905, _1908) (-4864, _1908) 0 ]", + "EXPR [ (1, _1887, _1908) (-1, _1909) 0 ]", + "EXPR [ (-1, _1887, _1908) (-1, _1910) 1 ]", + "EXPR [ (1, _1888, _1900) (1, _1895, _1899) (-1, _1911) 0 ]", + "EXPR [ (32, _1887) (-1, _1912) 0 ]", + "BLACKBOX::RANGE [(_1912, 5)] []", + "EXPR [ (1, _1805, _1806) (1, _1807, _1808) (-1, _1913) 0 ]", + "INIT (id: 5, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1888, _57])", + "EXPR [ (32, _1887) (-1, _1914) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1914) 0 ], value: EXPR [ (1, _1915) 0 ]) ", + "EXPR [ (1, _67, _1887) (-1, _1887, _1915) (1, _1915) (-1, _1916) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1916) 0 ] at: EXPR [ (1, _1914) 0 ]) ", + "EXPR [ (1, _1887, _1905) (1, _1889, _1906) (-1, _1917) 0 ]", + "EXPR [ (33, _1887) (-1, _1918) 0 ]", + "BLACKBOX::RANGE [(_1918, 5)] []", + "EXPR [ (33, _1887) (-1, _1919) 0 ]", + "MEM (id: 5, read at: EXPR [ (1, _1919) 0 ], value: EXPR [ (1, _1920) 0 ]) ", + "EXPR [ (1, _77, _1887) (-1, _1887, _1920) (1, _1920) (-1, _1921) 0 ]", + "MEM (id: 5, write EXPR [ (1, _1921) 0 ] at: EXPR [ (1, _1919) 0 ]) ", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1922))]", + "EXPR [ (-1, _0, _1922) (31, _1922) (1, _1923) -1 ]", + "EXPR [ (-1, _0, _1923) (31, _1923) 0 ]", + "EXPR [ (1, _1905, _1909) (1, _1910, _1911) (-1, _1924) 0 ]", + "EXPR [ (-1, _1923) (-1, _1925) 1 ]", + "EXPR [ (1, _57, _1887) (1, _1889, _1901) (-1, _1926) 0 ]", + "EXPR [ (1, _1889, _1917) (1, _1853) (-1, _1927) 0 ]", + "EXPR [ (1, _1923, _1927) (-1, _1928) 0 ]", "BLACKBOX::RANGE [(_1928, 32)] []", - "EXPR [ (1, _1896, _1928) (-1, _1929) (1, _2789) 0 ]", + "EXPR [ (1, _1854, _1923) (1, _1923, _1928) (-1, _1929) 0 ]", "BLACKBOX::RANGE [(_1929, 32)] []", - "EXPR [ (1, _1898, _1915) (-1, _1930) (1, _2805) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1929))], q_c: -4864 })], outputs: [Simple(Witness(1931))]", - "EXPR [ (1, _1929, _1931) (-4864, _1931) (1, _1932) -1 ]", - "EXPR [ (1, _1929, _1932) (-4864, _1932) 0 ]", - "EXPR [ (1, _1896, _1932) (-1, _1933) 0 ]", - "EXPR [ (-1, _1896, _1932) (-1, _1934) 1 ]", - "EXPR [ (1, _1914, _1918) (1, _1919, _1920) (-1, _1935) 0 ]", - "EXPR [ (33, _1896) (-1, _1936) 0 ]", - "BLACKBOX::RANGE [(_1936, 5)] []", - "EXPR [ (33, _1896) (-1, _1937) 0 ]", - "MEM (id: 5, read at: EXPR [ (1, _1937) 0 ], value: EXPR [ (1, _1938) 0 ]) ", - "EXPR [ (1, _77, _1896) (-1, _1896, _1938) (1, _1938) (-1, _1939) 0 ]", - "MEM (id: 5, write EXPR [ (1, _1939) 0 ] at: EXPR [ (1, _1937) 0 ]) ", - "EXPR [ (1, _1896, _1929) (-1, _2814) 0 ]", - "EXPR [ (-1, _1940) (1, _2793) (1, _2814) 0 ]", - "BLACKBOX::RANGE [(_1940, 32)] []", - "EXPR [ (1, _1896, _1940) (-1, _1941) (1, _2785) 0 ]", - "BLACKBOX::RANGE [(_1941, 32)] []", - "EXPR [ (1, _1896, _1941) (-1, _1942) (1, _2787) 0 ]", - "BLACKBOX::RANGE [(_1942, 32)] []", - "EXPR [ (1, _1896, _1942) (-1, _1943) (1, _2789) 0 ]", - "BLACKBOX::RANGE [(_1943, 32)] []", - "EXPR [ (1, _1898, _1930) (-1, _1944) (1, _2814) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1943))], q_c: -4864 })], outputs: [Simple(Witness(1945))]", - "EXPR [ (1, _1943, _1945) (-4864, _1945) (1, _1946) -1 ]", - "EXPR [ (1, _1943, _1946) (-4864, _1946) 0 ]", - "EXPR [ (1, _1896, _1946) (-1, _1947) 0 ]", - "EXPR [ (-1, _1896, _1946) (-1, _1948) 1 ]", - "EXPR [ (1, _1929, _1933) (1, _1934, _1935) (-1, _1949) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(-1, Witness(0))], q_c: 31 })], outputs: [Simple(Witness(1950))]", - "EXPR [ (-1, _0, _1950) (31, _1950) (1, _1951) -1 ]", - "EXPR [ (-1, _0, _1951) (31, _1951) 0 ]", - "EXPR [ (1, _1943, _1947) (1, _1948, _1949) (-1, _1952) 0 ]", - "EXPR [ (-1, _1951) (-1, _1953) 1 ]", - "EXPR [ (1, _57, _1896) (1, _1898, _1910) (-1, _1954) 0 ]", - "EXPR [ (1, _1896, _1943) (-1, _2825) 0 ]", - "EXPR [ (1, _1898, _1944) (-1, _2826) 0 ]", - "EXPR [ (1, _1853) (-1, _1955) (1, _2825) (1, _2826) 0 ]", - "EXPR [ (1, _1951, _1955) (-1, _1956) 0 ]", - "BLACKBOX::RANGE [(_1956, 32)] []", - "EXPR [ (1, _1854, _1951) (-1, _2827) 0 ]", - "EXPR [ (1, _1951, _1956) (-1, _1957) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1957, 32)] []", - "EXPR [ (1, _1855, _1951) (-1, _2829) 0 ]", - "EXPR [ (1, _1951, _1957) (-1, _1958) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1958, 32)] []", - "EXPR [ (1, _1856, _1951) (-1, _2831) 0 ]", - "EXPR [ (1, _1951, _1958) (-1, _1959) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1959, 32)] []", - "EXPR [ (-1, _1960) (1, _2825) (1, _2826) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1959))], q_c: -4864 })], outputs: [Simple(Witness(1961))]", - "EXPR [ (1, _1959, _1961) (-4864, _1961) (1, _1962) -1 ]", - "EXPR [ (1, _1959, _1962) (-4864, _1962) 0 ]", - "EXPR [ (1, _1951, _1962) (-1, _1963) 0 ]", - "EXPR [ (-1, _1951, _1962) (-1, _1964) 1 ]", - "EXPR [ (32, _1951) (-1, _1965) 0 ]", - "BLACKBOX::RANGE [(_1965, 5)] []", - "EXPR [ (1, _1896, _1897) (1, _1898, _1899) (-1, _1966) 0 ]", - "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1922, _1966, _1952])", - "EXPR [ (32, _1951) (-1, _1967) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1967) 0 ], value: EXPR [ (1, _1968) 0 ]) ", - "EXPR [ (1, _57, _1951) (-1, _1951, _1968) (1, _1968) (-1, _1969) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1969) 0 ] at: EXPR [ (1, _1967) 0 ]) ", - "EXPR [ (1, _1853, _1951) (-1, _2837) 0 ]", - "EXPR [ (1, _1951, _1959) (-1, _2838) 0 ]", - "EXPR [ (-1, _1970) (1, _2837) (1, _2838) 0 ]", - "BLACKBOX::RANGE [(_1970, 32)] []", - "EXPR [ (1, _1951, _1970) (-1, _1971) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1971, 32)] []", - "EXPR [ (1, _1951, _1971) (-1, _1972) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1972, 32)] []", - "EXPR [ (1, _1951, _1972) (-1, _1973) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1973, 32)] []", - "EXPR [ (1, _1953, _1960) (-1, _1974) (1, _2838) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1973))], q_c: -4864 })], outputs: [Simple(Witness(1975))]", - "EXPR [ (1, _1973, _1975) (-4864, _1975) (1, _1976) -1 ]", - "EXPR [ (1, _1973, _1976) (-4864, _1976) 0 ]", - "EXPR [ (1, _1951, _1976) (-1, _1977) 0 ]", - "EXPR [ (-1, _1951, _1976) (-1, _1978) 1 ]", - "EXPR [ (1, _1952, _1964) (1, _1959, _1963) (-1, _1979) 0 ]", - "EXPR [ (33, _1951) (-1, _1980) 0 ]", - "BLACKBOX::RANGE [(_1980, 5)] []", - "EXPR [ (33, _1951) (-1, _1981) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1981) 0 ], value: EXPR [ (1, _1982) 0 ]) ", - "EXPR [ (1, _67, _1951) (-1, _1951, _1982) (1, _1982) (-1, _1983) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1983) 0 ] at: EXPR [ (1, _1981) 0 ]) ", - "EXPR [ (1, _1951, _1973) (-1, _2847) 0 ]", - "EXPR [ (-1, _1984) (1, _2837) (1, _2847) 0 ]", - "BLACKBOX::RANGE [(_1984, 32)] []", - "EXPR [ (1, _1951, _1984) (-1, _1985) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1985, 32)] []", - "EXPR [ (1, _1951, _1985) (-1, _1986) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_1986, 32)] []", - "EXPR [ (1, _1951, _1986) (-1, _1987) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_1987, 32)] []", - "EXPR [ (1, _1953, _1974) (-1, _1988) (1, _2847) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1987))], q_c: -4864 })], outputs: [Simple(Witness(1989))]", - "EXPR [ (1, _1987, _1989) (-4864, _1989) (1, _1990) -1 ]", - "EXPR [ (1, _1987, _1990) (-4864, _1990) 0 ]", - "EXPR [ (1, _1951, _1990) (-1, _1991) 0 ]", - "EXPR [ (-1, _1951, _1990) (-1, _1992) 1 ]", - "EXPR [ (1, _1973, _1977) (1, _1978, _1979) (-1, _1993) 0 ]", - "EXPR [ (34, _1951) (-1, _1994) 0 ]", - "BLACKBOX::RANGE [(_1994, 5)] []", - "EXPR [ (34, _1951) (-1, _1995) 0 ]", - "MEM (id: 6, read at: EXPR [ (1, _1995) 0 ], value: EXPR [ (1, _1996) 0 ]) ", - "EXPR [ (1, _77, _1951) (-1, _1951, _1996) (1, _1996) (-1, _1997) 0 ]", - "MEM (id: 6, write EXPR [ (1, _1997) 0 ] at: EXPR [ (1, _1995) 0 ]) ", - "EXPR [ (1, _1951, _1987) (-1, _2856) 0 ]", - "EXPR [ (-1, _1998) (1, _2837) (1, _2856) 0 ]", - "BLACKBOX::RANGE [(_1998, 32)] []", - "EXPR [ (1, _1951, _1998) (-1, _1999) (1, _2827) 0 ]", - "BLACKBOX::RANGE [(_1999, 32)] []", - "EXPR [ (1, _1951, _1999) (-1, _2000) (1, _2829) 0 ]", - "BLACKBOX::RANGE [(_2000, 32)] []", - "EXPR [ (1, _1951, _2000) (-1, _2001) (1, _2831) 0 ]", - "BLACKBOX::RANGE [(_2001, 32)] []", - "EXPR [ (1, _1953, _1988) (-1, _2002) (1, _2856) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2001))], q_c: -4864 })], outputs: [Simple(Witness(2003))]", - "EXPR [ (1, _2001, _2003) (-4864, _2003) (1, _2004) -1 ]", - "EXPR [ (1, _2001, _2004) (-4864, _2004) 0 ]", - "EXPR [ (1, _1951, _2004) (-1, _2005) 0 ]", - "EXPR [ (-1, _1951, _2004) (-1, _2006) 1 ]", - "EXPR [ (1, _1987, _1991) (1, _1992, _1993) (-1, _2007) 0 ]", - "EXPR [ (1, _1951, _1952) (1, _1953, _1954) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1951), Witness(2001)), (1, Witness(1953), Witness(2002))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(2008))]", - "EXPR [ (1, _1951, _2001) (1, _1953, _2002) (-1, _2009) -13 ]", - "EXPR [ (1, _2008, _2009) -1 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(2010))]", - "EXPR [ (1, _0, _2010) (1, _2011) -1 ]", - "EXPR [ (1, _0, _2011) 0 ]", + "EXPR [ (1, _1855, _1923) (1, _1923, _1929) (-1, _1930) 0 ]", + "BLACKBOX::RANGE [(_1930, 32)] []", + "EXPR [ (1, _1856, _1923) (1, _1923, _1930) (-1, _1931) 0 ]", + "BLACKBOX::RANGE [(_1931, 32)] []", + "EXPR [ (1, _1889, _1917) (-1, _1932) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(1931))], q_c: -4864 })], outputs: [Simple(Witness(1933))]", + "EXPR [ (1, _1931, _1933) (-4864, _1933) (1, _1934) -1 ]", + "EXPR [ (1, _1931, _1934) (-4864, _1934) 0 ]", + "EXPR [ (1, _1923, _1934) (-1, _1935) 0 ]", + "EXPR [ (-1, _1923, _1934) (-1, _1936) 1 ]", + "EXPR [ (32, _1923) (-1, _1937) 0 ]", + "BLACKBOX::RANGE [(_1937, 5)] []", + "EXPR [ (1, _1887, _1888) (1, _1889, _1890) (-1, _1938) 0 ]", + "INIT (id: 6, len: 32, witnesses: [_1853, _1854, _1855, _1856, _1857, _1858, _1859, _1860, _1861, _1862, _1863, _1864, _1865, _1866, _1867, _1868, _1869, _1870, _1871, _1872, _1873, _1874, _1875, _1876, _1877, _1878, _1879, _1880, _1881, _1913, _1938, _1924])", + "EXPR [ (32, _1923) (-1, _1939) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1939) 0 ], value: EXPR [ (1, _1940) 0 ]) ", + "EXPR [ (1, _57, _1923) (-1, _1923, _1940) (1, _1940) (-1, _1941) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1941) 0 ] at: EXPR [ (1, _1939) 0 ]) ", + "EXPR [ (1, _1923, _1931) (1, _1925, _1932) (-1, _1942) 0 ]", + "EXPR [ (33, _1923) (-1, _1943) 0 ]", + "BLACKBOX::RANGE [(_1943, 5)] []", + "EXPR [ (33, _1923) (-1, _1944) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1944) 0 ], value: EXPR [ (1, _1945) 0 ]) ", + "EXPR [ (1, _67, _1923) (-1, _1923, _1945) (1, _1945) (-1, _1946) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1946) 0 ] at: EXPR [ (1, _1944) 0 ]) ", + "EXPR [ (34, _1923) (-1, _1947) 0 ]", + "BLACKBOX::RANGE [(_1947, 5)] []", + "EXPR [ (34, _1923) (-1, _1948) 0 ]", + "MEM (id: 6, read at: EXPR [ (1, _1948) 0 ], value: EXPR [ (1, _1949) 0 ]) ", + "EXPR [ (1, _77, _1923) (-1, _1923, _1949) (1, _1949) (-1, _1950) 0 ]", + "MEM (id: 6, write EXPR [ (1, _1950) 0 ] at: EXPR [ (1, _1948) 0 ]) ", + "EXPR [ (1, _1923, _1924) (1, _1925, _1926) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [(1, Witness(1925), Witness(1942))], linear_combinations: [], q_c: -13 })], outputs: [Simple(Witness(1951))]", + "EXPR [ (1, _1925, _1942) (-1, _1952) -13 ]", + "EXPR [ (1, _1951, _1952) -1 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1953))]", + "EXPR [ (1, _0, _1953) (1, _1954) -1 ]", + "EXPR [ (1, _0, _1954) 0 ]", "EXPR [ (1, _0) 0 ]", - "EXPR [ (-1, _2011) 1 ]", - "EXPR [ (-1, _77, _2011) (1, _77) (3, _2011) (-1, _2012) 0 ]", - "EXPR [ (1, _2011, _2012) -3 ]", - "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_2013, _2014, _2015, _2016, _2017, _2018, _2019, _2020, _2021, _2022, _2023, _2024, _2025, _2026, _2027, _2028, _2029, _2030, _2031, _2032, _2033, _2034, _2035, _2036, _2037, _2038, _2039, _2040, _2041, _2042, _2043, _2044]", - "EXPR [ (1, _2011, _2013) (-1, _10) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2011), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2045)), Simple(Witness(2046))]", - "BLACKBOX::RANGE [(_2045, 1)] []", - "BLACKBOX::RANGE [(_2046, 32)] []", - "EXPR [ (1, _67, _2011) (-4294967296, _2045) (-1, _2046) 4294967293 ]", - "EXPR [ (-1, _2045) (-1, _2047) 1 ]", - "EXPR [ (1, _67, _2011) (-1, _2048) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2047), Witness(2048))], linear_combinations: [(1, Witness(57)), (-3, Witness(2045))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2049)), Simple(Witness(2050))]", - "BLACKBOX::RANGE [(_2049, 1)] []", - "BLACKBOX::RANGE [(_2050, 32)] []", - "EXPR [ (-1, _2047, _2048) (1, _57) (-3, _2045) (-4294967296, _2049) (-1, _2050) 4294967296 ]", - "EXPR [ (1, _2047, _2048) (3, _2045) (-1, _2051) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2045), Witness(2048)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-3, Witness(2047)), (1, Witness(2051))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2052)), Simple(Witness(2053))]", - "BLACKBOX::RANGE [(_2052, 1)] []", - "BLACKBOX::RANGE [(_2053, 32)] []", - "EXPR [ (1, _57, _2049) (-1, _2869) 0 ]", - "EXPR [ (-1, _2049, _2051) (-1, _2871) 0 ]", - "EXPR [ (-1, _2045, _2048) (-3, _2047) (1, _2051) (-4294967296, _2052) (-1, _2053) (1, _2869) (1, _2871) 4294967296 ]", - "EXPR [ (-1, _2052) (-1, _2054) 1 ]", - "EXPR [ (1, _2051) (-1, _2055) (1, _2869) (1, _2871) 0 ]", - "EXPR [ (1, _2045, _2048) (3, _2047) (-1, _2056) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(2005), Witness(2001)), (1, Witness(2006), Witness(2007)), (1, Witness(2049), Witness(57)), (-1, Witness(2049), Witness(2051))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2057)), Simple(Witness(2058))]", - "BLACKBOX::RANGE [(_2057, 1)] []", - "BLACKBOX::RANGE [(_2058, 32)] []", - "EXPR [ (1, _2001, _2005) (-1, _2874) 0 ]", - "EXPR [ (1, _2006, _2007) (-1, _2875) 0 ]", - "EXPR [ (-1, _57) (-4294967296, _2057) (-1, _2058) (1, _2869) (1, _2871) (1, _2874) (1, _2875) 4294967296 ]", - "EXPR [ (-1, _2057) (-1, _2059) 1 ]", - "EXPR [ (-1, _2060) (1, _2874) (1, _2875) 0 ]", - "EXPR [ (1, _57) (-1, _2061) (-1, _2869) (-1, _2871) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2056)), (-1, Witness(2054), Witness(2055)), (1, Witness(2057), Witness(2060)), (1, Witness(2059), Witness(2061))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2062)), Simple(Witness(2063))]", - "BLACKBOX::RANGE [(_2062, 1)] []", - "BLACKBOX::RANGE [(_2063, 32)] []", - "EXPR [ (-1, _2052, _2056) (-1, _2878) 0 ]", - "EXPR [ (-1, _2054, _2055) (-1, _2879) 0 ]", - "EXPR [ (1, _2057, _2060) (-1, _2880) 0 ]", - "EXPR [ (1, _2059, _2061) (-1, _2881) 0 ]", - "EXPR [ (-4294967296, _2062) (-1, _2063) (1, _2878) (1, _2879) (1, _2880) (1, _2881) 4294967296 ]", - "EXPR [ (-1, _2062) (-1, _2064) 1 ]", - "EXPR [ (-1, _2065) (1, _2880) (1, _2881) 0 ]", - "EXPR [ (-1, _2066) (-1, _2878) (-1, _2879) 0 ]", - "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(2052), Witness(2055)), (-1, Witness(2054), Witness(2056)), (1, Witness(2062), Witness(2065)), (1, Witness(2064), Witness(2066))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2067)), Simple(Witness(2068))]", - "BLACKBOX::RANGE [(_2067, 1)] []", - "BLACKBOX::RANGE [(_2068, 32)] []", - "EXPR [ (-1, _2052, _2055) (-1, _2883) 0 ]", - "EXPR [ (-1, _2054, _2056) (-1, _2884) 0 ]", - "EXPR [ (1, _2062, _2065) (-1, _2885) 0 ]", - "EXPR [ (1, _2064, _2066) (-1, _2886) 0 ]", - "EXPR [ (-4294967296, _2067) (-1, _2068) (1, _2883) (1, _2884) (1, _2885) (1, _2886) 4294967296 ]", - "EXPR [ (-1, _2067) (-1, _2069) 1 ]", - "EXPR [ (-1, _2070) (1, _2885) (1, _2886) 0 ]", - "EXPR [ (-1, _2071) (-1, _2883) (-1, _2884) 0 ]", - "EXPR [ (1, _2057, _2061) (1, _2059, _2060) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(2011))], q_c: 0 })], outputs: [Simple(Witness(2072))]", - "EXPR [ (12, _2011, _2072) (1, _2073) -1 ]", - "EXPR [ (12, _2011, _2073) 0 ]", - "EXPR [ (-1, _2073) (-1, _2074) 1 ]", - "EXPR [ (2, _2011, _2011) (-1, _2075) 0 ]", - "EXPR [ (1, _2074, _2075) (3, _2073) -2 ]", - "EXPR [ (1, _2062, _2066) (1, _2064, _2065) (-1, _2076) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2076))], q_c: 0 })], outputs: [Simple(Witness(2077))]", - "EXPR [ (1, _2076, _2077) (1, _2078) -1 ]", - "EXPR [ (1, _2076, _2078) 0 ]", - "EXPR [ (1, _2067, _2071) (1, _2069, _2070) (-1, _2079) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2079))], q_c: 0 })], outputs: [Simple(Witness(2080))]", - "EXPR [ (1, _2079, _2080) (1, _2081) -1 ]", - "EXPR [ (1, _2079, _2081) 0 ]", - "EXPR [ (-1, _2081) (-1, _2082) 1 ]", - "EXPR [ (-2, _2073, _2078) (2, _2073) (3, _2078) (-1, _2083) 0 ]", - "EXPR [ (1, _2067, _2070) (1, _2069, _2071) (-1, _2084) 0 ]", - "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2084))], q_c: 0 })], outputs: [Simple(Witness(2085))]", - "EXPR [ (1, _2084, _2085) (1, _2086) -1 ]", - "EXPR [ (1, _2084, _2086) 0 ]", - "EXPR [ (-1, _2086) (-1, _2087) 1 ]", - "EXPR [ (1, _2082, _2083) (4, _2081) (-1, _2088) 0 ]", - "EXPR [ (1, _2087, _2088) (5, _2086) 0 ]", + "EXPR [ (-1, _1954) 1 ]", + "EXPR [ (-1, _77, _1954) (1, _77) (3, _1954) (-1, _1955) 0 ]", + "EXPR [ (1, _1954, _1955) -3 ]", + "BLACKBOX::BLAKE3 [(_5, 8), (_6, 8), (_7, 8), (_8, 8), (_9, 8)] [_1956, _1957, _1958, _1959, _1960, _1961, _1962, _1963, _1964, _1965, _1966, _1967, _1968, _1969, _1970, _1971, _1972, _1973, _1974, _1975, _1976, _1977, _1978, _1979, _1980, _1981, _1982, _1983, _1984, _1985, _1986, _1987]", + "EXPR [ (1, _1954, _1956) (-1, _10) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1954), Witness(67))], linear_combinations: [], q_c: 4294967293 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1988)), Simple(Witness(1989))]", + "BLACKBOX::RANGE [(_1988, 1)] []", + "BLACKBOX::RANGE [(_1989, 32)] []", + "EXPR [ (1, _67, _1954) (-4294967296, _1988) (-1, _1989) 4294967293 ]", + "EXPR [ (-1, _1988) (-1, _1990) 1 ]", + "EXPR [ (1, _67, _1954) (-1, _1991) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1990), Witness(1991))], linear_combinations: [(1, Witness(57)), (-3, Witness(1988))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1992)), Simple(Witness(1993))]", + "BLACKBOX::RANGE [(_1992, 1)] []", + "BLACKBOX::RANGE [(_1993, 32)] []", + "EXPR [ (-1, _1990, _1991) (1, _57) (-3, _1988) (-4294967296, _1992) (-1, _1993) 4294967296 ]", + "EXPR [ (1, _1990, _1991) (3, _1988) (-1, _1994) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1988), Witness(1991)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-3, Witness(1990)), (1, Witness(1994))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(1995)), Simple(Witness(1996))]", + "BLACKBOX::RANGE [(_1995, 1)] []", + "BLACKBOX::RANGE [(_1996, 32)] []", + "EXPR [ (1, _57, _1992) (-1, _2765) 0 ]", + "EXPR [ (-1, _1992, _1994) (-1, _2767) 0 ]", + "EXPR [ (-1, _1988, _1991) (-3, _1990) (1, _1994) (-4294967296, _1995) (-1, _1996) (1, _2765) (1, _2767) 4294967296 ]", + "EXPR [ (-1, _1995) (-1, _1997) 1 ]", + "EXPR [ (1, _1994) (-1, _1998) (1, _2765) (1, _2767) 0 ]", + "EXPR [ (1, _1988, _1991) (3, _1990) (-1, _1999) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(1, Witness(1935), Witness(1931)), (1, Witness(1936), Witness(1924)), (1, Witness(1992), Witness(57)), (-1, Witness(1992), Witness(1994))], linear_combinations: [(-1, Witness(57))], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2000)), Simple(Witness(2001))]", + "BLACKBOX::RANGE [(_2000, 1)] []", + "BLACKBOX::RANGE [(_2001, 32)] []", + "EXPR [ (1, _1924, _1936) (-1, _2770) 0 ]", + "EXPR [ (1, _1931, _1935) (-1, _2771) 0 ]", + "EXPR [ (-1, _57) (-4294967296, _2000) (-1, _2001) (1, _2765) (1, _2767) (1, _2770) (1, _2771) 4294967296 ]", + "EXPR [ (-1, _2000) (-1, _2002) 1 ]", + "EXPR [ (-1, _2003) (1, _2770) (1, _2771) 0 ]", + "EXPR [ (1, _57) (-1, _2004) (-1, _2765) (-1, _2767) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1999)), (-1, Witness(1997), Witness(1998)), (1, Witness(2000), Witness(2003)), (1, Witness(2002), Witness(2004))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2005)), Simple(Witness(2006))]", + "BLACKBOX::RANGE [(_2005, 1)] []", + "BLACKBOX::RANGE [(_2006, 32)] []", + "EXPR [ (-1, _1995, _1999) (-1, _2774) 0 ]", + "EXPR [ (-1, _1997, _1998) (-1, _2775) 0 ]", + "EXPR [ (1, _2000, _2003) (-1, _2776) 0 ]", + "EXPR [ (1, _2002, _2004) (-1, _2777) 0 ]", + "EXPR [ (-4294967296, _2005) (-1, _2006) (1, _2774) (1, _2775) (1, _2776) (1, _2777) 4294967296 ]", + "EXPR [ (-1, _2005) (-1, _2007) 1 ]", + "EXPR [ (-1, _2008) (1, _2776) (1, _2777) 0 ]", + "EXPR [ (-1, _2009) (-1, _2774) (-1, _2775) 0 ]", + "BRILLIG CALL func 1: inputs: [Single(Expression { mul_terms: [(-1, Witness(1995), Witness(1998)), (-1, Witness(1997), Witness(1999)), (1, Witness(2005), Witness(2008)), (1, Witness(2007), Witness(2009))], linear_combinations: [], q_c: 4294967296 }), Single(Expression { mul_terms: [], linear_combinations: [], q_c: 4294967296 })], outputs: [Simple(Witness(2010)), Simple(Witness(2011))]", + "BLACKBOX::RANGE [(_2010, 1)] []", + "BLACKBOX::RANGE [(_2011, 32)] []", + "EXPR [ (-1, _1995, _1998) (-1, _2779) 0 ]", + "EXPR [ (-1, _1997, _1999) (-1, _2780) 0 ]", + "EXPR [ (1, _2005, _2008) (-1, _2781) 0 ]", + "EXPR [ (1, _2007, _2009) (-1, _2782) 0 ]", + "EXPR [ (-4294967296, _2010) (-1, _2011) (1, _2779) (1, _2780) (1, _2781) (1, _2782) 4294967296 ]", + "EXPR [ (-1, _2010) (-1, _2012) 1 ]", + "EXPR [ (-1, _2013) (1, _2781) (1, _2782) 0 ]", + "EXPR [ (-1, _2014) (-1, _2779) (-1, _2780) 0 ]", + "EXPR [ (1, _2000, _2004) (1, _2002, _2003) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(12, Witness(1954))], q_c: 0 })], outputs: [Simple(Witness(2015))]", + "EXPR [ (12, _1954, _2015) (1, _2016) -1 ]", + "EXPR [ (12, _1954, _2016) 0 ]", + "EXPR [ (-1, _2016) (-1, _2017) 1 ]", + "EXPR [ (2, _1954, _1954) (-1, _2018) 0 ]", + "EXPR [ (1, _2017, _2018) (3, _2016) -2 ]", + "EXPR [ (1, _2005, _2009) (1, _2007, _2008) (-1, _2019) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2019))], q_c: 0 })], outputs: [Simple(Witness(2020))]", + "EXPR [ (1, _2019, _2020) (1, _2021) -1 ]", + "EXPR [ (1, _2019, _2021) 0 ]", + "EXPR [ (1, _2010, _2014) (1, _2012, _2013) (-1, _2022) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2022))], q_c: 0 })], outputs: [Simple(Witness(2023))]", + "EXPR [ (1, _2022, _2023) (1, _2024) -1 ]", + "EXPR [ (1, _2022, _2024) 0 ]", + "EXPR [ (-1, _2024) (-1, _2025) 1 ]", + "EXPR [ (-2, _2016, _2021) (2, _2016) (3, _2021) (-1, _2026) 0 ]", + "EXPR [ (1, _2010, _2013) (1, _2012, _2014) (-1, _2027) 0 ]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(2027))], q_c: 0 })], outputs: [Simple(Witness(2028))]", + "EXPR [ (1, _2027, _2028) (1, _2029) -1 ]", + "EXPR [ (1, _2027, _2029) 0 ]", + "EXPR [ (-1, _2029) (-1, _2030) 1 ]", + "EXPR [ (1, _2025, _2026) (4, _2024) (-1, _2031) 0 ]", + "EXPR [ (1, _2030, _2031) (5, _2029) 0 ]", "unconstrained func 0", "[Const { destination: Direct(21), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(20), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(21), offset_address: Direct(20) }, Const { destination: Direct(2), bit_size: Field, value: 0 }, BinaryFieldOp { destination: Direct(3), op: Equals, lhs: Direct(0), rhs: Direct(2) }, JumpIf { condition: Direct(3), location: 8 }, Const { destination: Direct(1), bit_size: Field, value: 1 }, BinaryFieldOp { destination: Direct(0), op: Div, lhs: Direct(1), rhs: Direct(0) }, Stop { return_data: HeapVector { pointer: Direct(20), size: Direct(21) } }]", "unconstrained func 1", "[Const { destination: Direct(10), bit_size: Integer(U32), value: 2 }, Const { destination: Direct(11), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(0), size_address: Direct(10), offset_address: Direct(11) }, BinaryFieldOp { destination: Direct(2), op: IntegerDiv, lhs: Direct(0), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Mul, lhs: Direct(2), rhs: Direct(1) }, BinaryFieldOp { destination: Direct(1), op: Sub, lhs: Direct(0), rhs: Direct(1) }, Mov { destination: Direct(0), source: Direct(2) }, Stop { return_data: HeapVector { pointer: Direct(11), size: Direct(10) } }]" ], - "debug_symbols": "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", + "debug_symbols": "pZ3bjhzHsUX/hc96qL3z7l85ODBomzYEEJJASwYODP37ma7aK0Z+kGGMnzLJYUfFdPeqqKpYmfznp798+dMvf/vj9z/89ce/f/rD//zz05++ff/16/d/++PXH//8+efvf/zh7W//+et3n/jjH3/+9uXL2199+s3P31710+dvX374+dMffvjl69fvPv3j89df7n/0958+/3CPP3/+9vbT67tPX374y9v4FvCv33/98pr9+t37q6/ff+m4ePHQ+8vHf/76JV6/20dePxavn/sDr5/def0c/SOvPy2vX9dH8l+evL595P1bh9fv63zg9dvkv5s+8Pqjkdef9ru///n912vz+el86PiT3/8sf+D1uq5NApc+FqGdivD73yG13w/hxZfQa38ohf2ewlkfiaDi+G06/8scPhhBHhWhjQ9FGK4I4/y3EWb/UITdK8L5yCnh7W2ASXn9bgT734Rok9Oq2nr/MHT+8yTewfT50MfZ6tTyNv3QW9l6sdnG+liE9t9GmO85rN/9Unr/m1PU+wnmfOT1/9Ep8t8GmMXV/FgGjZOs+vWhN3G/v4kfOz/1XR9k3x8ie7yf6Mf1sQi9yB79Q+enqTrLTulDEcZ7hI+d4eaq32Kuj/0WpyKs60Pfh+36LXb7UNFdp87T+/rQO7nfT5F7/ut38n/f/vT5z99/+5eL7U/db//0u0+9PUN/hvHpD2/vRp/PsJ5hP8N5C/fdp3E9g57hLcobTaM9Q3+G8QzzGdYz7Gc49zCvZ9AzPFHmE2U+UeZblLd3ZT65zCeX+eQyzz2s6xn0DH6G9gz9TnCNZ5jP8ERZT5T1RNnXfaD9RNlPlP1E2f0ZnvdlP7nsJ8p+ouwnynnel/O8L8fP8EQ5T5TzRDnzPt55opwnynmivF24ZFRGZ2wZe8aRcWZc9wHfrlsyPp/W28XL83MlnhJPz+cu9Ywj45OctDLujMnPiefEc+I5+Tn5Ofk5+Xll3BkTryVeS7yWeC3x2vMxvtW7jDNj4rXEa+fJsydeT7yeeD3xevLLN135qivfdeXLrp78RuKNxBvPB6vXN/4ek99IvJF4I/FG3r+ReDPxZuLN5DeT30x+M/Hy9Ve+/woACgFaz9dOSxmTXyjQSryVeCvxQoKCgsKCdvILDQoOCg8KEAoR2vk8dr5/O9+/UKGTeCfxznPa0cn37+T7dx7aFTh08v0LHgofDh8OHw4fDh8OHw4fDh++VsadMfHCh8OHw4eVeEo8Pd8/a2ZcGRMvfNjPycThw+HD4cPhw+HD4cPhw+HD4cPhw+HD4cPt+f45fDh8uCVe+HD4cPhw+HD4cPhw+HD4cPhw+HD4cPhw+HD4cOqBw4fDh0fihQ+HD4cPj8QLHw4fDh8OHw4fDh8OHw4fDh+ez/fP8zn/OXw4NcIpEg4fXs/3z2tknBmf75/Xzpj3L3w4fDh8OHw4fDh8OCXDqRlO0XD4cPhw+PBJvFQOp3Q4tcMn37+T79/J7xs+WvhoLz78Gp0/t4w948g4M66MO2PihY8WPlr4aOGj6fn+tfDRwkdT4oWPFj5a+Gjho4WPFj5a+Gjho4WPFj5a+Gjho4WPFj5a+Gjho4WPFj5a+Gjho4WP1hIvfLTw0cJHCx8tfLTw0cJHCx8tfLTw0cJHCx8tfLTw0cJHCx8tfLQXH3qNO+N5xpn3b+bzffFxj8kvfLTw0cJHCx8t9aOlfrRcQrXw0cJHCx8t9aOlfrTUj5b60VI/2np4a/vKmN83fLTw0V58vPINHy18tPDRwkcLHy18tPDRwkcLHy18tPDRTuLl6qqFj3ae/Pp1ZXzi9fDRw0e/nvx6+Ojho4ePHj56+Ojho4ePHj56+OipH12Jp8QLH11Pfl3Jz8kvfPTw0cNHDx89fPTw0cNHDx89fPTw0cNHDx8911e9JV5LvPDR23N+6S35teQXPnr46OGj131EbiT6yPjU895Xxp0x+YWPnuurPhJvJL/w0cNHDx899aOnfvTUj5760VM/eupHDx99PueDPkfGmTHxwkefz/m+h48ePnr46OGjh48ePvri1inxwkfP9VVP/eipHz189P2cD/pOfjv5hY++uRdLvJ38wkcPHz189PDRw0cPHz189PDRDzd3T34j9WOEjxE+xtVy99czjowzP18Zd8bECx8jfIzwMcLHCB8jfIzwMcLHSP0YqR8j9x8jfAw796HJz8kvfIzwMcLH8HM+HX7Op+PFxz0+59PRnLFlTH7hY4SPkfoxUj9G6scIHyN8jPAxUj9G6sdI/RipHyP1Y6R+DO62ud3mfjt8jPAxxnO+GuFjhI8RPkb4GOFjhI8RPkb4GOFjpH6M1I+R+jHCx8j11cj11cj11QgfI3yM8DFW8gsfI3yM8DHCxwgfI3yM8DHCx0j9GLm+GqkfI3yM8DFy/zF28stt+QgfI3yM8DHCxwgfI3yM8DHCxwgfM3zM8DHDx0z9mLm+mqkfM3zM3J/P3J/P3J/P8DHDxwwfM/fnM/fnM/fnM/fnM/fnM/fnM3zM8DHDx0z9mKkfM/Vjho8ZPmb4mKkfM/Vjpn7M1I+Z+jFTP2aur2aur2buz2f4mOFj5v5jho8ZPmb4mOFjho8ZPmb4mOFjho+Z+jFTP2bqxwwfM9dXM/fncyS/8DHDxwwfcyS/8DHDxwwfM3zM8DHDx+TxFM+neECV66uZ+jHDxwwfcyW/PKaaeU41F4+7Ei98zPAxw8cMHzN8zPAxw8cMHzN8zM3zs8TL9dVM/ZjhY+bB1TzJ7yS/8DHDxwwf8zzn03me8+m6rozP+XRdztgyPvmt8LHCx0r9WKkfK/VjiUd8ecYXPlbqx0r9WKkfK/VjpX6s1I+V66uV66tlZUy88LH8nK9W+FjhY4WPFT5W+FjhY4WP1XgImXipHyv1Y6V+rPCxcn21cn21evILHyt8rM5TzeQXPlb4WOFjhY8VPlb4WOFjhY+V+rFyfbVSP1b4WOFjjeQ3kt9MfuFjhY8VPlb4WOFjhY8VPlb4WDzB5REuz3B5iMtT3FxfrdSPFT7WWnmgm/xy/7HCxwofK3ys/ZxP1+4ZR8bnfLr2yrgzJr/wscLHSv1YqR8r9WOFjxU+VvhYh0fNPGu+MuZpc+rHTv3Yub7aub7a18yYZ87hY18nD60TL3zs8LHDxw4fO3zs8LHDxw4fO/Vjp35s8zQ88XJ9tXN9tZ38wscOHzt8bCe/8LHDx248Xk9+4WOHjx0+dvjYqR8711c79WOHjx0+dk9+Pfn15Bc+dvjY4WOHjx0+dvjY4WOHjz1oACS/8LHDx0792Lm+2qkfO3zs+ZxP90x+uf/Yk45C4oWPPZ/z6Z7P+XSvK+NzPt3LGVvG5Bc+9qJFkXipH5teR/jYdDtod9DvoOFBx4OWR/U8Ei/XVzvXVzt9jx0+dvjY5zlf7fCxw8cOH/vQRKGLcmVURmdMJyX146R+nNSPEz5Orq9Orq+OaMskXvg44ePoye+EjxM+Tvg44eOEjxM+Tvg44eOkfpxcX53UjxM+Tvg4Tn5Ofi35hY8TPk74OOHjhI8TPk74OOHjhI8TPk74OOHjdDpRiZf6ccLH6c/59PTkl/uPEz5O+Djh44znfHpGzzgyprk1VsadMfmFjxM+TurHSf04qR9n0itLfuHjpH6c1I+T+nFSP07qx0n9OLm+Orm+OmkEnvBxwsfJ890TPk74OOHjhI8TPk74OOHjbLp5iUdXMPXjpH6c8HFyfXVyfXVO8gsfh+5gtQfT37qqQVgdwmoRVo+wmoTVJaw2YTh5iWJM6DyqWo9Epll4Kd2uK4973yaDCZFFZBGZnuFF0/BydTWJTN/wonF40Tm8aB1e9A4vmocX3cOL9uFF//BqaYBdjZxpIV6NyI3IdBGv9px2X/ZbJv1iorzz3UwaE3Kmm3jRTrzoJ140FC86ihctxYue4jV4Nwbvxqg2L5FpLF50Fq9B5FybvfWCLyZiQmT6i9fsSX5WB5nI9BgvmowXXcZrkfMi50VkOo0XrcaLXuO1qjlN5EV7epHzJmc6jhctx4ue47XJma7jtYm8ibzJmc7jRevxovd4HSIfIh9yPkQ+RD5EPtVSr576xYSuOgxWn74a9dWpr1a9YFAwKBj8TbueyNWwF5FFZBEZBpWupJTHypLIGQarc1+t+7t3f/f+jQxgbACjAxgfwAgBMFgt/OrhVxO/uvhq5AyDgsHq5FcrX43INPOrm1/t/OrnKxd8Uq74dLf0nwmRYfDu6t/Jw2D19QWDgkHBYPX2q7lf3X3BYPX3q8FfHf5q8SvXgNIk50nOMFh9/mr0a5IzDAoGBYPV7a92f/X7q+FfHf9q+VfPv5r+1fWvtr82OW9y3uQMg4JBwWB1/6v9X/1/waBgUDAoGBQMCgZLA8ADECKAMAF0qwDjnjQmnQk2CgziA+gWAnRPcua/lYBnkjP/LQU8k8YEzQUGDYOmDqIGyOXOlDzzbs+gz5Q/UwJNGTSl0JRDUxJNriLlXEbq9gSeSYk5RG45ixoGkQWELSB0ARkGEQaEMSCUAeEMCGlAWANCGxDegJwLS7mT8yBnGDQMGgY9yBkGEQiEQSAUAuEQCIlAWARCIxAegRAJhEkgVALhEgiZQNgEQicQPoEQCoRRIMOgYdAwaBg0DBoGEQuEWSDUAuEWCLlA2AVCL5Dxb4yA403OMIhjICQDGQvHaDi3Z/BMcuY3Js6tGjyTcreQt2AQ3UD4BkI4EMaBUA6EcyCkA2EdCO1AeAdCPBDmgVAPhHsg5ANhHwj9QLd/8Eq+wSAGglAQhIMgJARhIQgNQXgIQkRQK5OtVLZy2d5ltpyRWuls5bPBYCujrZQ2nDakBGElCC1BeAlCTBBmglAThJsg5ARhJwg9QQ0GGwxiKKihuLVBzjDYYLDBYIPBBoMNBhsM4ioIWUHYCkJXEL6CEBaEsSCUBeEsqCG9tUXOi5xhEHFBmAu61QXdk5z5b3nhmeTMf+sLz6QxIWcYRGEQDoOQGITFIDQG4TEIkUGYDEJlEC6DkBmEzaBGHcRnEEKDbqPhmaA8wiBSg7AahNYgvAYhNgizQagNwm0QcoOwG4TeIPwGITgIw0EoDsJxEJKDsByE5iA8B3WTMwyiOgjXQcgOwnYQuoPwHYTwIIwHoTwI50FID+owiPYgvAf1Ts5llpZa+u6WErns0tJLyy8twRQGUSCEAyEkCGFBCA1CeBBChNBtQtyJDXLmfhAZQtgQQofQ7UPonnQmg0nO/LcT8Uw2E3KGQbwIIUYIM0KoEcKNEHKEsCOEHiH8CCFICENCKBLq1EEkCWFJqKOh4kkIUUKYEkKVEK6EkCWELSF0CeFLCGFCGBNCmRDOhJAmhDUhtAnhTQhxQpgTQp0Q7oSQJzTydF/oE8KfEAKFMCiEQiEcCiFRCItCaBTCoxAihTApNGAQl0LIFBomZxjEp9CAwQGDAwYHDA4YHDCIViG8CiFWCLNCqBXCrRByhbArdOsVd2KdnLkfxLAQioVwLHRLFronOfPfmsUzyZn/Fi2eSWNCzuV6l+xdtjd1EN9CCBfCuBDKhXAuhHQhrAuhXQjvQoM6iHkh1AsN3G/kC2FfCP1C+BdCwBAGhlAwhIMhJAxhYQgNQ3gYQsQQJoZQMYSLIWQMYWMIHUP4GELIEEaGxiFnGETKEFaG0DKElyHEDGFmCDVDuBlCzhB2htAzNGEQQUMYGpppIQhHQ0gamjA4YXDC4ITBCYMTBnE1hKwhbA2hawhfQwgbwtgQyoZuZ+NOzOTM/SDahvA2hLih29zQPelMBpOc+W9745lsJuQMgxgcQuEQDoeQOITFITQO4XEIkUOYHELlEC6HkDk0qYPoHMLn0C10PBMiwyBOh2YtuqhVF7XsotZd1MKL95UX5FxrL2rxBXUQvUP4HULwEIaHUDyE4yEkD2F5CM1Dc5EzDGJ6CNVDuB5C9hC2h9A9hO8hhA9hfAjlQzgfmjCI9SG0D81DzjCI+aEJgxMGFwwuGFwwuGAQAUQYIEIBEQ6IkECEBSI0EOGB6BZBxj1pTDoTIsMgNohuHUT3JGf+Wwh5Jjnz30rIM2lMyBkG0UKEFyLEEGGGCDVEuCFCDhF2iNBDhB8iBBFhiGhRB3FEhCSi2xJ5JkSGQUQRYYoIVUS4IkIWEbaI0EWELyKEEWGMCGVEOCNCGhHWiNBGhDcixBFhjgh1RLgjWvQmsEeEPiL8ESGQaNUKKBjEIRESiVatgqplULUO6n0hFJHpTeCSaNGbwCYROokWDC4YXDC4YHDB4IJBrBKhlQivRIglwiwRaolwS4RcopXVH1r0Jhb3gwgmwjARiolux0T3pDMZTHLmvz2TZ7KZJGdUE+GaCNlE2CZCNxG+iRBOhHEilBPhnAjpRFgnQjvRpg4ingjzRLd68kyIDIPYJ0I/Ef6JEFCEgSIUFOGgCAlFWChCQxEeihBRhIkiVBThoggZRdgoQkcRPooQUrTpTaCkCCdFSCnCShFaivBShJgizBShpgg3Rcgpwk7RhkH8FCGoaNObQFERjoo2DG4Y3DC4YXDD4IZBVBXhqghZRdgqQlfRrvWItSCxViTunPk3vYnN/eCuVYkwiLeiW1y5v+o7Z/5bXXkmOfPf8sozaUzIGQYRWITBIhQW4bAIiUVYLEJjER6LEFmEySJUFuGy6FAHsVmEzqLbZ3kmRIZBlBbhtAipRVgtQmsRXosQW4TZItQW4bYIuUXYLUJvEX6LEFyE4SIUF+G4CMlFWC469CbwXIToIkwXoboI10XILsJ2EbqL8F2E8CKMF6G86MAg0ouwXnToTeC9CPFFBwYPDB4YPDB4YPDAIP6LEGCEASMUGOHACAlGWDBCg9HtwdyJ0Zs43A+iwggXRsgwum2Ye5VtljvqZL2jbiHmWXC7mGwm5AyDWDFCixFejBBjhBkj1Bjhxgg5RqdWB9fy4FofTB081EEUGeHI6GQRpLBkdN6XCT9nUV+1ULhWCtdS4VorXIuFa7VwLReu9cK1YJgVw3gyxpMxnozxZIwnYzwZ48kYT8Z4Mr5EziYyq4fxZIwnYzwZ48kYT8Z4MsaTMZ6M8WSMJ+OLhcR4MsaT8cVaYjwZ48n4Yjnx1YjMguKLFcUXS4ov1hTjyRhPxngyxpMxnozxZIwnYzwZXywuvlhdfA1yZn0xnozxZHxlCaWvrKH07ck8E+WdzzJK357MMyFnVhrjyRhPxngyxpMxnozxZIwnYzwZ48kYT8Z4MsaT8bWInGtR48n4yspK48kYT8Z4MsaTMZ6M8WSMJ2M8GePJGE/GeDLGkzGejPFkjCdjPBnjyRhPxngyxpMxnozxZKz0JownYzwZ48kYT8aqVfvvy/aJXAv3a+V+Ld0XkWFQMIgnYzwZy+QMg3gyZo8Ls8mF2eXCbHNh9rkwG10YT8Z4MsaTMZ6M8WSMJ2M8GePJWFmRaTVybuQMg3gyxpOxsi7TysJMKyszrSzNtLI208riTLP7hfFkjCdjPBnjyRhPxngyxpMxnozxZIwnYzwZ48kYT8bshWE8GePJWFmuaTwZ48kYT8Z4MsaTMZ6M8WSMJ2M8GePJGE/GeDLGkzGejPFkjCdjPBnjyRhPxngyxpMxnoy1yRkG8WSMJ2M8GePJGE/GeDLGkzGejGu/jNowo3bMqC0z8GSMJ2OnN+HaNqP2zaiNM2rnjNo6o/bOqM0zaveM2j4DT8Z4MsaTcW2h8b6HBnXwN7to5Mxvk7PJuXbSqK00ai+NLPa0s9rTznJPO+s97Sz4tLPi04ZBPBnXphq1q0Ztq4En49pYo3bWqK01am+N2lyjdteo7TVqf43aYANPxngyrj028GSMJ2M8Gdc+G7XRRu20UVtt1F4btdlG7bZR223Ufhu14UbtuFFbbtSeG7XpRu26Udtu1L4btfFG7bzhRc4wiCdjPBnjyRhPxrUBR+3AUVtw1B4ctQlH7cJR23DUPhx4MsaTsQ85w2BtxlG7cdR2HLUfh2HQMGgYxJMxnozxZIwnYzwZ48kYT8Z4Mm5ZO+qW3oRb7geNJ2M8GePJuGUFqVuWkLplDalbFpG6ZRWpW5aRmn06jCdjPBnjyRhPxngyxpMxnozxZIwn41Y72tSWNrWnzfumNkSubW1qX5ssLHWrnW1qaxv2tsGTMZ6M8WSMJ2M8GePJGE/GeDLGkzGejPFkjCdjPBnjyRhPxngyxpMxnozxZNwGOcMgnozxZIwnYzwZ48kYT8Z4MsaTMZ6M8WSMJ2M29zCejPFk3BY5wyCejNniww0GGww2GGSbD7PPh/FkjCdjPBnjyRhPxngyxpMxnoxbFqS6HXI+5AyDeDLGk3HLslS3rEt1z8JU96xMdc/SVPesTXWHQTwZ48kYT8Z4MsaTMZ6M8WSMJ2M8GePJGE/GeDLGk3GnDuLJGE/GPatVjSdjPBnjyRhPxngyxpMxnozxZIwnYzwZ48kYT8Z4MsaTMZ6M8WSMJ2M8GePJuNcOU7XF1PseU+Rcu0zVNlO1z1RtNAWDeDLGkzGejPFkjCdjPBnjyZgdQ4wnYzwZ90nOMIgnY/YNcYfBDoMdBtk7xGweYjwZ48kYT8Z4MsaTMZ6M8WSMJ+OeVa7ui5y5H8STMZ6M8WTcs9bVPYtd3bPa1T3LXd2z3tU9C17dYRBPxngyxpMxnozxZIwnYzwZ48kYT8Z4MsaTMZ6M8WQ8qIN4MsaT8cgSWOPJGE/GeDLGkzGejPFkjCdjPBnjyRhPxngyxpMxnozxZIwnYzwZ48kYT8Z4MsaTMZ6M8WQ8TM4wiCdjPBnjyRhPxngyxpMxnozxZIwnYzwZ48mYbUiMJ2M8GY9OzjCIJ2M2I/Ho5Pxi8Jm8RW73xEwak85kMJlMFpPN5GTyYvCZEHkSeRJ5EnkSeRJ5EnkSeRJ5EXkReRF5EXkReRF5EXkReRF5EXkTeRN5E3kTeROZOnh7Mroni8lmwvt8eJ/TmzCejPFkzNYlxpMxnozxZIwnYzwZ48kYT8Z4MsaTMZ6MJwxOGGQfE08YnNTB25PxPSEyDOLJGE/GeDLGkzGejPFkjCdjPBlP6uDkfnDCIJ6M8WSMJ+OZtUueWbvk25N5fSi3J/NMxMRMGpPOhMjxZIwn49uTef4NkTuRO5Gz464nz2Qmz2RuT+aOwzOZyTMZPBnjyRhPxngyxpMxnowndXBSB9n4xHgyntTBSR2c1MFZuy/W9os8F53p0XvC4ITBCYMTBicMThjEk/HMQnbPRWQYnDA4YXDC4GQ7RjwZTxicMDhhcMLg7cmse/IWed+TyWQxeTF4fxh3g/Ce3R3CZ6bXVt337PUp3m/SC8R5T15vyfPPXp/jfch7+cR9zHv9xLlnu2Yns1uZyeyV/7315AvIzFr9tNds1GzWbNUrdv1dHUN1jHtF0zNzzeoYLzifKC86M5s1W/Xv6hiqY7iO4TqG6xgvSp8ormO4juH6PVzHcB3DdYxWx2h1jFbHaPV7tDpGq2O0+j1aHaPVMVodo9cxeh2j1zF6HaPX59HrGL2O0evzeOHb2j17sfD6qt2STWaq2eszv+PddfSZvSC+7tmLYt+zWbNVs12zw+y+rXxmqplr9jpPPNud9prVMWYdY9YxZh3jvrZ9tki9avY6xuv/dvjH52/ff/7T1y9/f/4/n7/+8sOff/Pf+/z8fz/xE/4DoJ++/fjnL3/55duX1+7k989+/d9f/x8=", "file_map": { "19": { "source": "// Exposed only for usage in `std::meta`\npub(crate) mod poseidon2;\n\nuse crate::default::Default;\nuse crate::embedded_curve_ops::{\n EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul, multi_scalar_mul_array_return,\n};\nuse crate::meta::derive_via;\n\n#[foreign(sha256_compression)]\n// docs:start:sha256_compression\npub fn sha256_compression(input: [u32; 16], state: [u32; 8]) -> [u32; 8] {}\n// docs:end:sha256_compression\n\n#[foreign(keccakf1600)]\n// docs:start:keccakf1600\npub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {}\n// docs:end:keccakf1600\n\npub mod keccak {\n #[deprecated(\"This function has been moved to std::hash::keccakf1600\")]\n pub fn keccakf1600(input: [u64; 25]) -> [u64; 25] {\n super::keccakf1600(input)\n }\n}\n\n#[foreign(blake2s)]\n// docs:start:blake2s\npub fn blake2s(input: [u8; N]) -> [u8; 32]\n// docs:end:blake2s\n{}\n\n// docs:start:blake3\npub fn blake3(input: [u8; N]) -> [u8; 32]\n// docs:end:blake3\n{\n if crate::runtime::is_unconstrained() {\n // Temporary measure while Barretenberg is main proving system.\n // Please open an issue if you're working on another proving system and running into problems due to this.\n crate::static_assert(\n N <= 1024,\n \"Barretenberg cannot prove blake3 hashes with inputs larger than 1024 bytes\",\n );\n }\n __blake3(input)\n}\n\n#[foreign(blake3)]\nfn __blake3(input: [u8; N]) -> [u8; 32] {}\n\n// docs:start:pedersen_commitment\npub fn pedersen_commitment(input: [Field; N]) -> EmbeddedCurvePoint {\n // docs:end:pedersen_commitment\n pedersen_commitment_with_separator(input, 0)\n}\n\n#[inline_always]\npub fn pedersen_commitment_with_separator(\n input: [Field; N],\n separator: u32,\n) -> EmbeddedCurvePoint {\n let mut points = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N];\n for i in 0..N {\n // we use the unsafe version because the multi_scalar_mul will constrain the scalars.\n points[i] = from_field_unsafe(input[i]);\n }\n let generators = derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n multi_scalar_mul(generators, points)\n}\n\n// docs:start:pedersen_hash\npub fn pedersen_hash(input: [Field; N]) -> Field\n// docs:end:pedersen_hash\n{\n pedersen_hash_with_separator(input, 0)\n}\n\n#[no_predicates]\npub fn pedersen_hash_with_separator(input: [Field; N], separator: u32) -> Field {\n let mut scalars: [EmbeddedCurveScalar; N + 1] = [EmbeddedCurveScalar { lo: 0, hi: 0 }; N + 1];\n let mut generators: [EmbeddedCurvePoint; N + 1] =\n [EmbeddedCurvePoint::point_at_infinity(); N + 1];\n let domain_generators: [EmbeddedCurvePoint; N] =\n derive_generators(\"DEFAULT_DOMAIN_SEPARATOR\".as_bytes(), separator);\n\n for i in 0..N {\n scalars[i] = from_field_unsafe(input[i]);\n generators[i] = domain_generators[i];\n }\n scalars[N] = EmbeddedCurveScalar { lo: N as Field, hi: 0 as Field };\n\n let length_generator: [EmbeddedCurvePoint; 1] =\n derive_generators(\"pedersen_hash_length\".as_bytes(), 0);\n generators[N] = length_generator[0];\n multi_scalar_mul_array_return(generators, scalars)[0].x\n}\n\n#[field(bn254)]\n#[inline_always]\npub fn derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {\n crate::assert_constant(domain_separator_bytes);\n // TODO(https://github.com/noir-lang/noir/issues/5672): Add back assert_constant on starting_index\n __derive_generators(domain_separator_bytes, starting_index)\n}\n\n#[builtin(derive_pedersen_generators)]\n#[field(bn254)]\nfn __derive_generators(\n domain_separator_bytes: [u8; M],\n starting_index: u32,\n) -> [EmbeddedCurvePoint; N] {}\n\n#[field(bn254)]\n// Same as from_field but:\n// does not assert the limbs are 128 bits\n// does not assert the decomposition does not overflow the EmbeddedCurveScalar\nfn from_field_unsafe(scalar: Field) -> EmbeddedCurveScalar {\n // Safety: xlo and xhi decomposition is checked below\n let (xlo, xhi) = unsafe { crate::field::bn254::decompose_hint(scalar) };\n // Check that the decomposition is correct\n assert_eq(scalar, xlo + crate::field::bn254::TWO_POW_128 * xhi);\n EmbeddedCurveScalar { lo: xlo, hi: xhi }\n}\n\n#[foreign(poseidon2_permutation)]\npub fn poseidon2_permutation(_input: [Field; N], _state_length: u32) -> [Field; N] {}\n\n// Generic hashing support.\n// Partially ported and impacted by rust.\n\n// Hash trait shall be implemented per type.\n#[derive_via(derive_hash)]\npub trait Hash {\n fn hash(self, state: &mut H)\n where\n H: Hasher;\n}\n\n// docs:start:derive_hash\ncomptime fn derive_hash(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::hash::Hash };\n let signature = quote { fn hash(_self: Self, _state: &mut H) where H: $crate::hash::Hasher };\n let for_each_field = |name| quote { _self.$name.hash(_state); };\n crate::meta::make_trait_impl(\n s,\n name,\n signature,\n for_each_field,\n quote {},\n |fields| fields,\n )\n}\n// docs:end:derive_hash\n\n// Hasher trait shall be implemented by algorithms to provide hash-agnostic means.\n// TODO: consider making the types generic here ([u8], [Field], etc.)\npub trait Hasher {\n fn finish(self) -> Field;\n\n fn write(&mut self, input: Field);\n}\n\n// BuildHasher is a factory trait, responsible for production of specific Hasher.\npub trait BuildHasher {\n type H: Hasher;\n\n fn build_hasher(self) -> H;\n}\n\npub struct BuildHasherDefault;\n\nimpl BuildHasher for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n type H = H;\n\n fn build_hasher(_self: Self) -> H {\n H::default()\n }\n}\n\nimpl Default for BuildHasherDefault\nwhere\n H: Hasher + Default,\n{\n fn default() -> Self {\n BuildHasherDefault {}\n }\n}\n\nimpl Hash for Field {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self);\n }\n}\n\nimpl Hash for u1 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for u128 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for i8 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u8 as Field);\n }\n}\n\nimpl Hash for i16 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u16 as Field);\n }\n}\n\nimpl Hash for i32 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u32 as Field);\n }\n}\n\nimpl Hash for i64 {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as u64 as Field);\n }\n}\n\nimpl Hash for bool {\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n H::write(state, self as Field);\n }\n}\n\nimpl Hash for () {\n fn hash(_self: Self, _state: &mut H)\n where\n H: Hasher,\n {}\n}\n\nimpl Hash for [T; N]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for [T]\nwhere\n T: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.len().hash(state);\n for elem in self {\n elem.hash(state);\n }\n }\n}\n\nimpl Hash for (A, B)\nwhere\n A: Hash,\n B: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n }\n}\n\nimpl Hash for (A, B, C)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n }\n}\n\nimpl Hash for (A, B, C, D, E)\nwhere\n A: Hash,\n B: Hash,\n C: Hash,\n D: Hash,\n E: Hash,\n{\n fn hash(self, state: &mut H)\n where\n H: Hasher,\n {\n self.0.hash(state);\n self.1.hash(state);\n self.2.hash(state);\n self.3.hash(state);\n self.4.hash(state);\n }\n}\n\n// Some test vectors for Pedersen hash and Pedersen Commitment.\n// They have been generated using the same functions so the tests are for now useless\n// but they will be useful when we switch to Noir implementation.\n#[test]\nfn assert_pedersen() {\n assert_eq(\n pedersen_hash_with_separator([1], 1),\n 0x1b3f4b1a83092a13d8d1a59f7acb62aba15e7002f4440f2275edb99ebbc2305f,\n );\n assert_eq(\n pedersen_commitment_with_separator([1], 1),\n EmbeddedCurvePoint {\n x: 0x054aa86a73cb8a34525e5bbed6e43ba1198e860f5f3950268f71df4591bde402,\n y: 0x209dcfbf2cfb57f9f6046f44d71ac6faf87254afc7407c04eb621a6287cac126,\n is_infinite: false,\n },\n );\n\n assert_eq(\n pedersen_hash_with_separator([1, 2], 2),\n 0x26691c129448e9ace0c66d11f0a16d9014a9e8498ee78f4d69f0083168188255,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2], 2),\n EmbeddedCurvePoint {\n x: 0x2e2b3b191e49541fe468ec6877721d445dcaffe41728df0a0eafeb15e87b0753,\n y: 0x2ff4482400ad3a6228be17a2af33e2bcdf41be04795f9782bd96efe7e24f8778,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3], 3),\n 0x0bc694b7a1f8d10d2d8987d07433f26bd616a2d351bc79a3c540d85b6206dbe4,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3], 3),\n EmbeddedCurvePoint {\n x: 0x1fee4e8cf8d2f527caa2684236b07c4b1bad7342c01b0f75e9a877a71827dc85,\n y: 0x2f9fedb9a090697ab69bf04c8bc15f7385b3e4b68c849c1536e5ae15ff138fd1,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4], 4),\n 0xdae10fb32a8408521803905981a2b300d6a35e40e798743e9322b223a5eddc,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4], 4),\n EmbeddedCurvePoint {\n x: 0x07ae3e202811e1fca39c2d81eabe6f79183978e6f12be0d3b8eda095b79bdbc9,\n y: 0x0afc6f892593db6fbba60f2da558517e279e0ae04f95758587760ba193145014,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5], 5),\n 0xfc375b062c4f4f0150f7100dfb8d9b72a6d28582dd9512390b0497cdad9c22,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5], 5),\n EmbeddedCurvePoint {\n x: 0x1754b12bd475a6984a1094b5109eeca9838f4f81ac89c5f0a41dbce53189bb29,\n y: 0x2da030e3cfcdc7ddad80eaf2599df6692cae0717d4e9f7bfbee8d073d5d278f7,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6], 6),\n 0x1696ed13dc2730062a98ac9d8f9de0661bb98829c7582f699d0273b18c86a572,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6], 6),\n EmbeddedCurvePoint {\n x: 0x190f6c0e97ad83e1e28da22a98aae156da083c5a4100e929b77e750d3106a697,\n y: 0x1f4b60f34ef91221a0b49756fa0705da93311a61af73d37a0c458877706616fb,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n 0x128c0ff144fc66b6cb60eeac8a38e23da52992fc427b92397a7dffd71c45ede3,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7], 7),\n EmbeddedCurvePoint {\n x: 0x015441e9d29491b06563fac16fc76abf7a9534c715421d0de85d20dbe2965939,\n y: 0x1d2575b0276f4e9087e6e07c2cb75aa1baafad127af4be5918ef8a2ef2fea8fc,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n 0x2f960e117482044dfc99d12fece2ef6862fba9242be4846c7c9a3e854325a55c,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8], 8),\n EmbeddedCurvePoint {\n x: 0x1657737676968887fceb6dd516382ea13b3a2c557f509811cd86d5d1199bc443,\n y: 0x1f39f0cb569040105fa1e2f156521e8b8e08261e635a2b210bdc94e8d6d65f77,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n 0x0c96db0790602dcb166cc4699e2d306c479a76926b81c2cb2aaa92d249ec7be7,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9], 9),\n EmbeddedCurvePoint {\n x: 0x0a3ceae42d14914a432aa60ec7fded4af7dad7dd4acdbf2908452675ec67e06d,\n y: 0xfc19761eaaf621ad4aec9a8b2e84a4eceffdba78f60f8b9391b0bd9345a2f2,\n is_infinite: false,\n },\n );\n assert_eq(\n pedersen_hash_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n 0x2cd37505871bc460a62ea1e63c7fe51149df5d0801302cf1cbc48beb8dff7e94,\n );\n assert_eq(\n pedersen_commitment_with_separator([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 10),\n EmbeddedCurvePoint {\n x: 0x2fb3f8b3d41ddde007c8c3c62550f9a9380ee546fcc639ffbb3fd30c8d8de30c,\n y: 0x300783be23c446b11a4c0fabf6c91af148937cea15fcf5fb054abf7f752ee245,\n is_infinite: false,\n },\n );\n}\n", diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__expanded.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__expanded.snap new file mode 100644 index 00000000000..6af29b867d3 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__expanded.snap @@ -0,0 +1,12 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: expanded_code +--- +unconstrained fn main() -> pub bool { + func_2([(true, "", "")]) != func_2([(true, "", "")]) +} + +unconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) { + println(b); + (b[0_u32].1, b[0_u32].2) +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap new file mode 100644 index 00000000000..2ee3eeff1b8 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32837), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Const { destination: Direct(32835), bit_size: Integer(U1), value: 0 }, Const { destination: Direct(32836), bit_size: Integer(U1), value: 1 }, Return, Call { location: 112 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 26 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(2), source: Direct(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(4) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Mov { destination: Relative(5), source: Relative(4) }, Store { destination_pointer: Relative(5), source: Direct(32836) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 6 }, Mov { destination: Relative(6), source: Direct(0) }, Mov { destination: Relative(7), source: Relative(2) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(5) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(1), source: Relative(7) }, Mov { destination: Relative(4), source: Relative(8) }, Mov { destination: Relative(2), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 57 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Mov { destination: Relative(5), source: Direct(1) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(7) }, IndirectConst { destination_pointer: Relative(5), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Mov { destination: Relative(8), source: Relative(7) }, Store { destination_pointer: Relative(8), source: Direct(32836) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 9 }, Mov { destination: Relative(9), source: Direct(0) }, Mov { destination: Relative(10), source: Relative(5) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(8) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(2), source: Relative(10) }, Mov { destination: Relative(7), source: Relative(11) }, Load { destination: Relative(5), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(5) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 84 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(5) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(5) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 92 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(5), rhs: Relative(2) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 100 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 108 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Mov { destination: Relative(1), source: Direct(32835) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 117 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, Call { location: 112 }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 128 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(29), source: Direct(1) }, Const { destination: Relative(30), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(30) }, IndirectConst { destination_pointer: Relative(29), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(30), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, Mov { destination: Relative(31), source: Relative(30) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(19) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(21) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(23) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(24) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(28) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Direct(32836)), HeapArray(HeapArray { pointer: Relative(2), size: 3 }), HeapArray(HeapArray { pointer: Relative(4), size: 138 }), MemoryAddress(Direct(32835))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Const { destination: Relative(2), bit_size: Integer(U32), value: 2 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(4), source_pointer: Relative(5) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 3 }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(5), source_pointer: Relative(6) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(6), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(6), source: Relative(6), bit_size: U1 }, JumpIf { condition: Relative(6), location: 452 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(1) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 460 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(8), op: Equals, bit_size: U32, lhs: Relative(7), rhs: Relative(1) }, Not { destination: Relative(8), source: Relative(8), bit_size: U1 }, JumpIf { condition: Relative(8), location: 468 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(1) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 476 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Mov { destination: Relative(1), source: Relative(4) }, Mov { destination: Relative(2), source: Relative(5) }, Return]" + ], + "debug_symbols": "tdjLThtbEEbhd/GYQe/6a994lQghAyayZBnkwJGOEO9+dnf1gjCwhRKdSaocZy/Ll09x+23zsLt7/Xm7Pz4+/dpc/3jb3J32h8P+5+3h6X77sn86jr9920zzH+qb63S18SlGimExFMNj5BglRo3RYkQlRyVHJUclRyVHJUclRyVHJUclR6VEpUSlRKVEpUSlRKVEpUSlRKVEpY6KjZFiWAzF8Bg5RolRY4yKj9GX0aYYKYbFUAyPkWOUGDVGVFpUelR6VHpUelT6qNQxcowSo8ZoMfoy0jStM61zfmmmeRGLs2SWwlJZGktfFxsdzVPr9HXmdZZ11nW2dfaYmt+wZUksxiIWZ8kshaWyNJa+Lk7ZKTtlp+yUnbJTdspO2SlnyplyppwpZ8qZcqacKWfKmXKhXCgXyoVyoVwoF8qFcqFcKFfKlXKlXClXypVypVwpV8qVcqPcKDfKjXKj3Cg3yo1yo9wod8qdcqfcKXfKnXKn3Cl3yn0t2zSxJBZjEYuzZJbCUlkaC+VEOVFOlBPlRDlRTpQT5UQ5UTbKRtkoG2WjbJSNslE2ykYZg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegLwZ9XhpLX5fFYJ6XxGIsYnGWzFJYKktj6euSKWfKmXKmnClnyplyppwpZ8qFcqG8GCzzIhZnySyFpbI0lr4ui8FlSSyUK+VKuVKulBeD5f39asMl6e3Labebr0h/u0YdV67P29Pu+LK5Pr4eDlebf7aH1+Uf/XreHpf5sj2Ne8dVzO74MOYIPu4Pu3l7v/o8PZ0/6raeLeXjcP726cojd/+D0x+Pff60Ljy21/V4bZ9P3Oy758d3orQGxreiz0L+EsgXAt54AuO7XD0TKOcD41u9r4Hxvd7PBC4+hY+XcHyNS2cC7W+fQv/bp3DhMzAuwjjf+rlPQUrnA63zLnbTuY9Bsv8x8K0P4qWXoBfeg2n6A0bjMu/jfPty/mbc2t7vT19++HqfS6f99u6wW28+vh7vf7v35d9n7uGHs+fT0/3u4fW0m0ufv57N/0P+SOO1SanejIvTtNxsV8mmm/f54f8D", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_0.snap new file mode 100644 index 00000000000..2ee3eeff1b8 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_0.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32837), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Const { destination: Direct(32835), bit_size: Integer(U1), value: 0 }, Const { destination: Direct(32836), bit_size: Integer(U1), value: 1 }, Return, Call { location: 112 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 26 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(2), source: Direct(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(4) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Mov { destination: Relative(5), source: Relative(4) }, Store { destination_pointer: Relative(5), source: Direct(32836) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 6 }, Mov { destination: Relative(6), source: Direct(0) }, Mov { destination: Relative(7), source: Relative(2) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(5) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(1), source: Relative(7) }, Mov { destination: Relative(4), source: Relative(8) }, Mov { destination: Relative(2), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 57 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Mov { destination: Relative(5), source: Direct(1) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(7) }, IndirectConst { destination_pointer: Relative(5), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Mov { destination: Relative(8), source: Relative(7) }, Store { destination_pointer: Relative(8), source: Direct(32836) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 9 }, Mov { destination: Relative(9), source: Direct(0) }, Mov { destination: Relative(10), source: Relative(5) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(8) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(2), source: Relative(10) }, Mov { destination: Relative(7), source: Relative(11) }, Load { destination: Relative(5), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(5) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 84 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(5) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(5) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 92 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(5), rhs: Relative(2) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 100 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 108 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Mov { destination: Relative(1), source: Direct(32835) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 117 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, Call { location: 112 }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 128 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(29), source: Direct(1) }, Const { destination: Relative(30), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(30) }, IndirectConst { destination_pointer: Relative(29), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(30), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, Mov { destination: Relative(31), source: Relative(30) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(19) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(21) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(23) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(24) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(28) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Direct(32836)), HeapArray(HeapArray { pointer: Relative(2), size: 3 }), HeapArray(HeapArray { pointer: Relative(4), size: 138 }), MemoryAddress(Direct(32835))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Const { destination: Relative(2), bit_size: Integer(U32), value: 2 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(4), source_pointer: Relative(5) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 3 }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(5), source_pointer: Relative(6) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(6), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(6), source: Relative(6), bit_size: U1 }, JumpIf { condition: Relative(6), location: 452 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(1) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 460 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(8), op: Equals, bit_size: U32, lhs: Relative(7), rhs: Relative(1) }, Not { destination: Relative(8), source: Relative(8), bit_size: U1 }, JumpIf { condition: Relative(8), location: 468 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(1) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 476 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Mov { destination: Relative(1), source: Relative(4) }, Mov { destination: Relative(2), source: Relative(5) }, Return]" + ], + "debug_symbols": "tdjLThtbEEbhd/GYQe/6a994lQghAyayZBnkwJGOEO9+dnf1gjCwhRKdSaocZy/Ll09x+23zsLt7/Xm7Pz4+/dpc/3jb3J32h8P+5+3h6X77sn86jr9920zzH+qb63S18SlGimExFMNj5BglRo3RYkQlRyVHJUclRyVHJUclRyVHJUclR6VEpUSlRKVEpUSlRKVEpUSlRKVEpY6KjZFiWAzF8Bg5RolRY4yKj9GX0aYYKYbFUAyPkWOUGDVGVFpUelR6VHpUelT6qNQxcowSo8ZoMfoy0jStM61zfmmmeRGLs2SWwlJZGktfFxsdzVPr9HXmdZZ11nW2dfaYmt+wZUksxiIWZ8kshaWyNJa+Lk7ZKTtlp+yUnbJTdspO2SlnyplyppwpZ8qZcqacKWfKmXKhXCgXyoVyoVwoF8qFcqFcKFfKlXKlXClXypVypVwpV8qVcqPcKDfKjXKj3Cg3yo1yo9wod8qdcqfcKXfKnXKn3Cl3yn0t2zSxJBZjEYuzZJbCUlkaC+VEOVFOlBPlRDlRTpQT5UQ5UTbKRtkoG2WjbJSNslE2ykYZg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegLwZ9XhpLX5fFYJ6XxGIsYnGWzFJYKktj6euSKWfKmXKmnClnyplyppwpZ8qFcqG8GCzzIhZnySyFpbI0lr4ui8FlSSyUK+VKuVKulBeD5f39asMl6e3Labebr0h/u0YdV67P29Pu+LK5Pr4eDlebf7aH1+Uf/XreHpf5sj2Ne8dVzO74MOYIPu4Pu3l7v/o8PZ0/6raeLeXjcP726cojd/+D0x+Pff60Ljy21/V4bZ9P3Oy758d3orQGxreiz0L+EsgXAt54AuO7XD0TKOcD41u9r4Hxvd7PBC4+hY+XcHyNS2cC7W+fQv/bp3DhMzAuwjjf+rlPQUrnA63zLnbTuY9Bsv8x8K0P4qWXoBfeg2n6A0bjMu/jfPty/mbc2t7vT19++HqfS6f99u6wW28+vh7vf7v35d9n7uGHs+fT0/3u4fW0m0ufv57N/0P+SOO1SanejIvTtNxsV8mmm/f54f8D", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_9223372036854775807.snap new file mode 100644 index 00000000000..7ba463f6681 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_false_inliner_9223372036854775807.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32837 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 13 }, Mov { destination: Direct(32836), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32836 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Return, Call { location: 394 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 24 }, Call { location: 400 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U1), value: 1 }, Mov { destination: Relative(4), source: Direct(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(5) }, IndirectConst { destination_pointer: Relative(4), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, Mov { destination: Relative(6), source: Relative(5) }, Store { destination_pointer: Relative(6), source: Relative(2) }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(6), rhs: Direct(2) }, Store { destination_pointer: Relative(6), source: Relative(1) }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(6), rhs: Direct(2) }, Store { destination_pointer: Relative(6), source: Relative(1) }, Load { destination: Relative(5), source_pointer: Relative(4) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 44 }, Call { location: 400 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(5) }, Const { destination: Relative(5), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(29), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(30), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(31), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(32), source: Direct(1) }, Const { destination: Relative(33), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(33) }, IndirectConst { destination_pointer: Relative(32), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(33), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, Mov { destination: Relative(34), source: Relative(33) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(22) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(24) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(26) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(27) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(28) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(28) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(30) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(30) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(31) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, Const { destination: Relative(5), bit_size: Integer(U1), value: 0 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(7), size: 3 }), HeapArray(HeapArray { pointer: Relative(8), size: 138 }), MemoryAddress(Relative(5))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Load { destination: Relative(7), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(7) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 363 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(7) }, Load { destination: Relative(7), source_pointer: Relative(4) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(7) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 371 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(7) }, Load { destination: Relative(7), source_pointer: Relative(32) }, Const { destination: Relative(10), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(11), op: Equals, bit_size: U32, lhs: Relative(10), rhs: Relative(7) }, Not { destination: Relative(11), source: Relative(11), bit_size: U1 }, JumpIf { condition: Relative(11), location: 379 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(32), source: Relative(7) }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, BinaryIntOp { destination: Relative(11), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(7), size: 3 }), HeapArray(HeapArray { pointer: Relative(11), size: 138 }), MemoryAddress(Relative(5))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(4), rhs: Relative(2) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 390 }, Call { location: 400 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(1), source: Relative(5) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 399 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + ], + "debug_symbols": "tdfbThtLEEbhd5lrX0z91dMHXiVCyICJLFkGOfaWtpDffU+71nC4MDsKyk2qidOLYOqT7dfhcXN/+nm33T89/xpufrwO94ftbrf9ebd7flgft8/7+W9fh7H/4XW40WrwdhlpjGExFMNjpBhTjDzcTPMoMWqMdhnTGMNiKIbHSDGmGFGZojJFZYpKjkqOSo5KjkqOSo5KjkqOSo5KjkqJSolKiUqJSolKiUqJSolKiUqJSo1KjUqNSo1KjUqNSo1KjUqNSo1Ki0qLSotKi0qLSotKi0qLSotKi4qNI9OYYjozMSdmZhZmZdIzekbP6Bk9o2f0jJ7RM3pGT/RET/RET/RET/RET/REz+k5Pafn9Jye03N6Ts/pOb1EL9FL9BK9RC/RY9WNXTeW3dh2Y92NfTcW3th4Y+WNnTeW3th6Y+2NvTcW39h8Y/WN3TeW39h+Y/2N/TcAGAIMAoYBA4GhwGBgODAgGBIMCoYFA4OhweBgeDBAGCIMEoYJA4WhwmBhuDBgGDIMGoYNA4ehw+Bh+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/hwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eHdx+5z8ScmJk596zPymwxu4/LNKaYzkzMuVf7zMzCrMwWs/u4TGOK2Xs91IHEYVoOeTmU5VCXQ+PQmcSh/z/7e9AOJQ6+HHq5/6zdShzycijLoS6HxqGDiUMv5/N5NSxvfO+Oh82mv+/98E54fn/8sj5s9sfhZn/a7VbDP+vd6fKPfr2s95d5XB/mR8fVsNk/znMOPm13m346r95vj9evJnE357fL0+fb9hu3W/qD2/MLN9fnl9xr9/36/dps+fbyt/vSp/vp790vqXC/1PHa/S+e+zL+77NXvvXcl28+9+2bz52NfzHw3Wf/d3b3i+WbX82XwPyCbu+Jz4Uv1md+P/JWmMZyrTB98UtsNS2/xfbxxzifb+cv1g/bw6dP1ueeOmzX97sNXz6d9g8fHj3++7I8snwyfzk8P2weT4dNL71/PO+vrT+8pZW3dts/Y81fpnFcpVG35/7t/wM=", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap new file mode 100644 index 00000000000..2ee3eeff1b8 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32837), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Const { destination: Direct(32835), bit_size: Integer(U1), value: 0 }, Const { destination: Direct(32836), bit_size: Integer(U1), value: 1 }, Return, Call { location: 112 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 26 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(2), source: Direct(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(4) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Mov { destination: Relative(5), source: Relative(4) }, Store { destination_pointer: Relative(5), source: Direct(32836) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 6 }, Mov { destination: Relative(6), source: Direct(0) }, Mov { destination: Relative(7), source: Relative(2) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(5) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(1), source: Relative(7) }, Mov { destination: Relative(4), source: Relative(8) }, Mov { destination: Relative(2), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 57 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Mov { destination: Relative(5), source: Direct(1) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(7) }, IndirectConst { destination_pointer: Relative(5), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Mov { destination: Relative(8), source: Relative(7) }, Store { destination_pointer: Relative(8), source: Direct(32836) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 9 }, Mov { destination: Relative(9), source: Direct(0) }, Mov { destination: Relative(10), source: Relative(5) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(8) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(2), source: Relative(10) }, Mov { destination: Relative(7), source: Relative(11) }, Load { destination: Relative(5), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(5) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 84 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(5) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(5) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 92 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(5), rhs: Relative(2) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 100 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 108 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Mov { destination: Relative(1), source: Direct(32835) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 117 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, Call { location: 112 }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 128 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(29), source: Direct(1) }, Const { destination: Relative(30), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(30) }, IndirectConst { destination_pointer: Relative(29), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(30), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, Mov { destination: Relative(31), source: Relative(30) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(19) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(21) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(23) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(24) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(28) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Direct(32836)), HeapArray(HeapArray { pointer: Relative(2), size: 3 }), HeapArray(HeapArray { pointer: Relative(4), size: 138 }), MemoryAddress(Direct(32835))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Const { destination: Relative(2), bit_size: Integer(U32), value: 2 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(4), source_pointer: Relative(5) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 3 }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(5), source_pointer: Relative(6) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(6), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(6), source: Relative(6), bit_size: U1 }, JumpIf { condition: Relative(6), location: 452 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(1) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 460 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(8), op: Equals, bit_size: U32, lhs: Relative(7), rhs: Relative(1) }, Not { destination: Relative(8), source: Relative(8), bit_size: U1 }, JumpIf { condition: Relative(8), location: 468 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(1) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 476 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Mov { destination: Relative(1), source: Relative(4) }, Mov { destination: Relative(2), source: Relative(5) }, Return]" + ], + "debug_symbols": "tdjLThtbEEbhd/GYQe/6a994lQghAyayZBnkwJGOEO9+dnf1gjCwhRKdSaocZy/Ll09x+23zsLt7/Xm7Pz4+/dpc/3jb3J32h8P+5+3h6X77sn86jr9920zzH+qb63S18SlGimExFMNj5BglRo3RYkQlRyVHJUclRyVHJUclRyVHJUclR6VEpUSlRKVEpUSlRKVEpUSlRKVEpY6KjZFiWAzF8Bg5RolRY4yKj9GX0aYYKYbFUAyPkWOUGDVGVFpUelR6VHpUelT6qNQxcowSo8ZoMfoy0jStM61zfmmmeRGLs2SWwlJZGktfFxsdzVPr9HXmdZZ11nW2dfaYmt+wZUksxiIWZ8kshaWyNJa+Lk7ZKTtlp+yUnbJTdspO2SlnyplyppwpZ8qZcqacKWfKmXKhXCgXyoVyoVwoF8qFcqFcKFfKlXKlXClXypVypVwpV8qVcqPcKDfKjXKj3Cg3yo1yo9wod8qdcqfcKXfKnXKn3Cl3yn0t2zSxJBZjEYuzZJbCUlkaC+VEOVFOlBPlRDlRTpQT5UQ5UTbKRtkoG2WjbJSNslE2ykYZg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegLwZ9XhpLX5fFYJ6XxGIsYnGWzFJYKktj6euSKWfKmXKmnClnyplyppwpZ8qFcqG8GCzzIhZnySyFpbI0lr4ui8FlSSyUK+VKuVKulBeD5f39asMl6e3Labebr0h/u0YdV67P29Pu+LK5Pr4eDlebf7aH1+Uf/XreHpf5sj2Ne8dVzO74MOYIPu4Pu3l7v/o8PZ0/6raeLeXjcP726cojd/+D0x+Pff60Ljy21/V4bZ9P3Oy758d3orQGxreiz0L+EsgXAt54AuO7XD0TKOcD41u9r4Hxvd7PBC4+hY+XcHyNS2cC7W+fQv/bp3DhMzAuwjjf+rlPQUrnA63zLnbTuY9Bsv8x8K0P4qWXoBfeg2n6A0bjMu/jfPty/mbc2t7vT19++HqfS6f99u6wW28+vh7vf7v35d9n7uGHs+fT0/3u4fW0m0ufv57N/0P+SOO1SanejIvTtNxsV8mmm/f54f8D", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_0.snap new file mode 100644 index 00000000000..2ee3eeff1b8 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_0.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32837), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Const { destination: Direct(32835), bit_size: Integer(U1), value: 0 }, Const { destination: Direct(32836), bit_size: Integer(U1), value: 1 }, Return, Call { location: 112 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 26 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(2), source: Direct(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(4) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Mov { destination: Relative(5), source: Relative(4) }, Store { destination_pointer: Relative(5), source: Direct(32836) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 6 }, Mov { destination: Relative(6), source: Direct(0) }, Mov { destination: Relative(7), source: Relative(2) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(5) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(1), source: Relative(7) }, Mov { destination: Relative(4), source: Relative(8) }, Mov { destination: Relative(2), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(2), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 57 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Mov { destination: Relative(5), source: Direct(1) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(7) }, IndirectConst { destination_pointer: Relative(5), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Mov { destination: Relative(8), source: Relative(7) }, Store { destination_pointer: Relative(8), source: Direct(32836) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(8), rhs: Direct(2) }, Store { destination_pointer: Relative(8), source: Relative(2) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 9 }, Mov { destination: Relative(9), source: Direct(0) }, Mov { destination: Relative(10), source: Relative(5) }, BinaryIntOp { destination: Direct(0), op: Add, bit_size: U32, lhs: Direct(0), rhs: Relative(8) }, Call { location: 121 }, Mov { destination: Direct(0), source: Relative(0) }, Mov { destination: Relative(2), source: Relative(10) }, Mov { destination: Relative(7), source: Relative(11) }, Load { destination: Relative(5), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(5) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 84 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(5) }, Load { destination: Relative(5), source_pointer: Relative(2) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(5) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 92 }, Call { location: 118 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(2), source: Relative(5) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(5), rhs: Relative(2) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 100 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 108 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Mov { destination: Relative(1), source: Direct(32835) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 117 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, Call { location: 112 }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 128 }, Call { location: 118 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(29), source: Direct(1) }, Const { destination: Relative(30), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(30) }, IndirectConst { destination_pointer: Relative(29), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(30), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, Mov { destination: Relative(31), source: Relative(30) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(19) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(21) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(12) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(20) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(23) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(24) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(25) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(10) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(2) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(5) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(8) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(22) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(11) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(6) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(13) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(14) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(15) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(7) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(16) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(17) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(18) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(4) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(9) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(27) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(28) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(31), op: Add, bit_size: U32, lhs: Relative(31), rhs: Direct(2) }, Store { destination_pointer: Relative(31), source: Relative(26) }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(29), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Direct(32836)), HeapArray(HeapArray { pointer: Relative(2), size: 3 }), HeapArray(HeapArray { pointer: Relative(4), size: 138 }), MemoryAddress(Direct(32835))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Const { destination: Relative(2), bit_size: Integer(U32), value: 2 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(4), source_pointer: Relative(5) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 3 }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, Load { destination: Relative(5), source_pointer: Relative(6) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(6), op: Equals, bit_size: U32, lhs: Relative(2), rhs: Relative(1) }, Not { destination: Relative(6), source: Relative(6), bit_size: U1 }, JumpIf { condition: Relative(6), location: 452 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(1) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 460 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(4) }, Const { destination: Relative(7), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(8), op: Equals, bit_size: U32, lhs: Relative(7), rhs: Relative(1) }, Not { destination: Relative(8), source: Relative(8), bit_size: U1 }, JumpIf { condition: Relative(8), location: 468 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(1) }, Load { destination: Relative(1), source_pointer: Relative(5) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(1) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 476 }, Call { location: 118 }, BinaryIntOp { destination: Relative(1), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Store { destination_pointer: Relative(5), source: Relative(1) }, Mov { destination: Relative(1), source: Relative(4) }, Mov { destination: Relative(2), source: Relative(5) }, Return]" + ], + "debug_symbols": "tdjLThtbEEbhd/GYQe/6a994lQghAyayZBnkwJGOEO9+dnf1gjCwhRKdSaocZy/Ll09x+23zsLt7/Xm7Pz4+/dpc/3jb3J32h8P+5+3h6X77sn86jr9920zzH+qb63S18SlGimExFMNj5BglRo3RYkQlRyVHJUclRyVHJUclRyVHJUclR6VEpUSlRKVEpUSlRKVEpUSlRKVEpY6KjZFiWAzF8Bg5RolRY4yKj9GX0aYYKYbFUAyPkWOUGDVGVFpUelR6VHpUelT6qNQxcowSo8ZoMfoy0jStM61zfmmmeRGLs2SWwlJZGktfFxsdzVPr9HXmdZZ11nW2dfaYmt+wZUksxiIWZ8kshaWyNJa+Lk7ZKTtlp+yUnbJTdspO2SlnyplyppwpZ8qZcqacKWfKmXKhXCgXyoVyoVwoF8qFcqFcKFfKlXKlXClXypVypVwpV8qVcqPcKDfKjXKj3Cg3yo1yo9wod8qdcqfcKXfKnXKn3Cl3yn0t2zSxJBZjEYuzZJbCUlkaC+VEOVFOlBPlRDlRTpQT5UQ5UTbKRtkoG2WjbJSNslE2ykYZg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGDQMGgYNg4ZBw6Bh0DBoGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBgUBoVBYVAYFAaFQWFQGBQGhUFhUBh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegY9Ax6Bh0DDoGHYOOQcegLwZ9XhpLX5fFYJ6XxGIsYnGWzFJYKktj6euSKWfKmXKmnClnyplyppwpZ8qFcqG8GCzzIhZnySyFpbI0lr4ui8FlSSyUK+VKuVKulBeD5f39asMl6e3Labebr0h/u0YdV67P29Pu+LK5Pr4eDlebf7aH1+Uf/XreHpf5sj2Ne8dVzO74MOYIPu4Pu3l7v/o8PZ0/6raeLeXjcP726cojd/+D0x+Pff60Ljy21/V4bZ9P3Oy758d3orQGxreiz0L+EsgXAt54AuO7XD0TKOcD41u9r4Hxvd7PBC4+hY+XcHyNS2cC7W+fQv/bp3DhMzAuwjjf+rlPQUrnA63zLnbTuY9Bsv8x8K0P4qWXoBfeg2n6A0bjMu/jfPty/mbc2t7vT19++HqfS6f99u6wW28+vh7vf7v35d9n7uGHs+fT0/3u4fW0m0ufv57N/0P+SOO1SanejIvTtNxsV8mmm/f54f8D", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_9223372036854775807.snap new file mode 100644 index 00000000000..7ba463f6681 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__force_brillig_true_inliner_9223372036854775807.snap @@ -0,0 +1,58 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "12049594436772143978": { + "error_kind": "string", + "string": "array ref-count underflow detected" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _0", + "private parameters indices : []", + "public parameters indices : []", + "return value indices : [_0]", + "BRILLIG CALL func 0: inputs: [], outputs: [Simple(Witness(0))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32837 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 0 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(1), offset_address: Relative(2) }, Call { location: 12 }, Call { location: 13 }, Mov { destination: Direct(32836), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32836 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Return, Call { location: 394 }, Mov { destination: Relative(1), source: Direct(1) }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Direct(2) }, IndirectConst { destination_pointer: Relative(1), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(1), rhs: Direct(2) }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(4), op: Equals, bit_size: U32, lhs: Relative(3), rhs: Relative(2) }, Not { destination: Relative(4), source: Relative(4), bit_size: U1 }, JumpIf { condition: Relative(4), location: 24 }, Call { location: 400 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Const { destination: Relative(2), bit_size: Integer(U1), value: 1 }, Mov { destination: Relative(4), source: Direct(1) }, Const { destination: Relative(5), bit_size: Integer(U32), value: 4 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(5) }, IndirectConst { destination_pointer: Relative(4), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, Mov { destination: Relative(6), source: Relative(5) }, Store { destination_pointer: Relative(6), source: Relative(2) }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(6), rhs: Direct(2) }, Store { destination_pointer: Relative(6), source: Relative(1) }, BinaryIntOp { destination: Relative(6), op: Add, bit_size: U32, lhs: Relative(6), rhs: Direct(2) }, Store { destination_pointer: Relative(6), source: Relative(1) }, Load { destination: Relative(5), source_pointer: Relative(4) }, Const { destination: Relative(6), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(6), rhs: Relative(5) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 44 }, Call { location: 400 }, BinaryIntOp { destination: Relative(5), op: Add, bit_size: U32, lhs: Relative(5), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(5) }, Const { destination: Relative(5), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 97 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 121 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 108 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(22), bit_size: Integer(U8), value: 49 }, Const { destination: Relative(23), bit_size: Integer(U8), value: 112 }, Const { destination: Relative(24), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(25), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(26), bit_size: Integer(U8), value: 91 }, Const { destination: Relative(27), bit_size: Integer(U8), value: 98 }, Const { destination: Relative(28), bit_size: Integer(U8), value: 111 }, Const { destination: Relative(29), bit_size: Integer(U8), value: 125 }, Const { destination: Relative(30), bit_size: Integer(U8), value: 48 }, Const { destination: Relative(31), bit_size: Integer(U8), value: 93 }, Mov { destination: Relative(32), source: Direct(1) }, Const { destination: Relative(33), bit_size: Integer(U32), value: 139 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(33) }, IndirectConst { destination_pointer: Relative(32), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(33), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, Mov { destination: Relative(34), source: Relative(33) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(22) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(24) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(15) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(23) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(26) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(27) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(28) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(28) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(13) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(30) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(5) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(8) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(11) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(25) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(14) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(9) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(16) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(17) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(18) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(10) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(19) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(20) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(21) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(7) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(12) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(30) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(31) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, BinaryIntOp { destination: Relative(34), op: Add, bit_size: U32, lhs: Relative(34), rhs: Direct(2) }, Store { destination_pointer: Relative(34), source: Relative(29) }, Const { destination: Relative(5), bit_size: Integer(U1), value: 0 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, BinaryIntOp { destination: Relative(8), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(7), size: 3 }), HeapArray(HeapArray { pointer: Relative(8), size: 138 }), MemoryAddress(Relative(5))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Load { destination: Relative(7), source_pointer: Relative(1) }, Const { destination: Relative(8), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(9), op: Equals, bit_size: U32, lhs: Relative(8), rhs: Relative(7) }, Not { destination: Relative(9), source: Relative(9), bit_size: U1 }, JumpIf { condition: Relative(9), location: 363 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(7) }, Load { destination: Relative(7), source_pointer: Relative(4) }, Const { destination: Relative(9), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(10), op: Equals, bit_size: U32, lhs: Relative(9), rhs: Relative(7) }, Not { destination: Relative(10), source: Relative(10), bit_size: U1 }, JumpIf { condition: Relative(10), location: 371 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(4), source: Relative(7) }, Load { destination: Relative(7), source_pointer: Relative(32) }, Const { destination: Relative(10), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(11), op: Equals, bit_size: U32, lhs: Relative(10), rhs: Relative(7) }, Not { destination: Relative(11), source: Relative(11), bit_size: U1 }, JumpIf { condition: Relative(11), location: 379 }, Call { location: 400 }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(7), rhs: Direct(2) }, Store { destination_pointer: Relative(32), source: Relative(7) }, BinaryIntOp { destination: Relative(7), op: Add, bit_size: U32, lhs: Relative(4), rhs: Direct(2) }, BinaryIntOp { destination: Relative(11), op: Add, bit_size: U32, lhs: Relative(32), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(7), size: 3 }), HeapArray(HeapArray { pointer: Relative(11), size: 138 }), MemoryAddress(Relative(5))], input_value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U1)), Array { value_types: [Simple(Integer(U8))], size: 0 }, Array { value_types: [Simple(Integer(U8))], size: 0 }], size: 3 }, Array { value_types: [Simple(Integer(U8))], size: 138 }, Simple(Integer(U1))] }, Load { destination: Relative(2), source_pointer: Relative(1) }, Const { destination: Relative(4), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(7), op: Equals, bit_size: U32, lhs: Relative(4), rhs: Relative(2) }, Not { destination: Relative(7), source: Relative(7), bit_size: U1 }, JumpIf { condition: Relative(7), location: 390 }, Call { location: 400 }, BinaryIntOp { destination: Relative(2), op: Add, bit_size: U32, lhs: Relative(2), rhs: Direct(2) }, Store { destination_pointer: Relative(1), source: Relative(2) }, Mov { destination: Relative(1), source: Relative(5) }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 399 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 12049594436772143978 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + ], + "debug_symbols": "tdfbThtLEEbhd5lrX0z91dMHXiVCyICJLFkGOfaWtpDffU+71nC4MDsKyk2qidOLYOqT7dfhcXN/+nm33T89/xpufrwO94ftbrf9ebd7flgft8/7+W9fh7H/4XW40WrwdhlpjGExFMNjpBhTjDzcTPMoMWqMdhnTGMNiKIbHSDGmGFGZojJFZYpKjkqOSo5KjkqOSo5KjkqOSo5KjkqJSolKiUqJSolKiUqJSolKiUqJSo1KjUqNSo1KjUqNSo1KjUqNSo1Ki0qLSotKi0qLSotKi0qLSotKi4qNI9OYYjozMSdmZhZmZdIzekbP6Bk9o2f0jJ7RM3pGT/RET/RET/RET/RET/REz+k5Pafn9Jye03N6Ts/pOb1EL9FL9BK9RC/RY9WNXTeW3dh2Y92NfTcW3th4Y+WNnTeW3th6Y+2NvTcW39h8Y/WN3TeW39h+Y/2N/TcAGAIMAoYBA4GhwGBgODAgGBIMCoYFA4OhweBgeDBAGCIMEoYJA4WhwmBhuDBgGDIMGoYNA4ehw+Bh+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/gQPoQP4UP4ED6ED+FD+BA+hA/hQ/hwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eH48Px4fhwfDg+HB+OD8eHdx+5z8ScmJk596zPymwxu4/LNKaYzkzMuVf7zMzCrMwWs/u4TGOK2Xs91IHEYVoOeTmU5VCXQ+PQmcSh/z/7e9AOJQ6+HHq5/6zdShzycijLoS6HxqGDiUMv5/N5NSxvfO+Oh82mv+/98E54fn/8sj5s9sfhZn/a7VbDP+vd6fKPfr2s95d5XB/mR8fVsNk/znMOPm13m346r95vj9evJnE357fL0+fb9hu3W/qD2/MLN9fnl9xr9/36/dps+fbyt/vSp/vp790vqXC/1PHa/S+e+zL+77NXvvXcl28+9+2bz52NfzHw3Wf/d3b3i+WbX82XwPyCbu+Jz4Uv1md+P/JWmMZyrTB98UtsNS2/xfbxxzifb+cv1g/bw6dP1ueeOmzX97sNXz6d9g8fHj3++7I8snwyfzk8P2weT4dNL71/PO+vrT+8pZW3dts/Y81fpnFcpVG35/7t/wM=", + "file_map": { + "5": { + "source": "use crate::meta::derive_via;\n\n#[derive_via(derive_eq)]\n// docs:start:eq-trait\npub trait Eq {\n fn eq(self, other: Self) -> bool;\n}\n// docs:end:eq-trait\n\n// docs:start:derive_eq\ncomptime fn derive_eq(s: TypeDefinition) -> Quoted {\n let signature = quote { fn eq(_self: Self, _other: Self) -> bool };\n let for_each_field = |name| quote { (_self.$name == _other.$name) };\n let body = |fields| {\n if s.fields_as_written().len() == 0 {\n quote { true }\n } else {\n fields\n }\n };\n crate::meta::make_trait_impl(\n s,\n quote { $crate::cmp::Eq },\n signature,\n for_each_field,\n quote { & },\n body,\n )\n}\n// docs:end:derive_eq\n\nimpl Eq for Field {\n fn eq(self, other: Field) -> bool {\n self == other\n }\n}\n\nimpl Eq for u128 {\n fn eq(self, other: u128) -> bool {\n self == other\n }\n}\nimpl Eq for u64 {\n fn eq(self, other: u64) -> bool {\n self == other\n }\n}\nimpl Eq for u32 {\n fn eq(self, other: u32) -> bool {\n self == other\n }\n}\nimpl Eq for u16 {\n fn eq(self, other: u16) -> bool {\n self == other\n }\n}\nimpl Eq for u8 {\n fn eq(self, other: u8) -> bool {\n self == other\n }\n}\nimpl Eq for u1 {\n fn eq(self, other: u1) -> bool {\n self == other\n }\n}\n\nimpl Eq for i8 {\n fn eq(self, other: i8) -> bool {\n self == other\n }\n}\nimpl Eq for i16 {\n fn eq(self, other: i16) -> bool {\n self == other\n }\n}\nimpl Eq for i32 {\n fn eq(self, other: i32) -> bool {\n self == other\n }\n}\nimpl Eq for i64 {\n fn eq(self, other: i64) -> bool {\n self == other\n }\n}\n\nimpl Eq for () {\n fn eq(_self: Self, _other: ()) -> bool {\n true\n }\n}\nimpl Eq for bool {\n fn eq(self, other: bool) -> bool {\n self == other\n }\n}\n\nimpl Eq for [T; N]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T; N]) -> bool {\n let mut result = true;\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for [T]\nwhere\n T: Eq,\n{\n fn eq(self, other: [T]) -> bool {\n let mut result = self.len() == other.len();\n for i in 0..self.len() {\n result &= self[i].eq(other[i]);\n }\n result\n }\n}\n\nimpl Eq for str {\n fn eq(self, other: str) -> bool {\n let self_bytes = self.as_bytes();\n let other_bytes = other.as_bytes();\n self_bytes == other_bytes\n }\n}\n\nimpl Eq for (A, B)\nwhere\n A: Eq,\n B: Eq,\n{\n fn eq(self, other: (A, B)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1)\n }\n}\n\nimpl Eq for (A, B, C)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n{\n fn eq(self, other: (A, B, C)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2)\n }\n}\n\nimpl Eq for (A, B, C, D)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n{\n fn eq(self, other: (A, B, C, D)) -> bool {\n self.0.eq(other.0) & self.1.eq(other.1) & self.2.eq(other.2) & self.3.eq(other.3)\n }\n}\n\nimpl Eq for (A, B, C, D, E)\nwhere\n A: Eq,\n B: Eq,\n C: Eq,\n D: Eq,\n E: Eq,\n{\n fn eq(self, other: (A, B, C, D, E)) -> bool {\n self.0.eq(other.0)\n & self.1.eq(other.1)\n & self.2.eq(other.2)\n & self.3.eq(other.3)\n & self.4.eq(other.4)\n }\n}\n\nimpl Eq for Ordering {\n fn eq(self, other: Ordering) -> bool {\n self.result == other.result\n }\n}\n\n// Noir doesn't have enums yet so we emulate (Lt | Eq | Gt) with a struct\n// that has 3 public functions for constructing the struct.\npub struct Ordering {\n result: Field,\n}\n\nimpl Ordering {\n // Implementation note: 0, 1, and 2 for Lt, Eq, and Gt are built\n // into the compiler, do not change these without also updating\n // the compiler itself!\n pub fn less() -> Ordering {\n Ordering { result: 0 }\n }\n\n pub fn equal() -> Ordering {\n Ordering { result: 1 }\n }\n\n pub fn greater() -> Ordering {\n Ordering { result: 2 }\n }\n}\n\n#[derive_via(derive_ord)]\n// docs:start:ord-trait\npub trait Ord {\n fn cmp(self, other: Self) -> Ordering;\n}\n// docs:end:ord-trait\n\n// docs:start:derive_ord\ncomptime fn derive_ord(s: TypeDefinition) -> Quoted {\n let name = quote { $crate::cmp::Ord };\n let signature = quote { fn cmp(_self: Self, _other: Self) -> $crate::cmp::Ordering };\n let for_each_field = |name| quote {\n if result == $crate::cmp::Ordering::equal() {\n result = _self.$name.cmp(_other.$name);\n }\n };\n let body = |fields| quote {\n let mut result = $crate::cmp::Ordering::equal();\n $fields\n result\n };\n crate::meta::make_trait_impl(s, name, signature, for_each_field, quote {}, body)\n}\n// docs:end:derive_ord\n\n// Note: Field deliberately does not implement Ord\n\nimpl Ord for u128 {\n fn cmp(self, other: u128) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\nimpl Ord for u64 {\n fn cmp(self, other: u64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u32 {\n fn cmp(self, other: u32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u16 {\n fn cmp(self, other: u16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for u8 {\n fn cmp(self, other: u8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i8 {\n fn cmp(self, other: i8) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i16 {\n fn cmp(self, other: i16) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i32 {\n fn cmp(self, other: i32) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for i64 {\n fn cmp(self, other: i64) -> Ordering {\n if self < other {\n Ordering::less()\n } else if self > other {\n Ordering::greater()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for () {\n fn cmp(_self: Self, _other: ()) -> Ordering {\n Ordering::equal()\n }\n}\n\nimpl Ord for bool {\n fn cmp(self, other: bool) -> Ordering {\n if self {\n if other {\n Ordering::equal()\n } else {\n Ordering::greater()\n }\n } else if other {\n Ordering::less()\n } else {\n Ordering::equal()\n }\n }\n}\n\nimpl Ord for [T; N]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T; N]) -> Ordering {\n let mut result = Ordering::equal();\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for [T]\nwhere\n T: Ord,\n{\n // The first non-equal element of both arrays determines\n // the ordering for the whole array.\n fn cmp(self, other: [T]) -> Ordering {\n let mut result = self.len().cmp(other.len());\n for i in 0..self.len() {\n if result == Ordering::equal() {\n result = self[i].cmp(other[i]);\n }\n }\n result\n }\n}\n\nimpl Ord for (A, B)\nwhere\n A: Ord,\n B: Ord,\n{\n fn cmp(self, other: (A, B)) -> Ordering {\n let result = self.0.cmp(other.0);\n\n if result != Ordering::equal() {\n result\n } else {\n self.1.cmp(other.1)\n }\n }\n}\n\nimpl Ord for (A, B, C)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n{\n fn cmp(self, other: (A, B, C)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n{\n fn cmp(self, other: (A, B, C, D)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n result\n }\n}\n\nimpl Ord for (A, B, C, D, E)\nwhere\n A: Ord,\n B: Ord,\n C: Ord,\n D: Ord,\n E: Ord,\n{\n fn cmp(self, other: (A, B, C, D, E)) -> Ordering {\n let mut result = self.0.cmp(other.0);\n\n if result == Ordering::equal() {\n result = self.1.cmp(other.1);\n }\n\n if result == Ordering::equal() {\n result = self.2.cmp(other.2);\n }\n\n if result == Ordering::equal() {\n result = self.3.cmp(other.3);\n }\n\n if result == Ordering::equal() {\n result = self.4.cmp(other.4);\n }\n\n result\n }\n}\n\n// Compares and returns the maximum of two values.\n//\n// Returns the second argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::max(1, 2), 2);\n// assert_eq(cmp::max(2, 2), 2);\n// ```\npub fn max(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v1\n } else {\n v2\n }\n}\n\n// Compares and returns the minimum of two values.\n//\n// Returns the first argument if the comparison determines them to be equal.\n//\n// # Examples\n//\n// ```\n// use std::cmp;\n//\n// assert_eq(cmp::min(1, 2), 1);\n// assert_eq(cmp::min(2, 2), 2);\n// ```\npub fn min(v1: T, v2: T) -> T\nwhere\n T: Ord,\n{\n if v1 > v2 {\n v2\n } else {\n v1\n }\n}\n\nmod cmp_tests {\n use crate::cmp::{max, min};\n\n #[test]\n fn sanity_check_min() {\n assert_eq(min(0_u64, 1), 0);\n assert_eq(min(0_u64, 0), 0);\n assert_eq(min(1_u64, 1), 1);\n assert_eq(min(255_u8, 0), 0);\n }\n\n #[test]\n fn sanity_check_max() {\n assert_eq(max(0_u64, 1), 1);\n assert_eq(max(0_u64, 0), 0);\n assert_eq(max(1_u64, 1), 1);\n assert_eq(max(255_u8, 0), 255);\n }\n}\n", + "path": "std/cmp.nr" + }, + "22": { + "source": "pub mod hash;\npub mod aes128;\npub mod array;\npub mod slice;\npub mod ecdsa_secp256k1;\npub mod ecdsa_secp256r1;\npub mod embedded_curve_ops;\npub mod field;\npub mod collections;\npub mod compat;\npub mod convert;\npub mod option;\npub mod string;\npub mod test;\npub mod cmp;\npub mod ops;\npub mod default;\npub mod prelude;\npub mod runtime;\npub mod meta;\npub mod append;\npub mod mem;\npub mod panic;\npub mod hint;\n\nuse convert::AsPrimitive;\n\n// Oracle calls are required to be wrapped in an unconstrained function\n// Thus, the only argument to the `println` oracle is expected to always be an ident\n#[oracle(print)]\nunconstrained fn print_oracle(with_newline: bool, input: T) {}\n\nunconstrained fn print_unconstrained(with_newline: bool, input: T) {\n print_oracle(with_newline, input);\n}\n\npub fn println(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(true, input);\n }\n}\n\npub fn print(input: T) {\n // Safety: a print statement cannot be constrained\n unsafe {\n print_unconstrained(false, input);\n }\n}\n\n#[deprecated(\"This functions is deprecated in favour of external verification libraries. To verify Barretenberg proofs, it's recommended to use the library https://github.com/AztecProtocol/aztec-packages/tree/next/barretenberg/noir/bb_proof_verification\")]\npub fn verify_proof(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n) {\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, 0);\n}\n\n/// Asserts the validity of the provided proof and public inputs against the provided verification key and hash.\n///\n/// The ACVM cannot determine whether the provided proof is valid during execution as this requires knowledge of\n/// the backend against which the program is being proven. However if an invalid proof if submitted, the program may\n/// fail to prove or the backend may generate a proof which will subsequently fail to verify.\n///\n/// # Important Note\n///\n/// If you are not developing your own backend such as [Barretenberg](https://github.com/AztecProtocol/barretenberg)\n/// you probably shouldn't need to interact with this function directly. It's easier and safer to use a verification\n/// library which is published by the developers of the backend which will document or enforce any safety requirements.\n///\n/// If you use this directly, you're liable to introduce underconstrainedness bugs and *your circuit will be insecure*.\n///\n/// # Arguments\n/// - verification_key: The verification key of the circuit to be verified.\n/// - proof: The proof to be verified.\n/// - public_inputs: The public inputs associated with `proof`\n/// - key_hash: The hash of `verification_key` of the form expected by the backend.\n/// - proof_type: An identifier for the proving scheme used to generate the proof to be verified. This allows\n/// for a single backend to support verifying multiple proving schemes.\n///\n/// # Constraining `key_hash`\n///\n/// The Noir compiler does not by itself constrain that `key_hash` is a valid hash of `verification_key`.\n/// This is because different backends may differ in how they hash their verification keys.\n/// It is then the responsibility of either the noir developer (by explicitly hashing the verification key\n/// in the correct manner) or by the proving system itself internally asserting the correctness of `key_hash`.\npub fn verify_proof_with_type(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {\n if !crate::runtime::is_unconstrained() {\n crate::assert_constant(proof_type);\n }\n verify_proof_internal(verification_key, proof, public_inputs, key_hash, proof_type);\n}\n\n#[foreign(recursive_aggregation)]\nfn verify_proof_internal(\n verification_key: [Field; N],\n proof: [Field; M],\n public_inputs: [Field; K],\n key_hash: Field,\n proof_type: u32,\n) {}\n\n// Asserts that the given value is known at compile-time.\n// Useful for debugging for-loop bounds.\n#[builtin(assert_constant)]\npub fn assert_constant(x: T) {}\n\n// Asserts that the given value is both true and known at compile-time.\n// The message can be a string, a format string, or any value, as long as it is known at compile-time\n#[builtin(static_assert)]\npub fn static_assert(predicate: bool, message: T) {}\n\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_add(y)\")]\npub fn wrapping_add(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() + y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_sub(y)\")]\npub fn wrapping_sub(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n //340282366920938463463374607431768211456 is 2^128, it is used to avoid underflow\n AsPrimitive::as_(x.as_() + 340282366920938463463374607431768211456 - y.as_())\n}\n#[deprecated(\"wrapping operations should be done with the Wrapping traits. E.g: x.wrapping_mul(y)\")]\npub fn wrapping_mul(x: T, y: T) -> T\nwhere\n T: AsPrimitive,\n Field: AsPrimitive,\n{\n AsPrimitive::as_(x.as_() * y.as_())\n}\n\n#[builtin(as_witness)]\npub fn as_witness(x: Field) {}\n\nmod tests {\n use super::ops::arith::WrappingMul;\n\n #[test(should_fail_with = \"custom message\")]\n fn test_static_assert_custom_message() {\n super::static_assert(1 == 2, \"custom message\");\n }\n\n #[test]\n fn test_wrapping_mul() {\n let zero: u128 = 0;\n let one: u128 = 1;\n let two_pow_64: u128 = 0x10000000000000000;\n let u128_max: u128 = 0xffffffffffffffffffffffffffffffff;\n\n // 1*0==0\n assert_eq(zero, zero.wrapping_mul(one));\n\n // 0*1==0\n assert_eq(zero, one.wrapping_mul(zero));\n\n // 1*1==1\n assert_eq(one, one.wrapping_mul(one));\n\n // 0 * ( 1 << 64 ) == 0\n assert_eq(zero, zero.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * 0 == 0\n assert_eq(zero, two_pow_64.wrapping_mul(zero));\n\n // 1 * ( 1 << 64 ) == 1 << 64\n assert_eq(two_pow_64, two_pow_64.wrapping_mul(one));\n\n // ( 1 << 64 ) * 1 == 1 << 64\n assert_eq(two_pow_64, one.wrapping_mul(two_pow_64));\n\n // ( 1 << 64 ) * ( 1 << 64 ) == 1 << 64\n assert_eq(zero, two_pow_64.wrapping_mul(two_pow_64));\n // -1 * -1 == 1\n assert_eq(one, u128_max.wrapping_mul(u128_max));\n }\n}\n", + "path": "std/lib.nr" + }, + "50": { + "source": "unconstrained fn main() -> pub bool {\n func_2([(true, \"\", \"\")]) != func_2([(true, \"\", \"\")])\n}\nunconstrained fn func_2(b: [(bool, str<0>, str<0>); 1]) -> (str<0>, str<0>) {\n println(b);\n (b[0].1, b[0].2)\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__stdout.snap b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__stdout.snap new file mode 100644 index 00000000000..9e3dfa641ff --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/empty_strings_in_composite_arrays/execute__tests__stdout.snap @@ -0,0 +1,7 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: stdout +--- +[(true, , )] +[(true, , )] +[empty_strings_in_composite_arrays] Circuit output: Field(0) diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__expanded.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__expanded.snap new file mode 100644 index 00000000000..d2b1566c6a7 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__expanded.snap @@ -0,0 +1,8 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: expanded_code +--- +fn main(x: u32) -> pub bool { + let d: [&mut bool; 1] = [&mut true]; + *d[x] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap new file mode 100644 index 00000000000..70c14f468d0 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap @@ -0,0 +1,53 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "EXPR [ (1, _0) 0 ]", + "EXPR [ (1, _1) -1 ]" + ], + "debug_symbols": "dY/dCoMwDIXfJde9cBf7wVcZQ2qNEghpie1giO++KIruYldpcvqd5EzQYVuGhqSPI9TPCVolZhoajsFnimLTaXawt01WRBvBSTcqeUXJUEthdvD2XNZPY/Ky1uzV1MoBSmfVDHtiXF6zO+jqP3q/bezjgK9Gv6zzgfTnXqigvsyLmZJvGbcMfZFwipQ/aVf20EljwK4oLnarZgu+", + "file_map": { + "50": { + "source": "fn main(x: u32) -> pub bool {\n let d: [&mut bool; 1] = [&mut true];\n *d[x]\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_0.snap new file mode 100644 index 00000000000..70c14f468d0 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_0.snap @@ -0,0 +1,53 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "EXPR [ (1, _0) 0 ]", + "EXPR [ (1, _1) -1 ]" + ], + "debug_symbols": "dY/dCoMwDIXfJde9cBf7wVcZQ2qNEghpie1giO++KIruYldpcvqd5EzQYVuGhqSPI9TPCVolZhoajsFnimLTaXawt01WRBvBSTcqeUXJUEthdvD2XNZPY/Ky1uzV1MoBSmfVDHtiXF6zO+jqP3q/bezjgK9Gv6zzgfTnXqigvsyLmZJvGbcMfZFwipQ/aVf20EljwK4oLnarZgu+", + "file_map": { + "50": { + "source": "fn main(x: u32) -> pub bool {\n let d: [&mut bool; 1] = [&mut true];\n *d[x]\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_9223372036854775807.snap new file mode 100644 index 00000000000..70c14f468d0 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_false_inliner_9223372036854775807.snap @@ -0,0 +1,53 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "EXPR [ (1, _0) 0 ]", + "EXPR [ (1, _1) -1 ]" + ], + "debug_symbols": "dY/dCoMwDIXfJde9cBf7wVcZQ2qNEghpie1giO++KIruYldpcvqd5EzQYVuGhqSPI9TPCVolZhoajsFnimLTaXawt01WRBvBSTcqeUXJUEthdvD2XNZPY/Ky1uzV1MoBSmfVDHtiXF6zO+jqP3q/bezjgK9Gv6zzgfTnXqigvsyLmZJvGbcMfZFwipQ/aVf20EljwK4oLnarZgu+", + "file_map": { + "50": { + "source": "fn main(x: u32) -> pub bool {\n let d: [&mut bool; 1] = [&mut true];\n *d[x]\n}\n", + "path": "" + } + }, + "names": [ + "main" + ], + "brillig_names": [] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap new file mode 100644 index 00000000000..962ca5a649f --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_-9223372036854775808.snap @@ -0,0 +1,55 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 1 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(2), offset_address: Relative(3) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Call { location: 14 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Return, Call { location: 22 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(3), op: Equals, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, JumpIf { condition: Relative(3), location: 20 }, Call { location: 28 }, Const { destination: Relative(1), bit_size: Integer(U1), value: 1 }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 27 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 14225679739041873922 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + ], + "debug_symbols": "XY5BCoQwDEXvknUX6ixm8CoiEmuUQmhLbIVBvPukMoK4SfLzkvzsMNGYl8H5OazQdjuM4pjdMnCwmFzw2t0PA5cckhBpC25ctyIK+QStz8wGNuR8Dq0R/ZkTitLKAPlJsx6cHVOpjl4FWidPxw3F4cj0l3P29kbTN17k+jhKsDRloXKpMKhKqDV2TWOad2+grov4mFfVH8X6Bw==", + "file_map": {}, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_0.snap new file mode 100644 index 00000000000..962ca5a649f --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_0.snap @@ -0,0 +1,55 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 1 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(2), offset_address: Relative(3) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Call { location: 14 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Return, Call { location: 22 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(3), op: Equals, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, JumpIf { condition: Relative(3), location: 20 }, Call { location: 28 }, Const { destination: Relative(1), bit_size: Integer(U1), value: 1 }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 27 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 14225679739041873922 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + ], + "debug_symbols": "XY5BCoQwDEXvknUX6ixm8CoiEmuUQmhLbIVBvPukMoK4SfLzkvzsMNGYl8H5OazQdjuM4pjdMnCwmFzw2t0PA5cckhBpC25ctyIK+QStz8wGNuR8Dq0R/ZkTitLKAPlJsx6cHVOpjl4FWidPxw3F4cj0l3P29kbTN17k+jhKsDRloXKpMKhKqDV2TWOad2+grov4mFfVH8X6Bw==", + "file_map": {}, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_9223372036854775807.snap new file mode 100644 index 00000000000..962ca5a649f --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__force_brillig_true_inliner_9223372036854775807.snap @@ -0,0 +1,55 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: artifact +--- +{ + "noir_version": "[noir_version]", + "hash": "[hash]", + "abi": { + "parameters": [ + { + "name": "x", + "type": { + "kind": "integer", + "sign": "unsigned", + "width": 32 + }, + "visibility": "private" + } + ], + "return_type": { + "abi_type": { + "kind": "boolean" + }, + "visibility": "public" + }, + "error_types": { + "14225679739041873922": { + "error_kind": "string", + "string": "Index out of bounds" + }, + "17843811134343075018": { + "error_kind": "string", + "string": "Stack too deep" + } + } + }, + "bytecode": [ + "func 0", + "current witness index : _1", + "private parameters indices : [_0]", + "public parameters indices : []", + "return value indices : [_1]", + "BRILLIG CALL func 0: inputs: [Single(Expression { mul_terms: [], linear_combinations: [(1, Witness(0))], q_c: 0 })], outputs: [Simple(Witness(1))]", + "unconstrained func 0", + "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 1 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(2), offset_address: Relative(3) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Call { location: 14 }, Call { location: 15 }, Mov { destination: Direct(32837), source: Relative(1) }, Const { destination: Relative(2), bit_size: Integer(U32), value: 32837 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 1 }, Stop { return_data: HeapVector { pointer: Relative(2), size: Relative(3) } }, Return, Call { location: 22 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, BinaryIntOp { destination: Relative(3), op: Equals, bit_size: U32, lhs: Relative(1), rhs: Relative(2) }, JumpIf { condition: Relative(3), location: 20 }, Call { location: 28 }, Const { destination: Relative(1), bit_size: Integer(U1), value: 1 }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 27 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 14225679739041873922 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + ], + "debug_symbols": "XY5BCoQwDEXvknUX6ixm8CoiEmuUQmhLbIVBvPukMoK4SfLzkvzsMNGYl8H5OazQdjuM4pjdMnCwmFzw2t0PA5cckhBpC25ctyIK+QStz8wGNuR8Dq0R/ZkTitLKAPlJsx6cHVOpjl4FWidPxw3F4cj0l3P29kbTN17k+jhKsDRloXKpMKhKqDV2TWOad2+grov4mFfVH8X6Bw==", + "file_map": {}, + "names": [ + "main" + ], + "brillig_names": [ + "main" + ] +} diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__stdout.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__stdout.snap new file mode 100644 index 00000000000..92e7e1d2837 --- /dev/null +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8779/execute__tests__stdout.snap @@ -0,0 +1,5 @@ +--- +source: tooling/nargo_cli/tests/execute.rs +expression: stdout +--- +[regression_8779] Circuit output: Field(1) diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap index 9c9cd66e78f..1df571e2ab7 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap @@ -39,11 +39,9 @@ expression: artifact "public parameters indices : []", "return value indices : []", "BLACKBOX::RANGE [(_1, 32)] []", - "EXPR [ (1, _0) 0 ]", - "unconstrained func 0", - "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 2 }, Const { destination: Relative(4), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(3), offset_address: Relative(4) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U1) }, Cast { destination: Direct(32837), source: Direct(32837), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Mov { destination: Relative(2), source: Direct(32837) }, Call { location: 15 }, Call { location: 16 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, Stop { return_data: HeapVector { pointer: Relative(1), size: Relative(2) } }, Return, Call { location: 119 }, Const { destination: Relative(3), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 119 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 51 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 50 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 125 }, Mov { destination: Relative(22), source: Direct(1) }, Const { destination: Relative(23), bit_size: Integer(U32), value: 38 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(23) }, IndirectConst { destination_pointer: Relative(22), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(23), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, Mov { destination: Relative(24), source: Relative(23) }, Store { destination_pointer: Relative(24), source: Relative(3) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(5) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(10) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(11) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(15) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(16) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(17) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(18) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(19) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(20) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(21) }, Const { destination: Relative(3), bit_size: Integer(U1), value: 0 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(1)), MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(4), size: 37 }), MemoryAddress(Relative(3))], input_value_types: [Simple(Integer(U1)), Simple(Integer(U32)), Array { value_types: [Simple(Integer(U8))], size: 37 }, Simple(Integer(U1))] }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 124 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZFNCoQwDIXvkrULrYo/VxkGqTVKobSltsIg3n2qVMdZCOIqTV6+NOHN0GHrhobLXo1Qv2ZoDReCD41QjFqupK/OSwR72liD6Etw0j2lqUFpoZZOiAgmKtzWNGoqt2ip8WocAcrORz+w5wLX1xL96PgaLaskwBVJD5yQu3yRFYEvyvgBX6UBT+LkwPP76+cHTq7w7Mn1b59Rxs2fX5BAvbZN1HDaCgwe9k6yk6X2o3dlN10bxbBzBtdxm+Y/+AI=", + "debug_symbols": "dY/BCoMwDIbfJecelLHDfJUxpNYogZCW2A6G+O6Lops77JQmf76/+WfosStjSzLECZr7DJ0SM40tx+AzRbHpvDg42jYroo3gpBuVvKJkaKQwO3h6LtvSlLxsNXs1tXKA0ls1w4EY19fivnT1H71ddrau6g99NfxhnQ+kPwdDbYvL6qbkO8Y9xFAknDLlVzqUI3XSGLAviqvdptkHbw==", "file_map": { "50": { "source": "fn main(print: bool, i: u32) {\n let array: [u32; 0] = [];\n\n if print {\n println(array[i]);\n }\n}\n", @@ -53,7 +51,5 @@ expression: artifact "names": [ "main" ], - "brillig_names": [ - "print_unconstrained" - ] + "brillig_names": [] } diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_0.snap index 9c9cd66e78f..1df571e2ab7 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_0.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_0.snap @@ -39,11 +39,9 @@ expression: artifact "public parameters indices : []", "return value indices : []", "BLACKBOX::RANGE [(_1, 32)] []", - "EXPR [ (1, _0) 0 ]", - "unconstrained func 0", - "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 2 }, Const { destination: Relative(4), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(3), offset_address: Relative(4) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U1) }, Cast { destination: Direct(32837), source: Direct(32837), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Mov { destination: Relative(2), source: Direct(32837) }, Call { location: 15 }, Call { location: 16 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, Stop { return_data: HeapVector { pointer: Relative(1), size: Relative(2) } }, Return, Call { location: 119 }, Const { destination: Relative(3), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 119 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 51 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 50 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 125 }, Mov { destination: Relative(22), source: Direct(1) }, Const { destination: Relative(23), bit_size: Integer(U32), value: 38 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(23) }, IndirectConst { destination_pointer: Relative(22), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(23), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, Mov { destination: Relative(24), source: Relative(23) }, Store { destination_pointer: Relative(24), source: Relative(3) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(5) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(10) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(11) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(15) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(16) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(17) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(18) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(19) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(20) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(21) }, Const { destination: Relative(3), bit_size: Integer(U1), value: 0 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(1)), MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(4), size: 37 }), MemoryAddress(Relative(3))], input_value_types: [Simple(Integer(U1)), Simple(Integer(U32)), Array { value_types: [Simple(Integer(U8))], size: 37 }, Simple(Integer(U1))] }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 124 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZFNCoQwDIXvkrULrYo/VxkGqTVKobSltsIg3n2qVMdZCOIqTV6+NOHN0GHrhobLXo1Qv2ZoDReCD41QjFqupK/OSwR72liD6Etw0j2lqUFpoZZOiAgmKtzWNGoqt2ip8WocAcrORz+w5wLX1xL96PgaLaskwBVJD5yQu3yRFYEvyvgBX6UBT+LkwPP76+cHTq7w7Mn1b59Rxs2fX5BAvbZN1HDaCgwe9k6yk6X2o3dlN10bxbBzBtdxm+Y/+AI=", + "debug_symbols": "dY/BCoMwDIbfJecelLHDfJUxpNYogZCW2A6G+O6Lops77JQmf76/+WfosStjSzLECZr7DJ0SM40tx+AzRbHpvDg42jYroo3gpBuVvKJkaKQwO3h6LtvSlLxsNXs1tXKA0ls1w4EY19fivnT1H71ddrau6g99NfxhnQ+kPwdDbYvL6qbkO8Y9xFAknDLlVzqUI3XSGLAviqvdptkHbw==", "file_map": { "50": { "source": "fn main(print: bool, i: u32) {\n let array: [u32; 0] = [];\n\n if print {\n println(array[i]);\n }\n}\n", @@ -53,7 +51,5 @@ expression: artifact "names": [ "main" ], - "brillig_names": [ - "print_unconstrained" - ] + "brillig_names": [] } diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_9223372036854775807.snap index 9c9cd66e78f..1df571e2ab7 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_9223372036854775807.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_8874/execute__tests__force_brillig_false_inliner_9223372036854775807.snap @@ -39,11 +39,9 @@ expression: artifact "public parameters indices : []", "return value indices : []", "BLACKBOX::RANGE [(_1, 32)] []", - "EXPR [ (1, _0) 0 ]", - "unconstrained func 0", - "[Const { destination: Direct(2), bit_size: Integer(U32), value: 1 }, Const { destination: Direct(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Direct(0), bit_size: Integer(U32), value: 3 }, Const { destination: Relative(3), bit_size: Integer(U32), value: 2 }, Const { destination: Relative(4), bit_size: Integer(U32), value: 0 }, CalldataCopy { destination_address: Direct(32836), size_address: Relative(3), offset_address: Relative(4) }, Cast { destination: Direct(32836), source: Direct(32836), bit_size: Integer(U1) }, Cast { destination: Direct(32837), source: Direct(32837), bit_size: Integer(U32) }, Mov { destination: Relative(1), source: Direct(32836) }, Mov { destination: Relative(2), source: Direct(32837) }, Call { location: 15 }, Call { location: 16 }, Const { destination: Relative(1), bit_size: Integer(U32), value: 32838 }, Const { destination: Relative(2), bit_size: Integer(U32), value: 0 }, Stop { return_data: HeapVector { pointer: Relative(1), size: Relative(2) } }, Return, Call { location: 119 }, Const { destination: Relative(3), bit_size: Integer(U8), value: 123 }, Const { destination: Relative(4), bit_size: Integer(U8), value: 34 }, Const { destination: Relative(5), bit_size: Integer(U8), value: 107 }, Const { destination: Relative(6), bit_size: Integer(U8), value: 105 }, Const { destination: Relative(7), bit_size: Integer(U8), value: 110 }, Const { destination: Relative(8), bit_size: Integer(U8), value: 100 }, Const { destination: Relative(9), bit_size: Integer(U8), value: 58 }, Const { destination: Relative(10), bit_size: Integer(U8), value: 117 }, Const { destination: Relative(11), bit_size: Integer(U8), value: 115 }, Const { destination: Relative(12), bit_size: Integer(U8), value: 103 }, Const { destination: Relative(13), bit_size: Integer(U8), value: 101 }, Const { destination: Relative(14), bit_size: Integer(U8), value: 116 }, Const { destination: Relative(15), bit_size: Integer(U8), value: 114 }, Const { destination: Relative(16), bit_size: Integer(U8), value: 44 }, Const { destination: Relative(17), bit_size: Integer(U8), value: 119 }, Const { destination: Relative(18), bit_size: Integer(U8), value: 104 }, Const { destination: Relative(19), bit_size: Integer(U8), value: 51 }, Const { destination: Relative(20), bit_size: Integer(U8), value: 50 }, Const { destination: Relative(21), bit_size: Integer(U8), value: 125 }, Mov { destination: Relative(22), source: Direct(1) }, Const { destination: Relative(23), bit_size: Integer(U32), value: 38 }, BinaryIntOp { destination: Direct(1), op: Add, bit_size: U32, lhs: Direct(1), rhs: Relative(23) }, IndirectConst { destination_pointer: Relative(22), bit_size: Integer(U32), value: 1 }, BinaryIntOp { destination: Relative(23), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, Mov { destination: Relative(24), source: Relative(23) }, Store { destination_pointer: Relative(24), source: Relative(3) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(5) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(10) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(11) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(7) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(12) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(13) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(15) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(16) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(17) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(6) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(8) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(14) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(18) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(4) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(9) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(19) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(20) }, BinaryIntOp { destination: Relative(24), op: Add, bit_size: U32, lhs: Relative(24), rhs: Direct(2) }, Store { destination_pointer: Relative(24), source: Relative(21) }, Const { destination: Relative(3), bit_size: Integer(U1), value: 0 }, BinaryIntOp { destination: Relative(4), op: Add, bit_size: U32, lhs: Relative(22), rhs: Direct(2) }, ForeignCall { function: \"print\", destinations: [], destination_value_types: [], inputs: [MemoryAddress(Relative(1)), MemoryAddress(Relative(2)), HeapArray(HeapArray { pointer: Relative(4), size: 37 }), MemoryAddress(Relative(3))], input_value_types: [Simple(Integer(U1)), Simple(Integer(U32)), Array { value_types: [Simple(Integer(U8))], size: 37 }, Simple(Integer(U1))] }, Return, Const { destination: Direct(32772), bit_size: Integer(U32), value: 30720 }, BinaryIntOp { destination: Direct(32771), op: LessThan, bit_size: U32, lhs: Direct(0), rhs: Direct(32772) }, JumpIf { condition: Direct(32771), location: 124 }, IndirectConst { destination_pointer: Direct(1), bit_size: Integer(U64), value: 17843811134343075018 }, Trap { revert_data: HeapVector { pointer: Direct(1), size: Direct(2) } }, Return]" + "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZFNCoQwDIXvkrULrYo/VxkGqTVKobSltsIg3n2qVMdZCOIqTV6+NOHN0GHrhobLXo1Qv2ZoDReCD41QjFqupK/OSwR72liD6Etw0j2lqUFpoZZOiAgmKtzWNGoqt2ip8WocAcrORz+w5wLX1xL96PgaLaskwBVJD5yQu3yRFYEvyvgBX6UBT+LkwPP76+cHTq7w7Mn1b59Rxs2fX5BAvbZN1HDaCgwe9k6yk6X2o3dlN10bxbBzBtdxm+Y/+AI=", + "debug_symbols": "dY/BCoMwDIbfJecelLHDfJUxpNYogZCW2A6G+O6Lops77JQmf76/+WfosStjSzLECZr7DJ0SM40tx+AzRbHpvDg42jYroo3gpBuVvKJkaKQwO3h6LtvSlLxsNXs1tXKA0ls1w4EY19fivnT1H71ddrau6g99NfxhnQ+kPwdDbYvL6qbkO8Y9xFAknDLlVzqUI3XSGLAviqvdptkHbw==", "file_map": { "50": { "source": "fn main(print: bool, i: u32) {\n let array: [u32; 0] = [];\n\n if print {\n println(array[i]);\n }\n}\n", @@ -53,7 +51,5 @@ expression: artifact "names": [ "main" ], - "brillig_names": [ - "print_unconstrained" - ] + "brillig_names": [] } diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap index 9ddb8217812..e1520b1ce1d 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_-9223372036854775808.snap @@ -31,7 +31,7 @@ expression: artifact "return value indices : []", "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZDdCsIwDIXfJde9qE4v3KuIjK7LRiG0JWsFGXt3s2F1goJ4lZ+T7wTOBB22eWic78MI9XmClh2RGxoK1iQXvGynWUEZm8SIsoKNLlQ0jD5B7TORgquhvB6N0fi1JsOiagXoO6li2DvCpZvVi9bf0aqw1e4JH3+nD4U+/UPrz/RFJmMdv2UFGur9vJixMy3hI78+e7uJM91iUUrgkYPFLjMudqsmD+4=", + "debug_symbols": "jZDdCoMwDIXfJde9cH8X81XGkFqjFEJaYjsY4rsvyrrpxWBXaXL6nZAzQYdtHhrPfRihvk3QiifyQ0PB2eQD63SaDZS2SYKoI9joSkUryAlqzkQGHpby+mmMltearKhaGUDutKph7wmX12y+dPUbPRX2dPjAl//pc6GvO/qunXVedtdCBfVxXszE25bwnUCf2W0CSc9YlBJZlOCwy4KL3arpghc=", "file_map": { "50": { "source": "fn main(a: bool) {\n if a { 1 / [][0]; };\n}\n", diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_0.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_0.snap index 9ddb8217812..e1520b1ce1d 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_0.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_0.snap @@ -31,7 +31,7 @@ expression: artifact "return value indices : []", "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZDdCsIwDIXfJde9qE4v3KuIjK7LRiG0JWsFGXt3s2F1goJ4lZ+T7wTOBB22eWic78MI9XmClh2RGxoK1iQXvGynWUEZm8SIsoKNLlQ0jD5B7TORgquhvB6N0fi1JsOiagXoO6li2DvCpZvVi9bf0aqw1e4JH3+nD4U+/UPrz/RFJmMdv2UFGur9vJixMy3hI78+e7uJM91iUUrgkYPFLjMudqsmD+4=", + "debug_symbols": "jZDdCoMwDIXfJde9cH8X81XGkFqjFEJaYjsY4rsvyrrpxWBXaXL6nZAzQYdtHhrPfRihvk3QiifyQ0PB2eQD63SaDZS2SYKoI9joSkUryAlqzkQGHpby+mmMltearKhaGUDutKph7wmX12y+dPUbPRX2dPjAl//pc6GvO/qunXVedtdCBfVxXszE25bwnUCf2W0CSc9YlBJZlOCwy4KL3arpghc=", "file_map": { "50": { "source": "fn main(a: bool) {\n if a { 1 / [][0]; };\n}\n", diff --git a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_9223372036854775807.snap b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_9223372036854775807.snap index 9ddb8217812..e1520b1ce1d 100644 --- a/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_9223372036854775807.snap +++ b/tooling/nargo_cli/tests/snapshots/execution_success/regression_9193/execute__tests__force_brillig_false_inliner_9223372036854775807.snap @@ -31,7 +31,7 @@ expression: artifact "return value indices : []", "EXPR [ (1, _0) 0 ]" ], - "debug_symbols": "nZDdCsIwDIXfJde9qE4v3KuIjK7LRiG0JWsFGXt3s2F1goJ4lZ+T7wTOBB22eWic78MI9XmClh2RGxoK1iQXvGynWUEZm8SIsoKNLlQ0jD5B7TORgquhvB6N0fi1JsOiagXoO6li2DvCpZvVi9bf0aqw1e4JH3+nD4U+/UPrz/RFJmMdv2UFGur9vJixMy3hI78+e7uJM91iUUrgkYPFLjMudqsmD+4=", + "debug_symbols": "jZDdCoMwDIXfJde9cH8X81XGkFqjFEJaYjsY4rsvyrrpxWBXaXL6nZAzQYdtHhrPfRihvk3QiifyQ0PB2eQD63SaDZS2SYKoI9joSkUryAlqzkQGHpby+mmMltearKhaGUDutKph7wmX12y+dPUbPRX2dPjAl//pc6GvO/qunXVedtdCBfVxXszE25bwnUCf2W0CSc9YlBJZlOCwy4KL3arpghc=", "file_map": { "50": { "source": "fn main(a: bool) {\n if a { 1 / [][0]; };\n}\n",